diff options
| author | Martin Hořeňovský | 2017-03-23 21:11:21 +0100 |
|---|---|---|
| committer | Martin Hořeňovský | 2017-03-23 21:11:21 +0100 |
| commit | f23b6b8b855b565ade37802d5c8f55012264d94f (patch) | |
| tree | 8a1b512e3f840eacbdeccb6d52985ce2ec760808 /include | |
| parent | 4597b439120e2b8c9dbd370a10fae510132ebce0 (diff) | |
| download | catch3-f23b6b8b855b565ade37802d5c8f55012264d94f.tar.gz | |
Don't sanitize exception type in REQUIRE_THROWS_AS
Effectively a revert of previous commit, fixing #542, where this was
added to stop linters complaining about `REQUIRE_THROWS_AS` used like
`REQUIRE_THROWS_AS(expr, std::exception);`, which would be slicing the
caught exception. Now it is user's responsibility to pass us proper
exception type.
Closes #833 which wanted to add `typename`, so that the construct works
in a template, but that would not work with MSVC and older GCC's, as
having `typename` outside of a template is allowed only from C++11
onward.
Diffstat (limited to 'include')
| -rw-r--r-- | include/internal/catch_capture.hpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/include/internal/catch_capture.hpp b/include/internal/catch_capture.hpp index 8499a551..87f78f4e 100644 --- a/include/internal/catch_capture.hpp +++ b/include/internal/catch_capture.hpp @@ -16,7 +16,6 @@ #include "catch_tostring.h" #include "catch_interfaces_runner.h" #include "catch_compiler_capabilities.h" -#include "catch_type_traits.hpp" #if defined(CATCH_CONFIG_FAST_COMPILE) @@ -128,7 +127,7 @@ static_cast<void>(expr); \ __catchResult.captureResult( Catch::ResultWas::DidntThrowException ); \ } \ - catch( Catch::add_const<Catch::add_lvalue_reference<exceptionType>::type>::type ) { \ + catch( exceptionType ) { \ __catchResult.captureResult( Catch::ResultWas::Ok ); \ } \ catch( ... ) { \ |