From 9be81c0e05aedabbf1224ccb424ef0a628bcb9c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Ho=C5=99e=C5=88ovsk=C3=BD?= Date: Wed, 16 Jul 2025 16:53:02 +0200 Subject: [PATCH] Move resetAssertionInfo into RunContext::reportExpr Because `RunContext::populateReaction` no longer implicitly depends on the value of `RunContext::m_lastAssertionInfo`, we don't have to delay the reset until `RunContext::reportExpr` is finished. --- src/catch2/internal/catch_run_context.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/catch2/internal/catch_run_context.cpp b/src/catch2/internal/catch_run_context.cpp index 0beeedaa..a0866fd2 100644 --- a/src/catch2/internal/catch_run_context.cpp +++ b/src/catch2/internal/catch_run_context.cpp @@ -615,7 +615,6 @@ namespace Catch { populateReaction( reaction, info.resultDisposition & ResultDisposition::Normal ); } - resetAssertionInfo(); } void RunContext::reportExpr( AssertionInfo const &info, @@ -623,13 +622,14 @@ namespace Catch { ITransientExpression const *expr, bool negated ) { - m_lastAssertionInfo = info; + m_lastAssertionInfo.lineInfo = info.lineInfo; AssertionResultData data( resultType, LazyExpression( negated ) ); AssertionResult assertionResult{ info, CATCH_MOVE( data ) }; assertionResult.m_resultData.lazyExpression.m_transientExpression = expr; assertionEnded( CATCH_MOVE(assertionResult) ); + resetAssertionInfo(); } void RunContext::handleMessage(