diff options
| author | Martin Hořeňovský | 2026-04-05 15:05:38 +0200 |
|---|---|---|
| committer | Martin Hořeňovský | 2026-04-05 15:05:38 +0200 |
| commit | b670de4fe12ac7c5e858b7de3a14fb4bd18c760e (patch) | |
| tree | 510e8727ec4a06c47be1b2e2804911943005c0f8 /extras/catch_amalgamated.hpp | |
| parent | 465e63dad7733f8e014dc043069b1dc64e7c5e75 (diff) | |
| download | catch3-3.14.0.tar.gz | |
v3.14.0v3.14.0
Diffstat (limited to 'extras/catch_amalgamated.hpp')
| -rw-r--r-- | extras/catch_amalgamated.hpp | 87 |
1 files changed, 57 insertions, 30 deletions
diff --git a/extras/catch_amalgamated.hpp b/extras/catch_amalgamated.hpp index 6de74f80..ba6cf8ff 100644 --- a/extras/catch_amalgamated.hpp +++ b/extras/catch_amalgamated.hpp @@ -6,8 +6,8 @@ // SPDX-License-Identifier: BSL-1.0 -// Catch v3.13.0 -// Generated: 2026-02-15 22:54:59.817776 +// Catch v3.14.0 +// Generated: 2026-04-05 15:03:01.150393 // ---------------------------------------------------------- // This file is an amalgamation of multiple different files. // You probably shouldn't edit it directly. @@ -201,10 +201,15 @@ # define CATCH_INTERNAL_SUPPRESS_ZERO_VARIADIC_WARNINGS \ _Pragma( "clang diagnostic ignored \"-Wc++20-extensions\"" ) # else -# define CATCH_INTERNAL_SUPPRESS_ZERO_VARIADIC_WARNINGS +# define CATCH_INTERNAL_SUPPRESS_ZERO_VARIADIC_WARNINGS \ _Pragma( "clang diagnostic ignored \"-Wgnu-zero-variadic-macro-arguments\"" ) # endif +# if ( __clang_major__ >= 22 ) +# define CATCH_INTERNAL_SUPPRESS_COUNTER_WARNINGS \ + _Pragma( "clang diagnostic ignored \"-Wc2y-extensions\"" ) +# endif + # define CATCH_INTERNAL_SUPPRESS_UNUSED_TEMPLATE_WARNINGS \ _Pragma( "clang diagnostic ignored \"-Wunused-template\"" ) @@ -520,6 +525,9 @@ #if !defined( CATCH_INTERNAL_SUPPRESS_SHADOW_WARNINGS ) # define CATCH_INTERNAL_SUPPRESS_SHADOW_WARNINGS #endif +#if !defined( CATCH_INTERNAL_SUPPRESS_COUNTER_WARNINGS ) +# define CATCH_INTERNAL_SUPPRESS_COUNTER_WARNINGS +#endif #if defined(__APPLE__) && defined(__apple_build_version__) && (__clang_major__ < 10) # undef CATCH_INTERNAL_SUPPRESS_UNUSED_TEMPLATE_WARNINGS @@ -678,8 +686,20 @@ namespace Catch { #endif // CATCH_CONFIG_COUNTER_HPP_INCLUDED + +// Fixme: Clang 22 has an annoying bug where the localized suppression +// below does not actually suppress the extension warning from +// using __COUNTER__, so we have to leak the suppression for the +// whole TU. Hopefully Clang 23 fixes this before full release. +// As AppleClang does its own thing version-wise, we ignore it +// completely. +#if defined( __clang__ ) && ( __clang_major__ >= 22 ) && !defined( __APPLE__ ) +CATCH_INTERNAL_SUPPRESS_COUNTER_WARNINGS +#endif + #define INTERNAL_CATCH_UNIQUE_NAME_LINE2( name, line ) name##line #define INTERNAL_CATCH_UNIQUE_NAME_LINE( name, line ) INTERNAL_CATCH_UNIQUE_NAME_LINE2( name, line ) + #ifdef CATCH_CONFIG_COUNTER # define INTERNAL_CATCH_UNIQUE_NAME( name ) INTERNAL_CATCH_UNIQUE_NAME_LINE( name, __COUNTER__ ) #else @@ -1011,35 +1031,16 @@ namespace Detail { #ifndef CATCH_BENCHMARK_STATS_FWD_HPP_INCLUDED #define CATCH_BENCHMARK_STATS_FWD_HPP_INCLUDED - - -// Adapted from donated nonius code. - -#ifndef CATCH_CLOCK_HPP_INCLUDED -#define CATCH_CLOCK_HPP_INCLUDED - -#include <chrono> - namespace Catch { - namespace Benchmark { - using IDuration = std::chrono::nanoseconds; - using FDuration = std::chrono::duration<double, std::nano>; - - template <typename Clock> - using TimePoint = typename Clock::time_point; - using default_clock = std::chrono::steady_clock; - } // namespace Benchmark -} // namespace Catch - -#endif // CATCH_CLOCK_HPP_INCLUDED - -namespace Catch { + namespace Detail { + struct DummyTemplateArgPlaceholder; + } // We cannot forward declare the type with default template argument // multiple times, so it is split out into a separate header so that // we can prevent multiple declarations in dependencies - template <typename Duration = Benchmark::FDuration> + template <typename Duration = Detail::DummyTemplateArgPlaceholder> struct BenchmarkStats; } // end namespace Catch @@ -1338,6 +1339,28 @@ namespace Catch { // Adapted from donated nonius code. +#ifndef CATCH_CLOCK_HPP_INCLUDED +#define CATCH_CLOCK_HPP_INCLUDED + +#include <chrono> + +namespace Catch { + namespace Benchmark { + using IDuration = std::chrono::nanoseconds; + using FDuration = std::chrono::duration<double, std::nano>; + + template <typename Clock> + using TimePoint = typename Clock::time_point; + + using default_clock = std::chrono::steady_clock; + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_CLOCK_HPP_INCLUDED + + +// Adapted from donated nonius code. + #ifndef CATCH_ESTIMATE_HPP_INCLUDED #define CATCH_ESTIMATE_HPP_INCLUDED @@ -7514,7 +7537,7 @@ namespace Catch { #define CATCH_VERSION_MACROS_HPP_INCLUDED #define CATCH_VERSION_MAJOR 3 -#define CATCH_VERSION_MINOR 13 +#define CATCH_VERSION_MINOR 14 #define CATCH_VERSION_PATCH 0 #endif // CATCH_VERSION_MACROS_HPP_INCLUDED @@ -13967,7 +13990,8 @@ namespace Catch { * format */ void defaultListListeners( std::ostream& out, - std::vector<ListenerDescription> const& descriptions ); + std::vector<ListenerDescription> const& descriptions, + Verbosity verbosity ); /** * Lists tag information to the provided stream in user-friendly format @@ -13976,7 +14000,10 @@ namespace Catch { * bases. The output should be backwards compatible with the output of * Catch2 v2 binaries. */ - void defaultListTags( std::ostream& out, std::vector<TagInfo> const& tags, bool isFiltered ); + void defaultListTags( std::ostream& out, + std::vector<TagInfo> const& tags, + bool isFiltered, + Verbosity verbosity ); /** * Lists test case information to the provided stream in user-friendly @@ -14126,7 +14153,7 @@ namespace Catch { bool testOkToFail ); void writeAssertions(SectionNode const& sectionNode); - void writeAssertion(AssertionStats const& stats); + bool writeAssertion(AssertionStats const& stats); XmlWriter xml; Timer suiteTimer; |