77// SPDX-License-Identifier: BSL-1.0
88
99// Catch v3.9.0
10- // Generated: 2025-07-24 22:00:24.654688
10+ // Generated: 2025-07-30 11:38:20.260806
1111// ----------------------------------------------------------
1212// This file is an amalgamation of multiple different files.
1313// You probably shouldn't edit it directly.
@@ -2151,9 +2151,7 @@ namespace Catch {
21512151 auto analysis = Detail::analyse(*cfg, samples.data(), samples.data() + samples.size());
21522152 BenchmarkStats<> stats{ CATCH_MOVE(info), CATCH_MOVE(analysis.samples), analysis.mean, analysis.standard_deviation, analysis.outliers, analysis.outlier_variance };
21532153 getResultCapture().benchmarkEnded(stats);
2154- } CATCH_CATCH_ANON (TestFailureException const&) {
2155- getResultCapture().benchmarkFailed("Benchmark failed due to failed assertion"_sr);
2156- } CATCH_CATCH_ALL{
2154+ } CATCH_CATCH_ALL {
21572155 getResultCapture().benchmarkFailed(translateActiveException());
21582156 // We let the exception go further up so that the
21592157 // test case is marked as failed.
@@ -4062,6 +4060,14 @@ namespace Catch {
40624060 #__VA_ARGS__##_catch_sr ); \
40634061 varName.captureValues( 0, __VA_ARGS__ )
40644062
4063+ ///////////////////////////////////////////////////////////////////////////////
4064+ #define INTERNAL_CATCH_UNSCOPED_CAPTURE( varName, macroName, ... ) \
4065+ Catch::getResultCapture().emplaceUnscopedMessage(Catch::Capturer varName( macroName##_catch_sr, \
4066+ CATCH_INTERNAL_LINEINFO, \
4067+ Catch::ResultWas::Info, \
4068+ #__VA_ARGS__##_catch_sr ); \
4069+ varName.captureValues( 0, __VA_ARGS__ ))
4070+
40654071///////////////////////////////////////////////////////////////////////////////
40664072#define INTERNAL_CATCH_INFO( macroName, log ) \
40674073 const Catch::ScopedMessage INTERNAL_CATCH_UNIQUE_NAME( scopedMessage )( Catch::MessageBuilder( macroName##_catch_sr, CATCH_INTERNAL_LINEINFO, Catch::ResultWas::Info ) << log )
@@ -4077,27 +4083,32 @@ namespace Catch {
40774083 #define CATCH_UNSCOPED_INFO( msg ) INTERNAL_CATCH_UNSCOPED_INFO( "CATCH_UNSCOPED_INFO", msg )
40784084 #define CATCH_WARN( msg ) INTERNAL_CATCH_MSG( "CATCH_WARN", Catch::ResultWas::Warning, Catch::ResultDisposition::ContinueOnFailure, msg )
40794085 #define CATCH_CAPTURE( ... ) INTERNAL_CATCH_CAPTURE( INTERNAL_CATCH_UNIQUE_NAME(capturer), "CATCH_CAPTURE", __VA_ARGS__ )
4086+ #define CATCH_UNSCOPED_CAPTURE( ... ) INTERNAL_CATCH_UNSCOPED_CAPTURE( INTERNAL_CATCH_UNIQUE_NAME(capturer), "CATCH_UNSCOPED_CAPTURE", __VA_ARGS__ )
40804087
40814088#elif defined(CATCH_CONFIG_PREFIX_MESSAGES) && defined(CATCH_CONFIG_DISABLE)
40824089
40834090 #define CATCH_INFO( msg ) (void)(0)
40844091 #define CATCH_UNSCOPED_INFO( msg ) (void)(0)
40854092 #define CATCH_WARN( msg ) (void)(0)
40864093 #define CATCH_CAPTURE( ... ) (void)(0)
4094+ #define CATCH_UNSCOPED_CAPTURE( ... ) (void)(0)
40874095
40884096#elif !defined(CATCH_CONFIG_PREFIX_MESSAGES) && !defined(CATCH_CONFIG_DISABLE)
40894097
40904098 #define INFO( msg ) INTERNAL_CATCH_INFO( "INFO", msg )
40914099 #define UNSCOPED_INFO( msg ) INTERNAL_CATCH_UNSCOPED_INFO( "UNSCOPED_INFO", msg )
40924100 #define WARN( msg ) INTERNAL_CATCH_MSG( "WARN", Catch::ResultWas::Warning, Catch::ResultDisposition::ContinueOnFailure, msg )
40934101 #define CAPTURE( ... ) INTERNAL_CATCH_CAPTURE( INTERNAL_CATCH_UNIQUE_NAME(capturer), "CAPTURE", __VA_ARGS__ )
4102+ #define UNSCOPED_CAPTURE( ... ) INTERNAL_CATCH_UNSCOPED_CAPTURE( INTERNAL_CATCH_UNIQUE_NAME(capturer), "UNSCOPED_CAPTURE", __VA_ARGS__ )
4103+
40944104
40954105#elif !defined(CATCH_CONFIG_PREFIX_MESSAGES) && defined(CATCH_CONFIG_DISABLE)
40964106
40974107 #define INFO( msg ) (void)(0)
40984108 #define UNSCOPED_INFO( msg ) (void)(0)
40994109 #define WARN( msg ) (void)(0)
41004110 #define CAPTURE( ... ) (void)(0)
4111+ #define UNSCOPED_CAPTURE( ... ) (void)(0)
41014112
41024113#endif // end of user facing macro declarations
41034114
@@ -6241,9 +6252,13 @@ namespace Catch {
62416252 __assume( false );
62426253# elif defined( __GNUC__ )
62436254 __builtin_unreachable();
6255+ # else // vv platform without known optimization hint
6256+ std::terminate();
62446257# endif
6245- # endif // ^^ NDEBUG
6258+ # else // ^^ NDEBUG
6259+ // For non-release builds, we prefer termination on bug over UB
62466260 std::terminate();
6261+ # endif //
62476262 }
62486263
62496264 } // namespace Detail
0 commit comments