Rework of REQUIRE* changes in CATCH_CONFIG_FAST_COMPILE

`ResultBuilder`s destructor now checks for exceptions, preventing false
negatives. The speedup should remain the same give or take a tiny bit.
This commit is contained in:
Martin Hořeňovský
2017-03-29 21:12:06 +02:00
parent c3a41e26a7
commit 4fe2432e05
3 changed files with 27 additions and 3 deletions

View File

@@ -39,6 +39,7 @@ namespace Catch {
char const* capturedExpression,
ResultDisposition::Flags resultDisposition,
char const* secondArg = "" );
~ResultBuilder();
template<typename T>
ExpressionLhs<T const&> operator <= ( T const& operand );
@@ -73,6 +74,9 @@ namespace Catch {
template<typename ArgT, typename MatcherT>
void captureMatch( ArgT const& arg, MatcherT const& matcher, char const* matcherString );
void setExceptionGuard();
void unsetExceptionGuard();
private:
AssertionInfo m_assertionInfo;
AssertionResultData m_data;
@@ -80,6 +84,7 @@ namespace Catch {
bool m_shouldDebugBreak;
bool m_shouldThrow;
bool m_guardException;
};
} // namespace Catch