Cleaned up some GCC/LLVM warnings

This commit is contained in:
Phil Nash 2012-06-05 10:38:18 +01:00
parent f3dd0938ff
commit 5824b56a5e
3 changed files with 18 additions and 6 deletions

View File

@ -189,6 +189,13 @@ TEST_CASE( "./succeeding/conditions/int literals",
REQUIRE( (std::numeric_limits<unsigned long>::max)() > ul ); REQUIRE( (std::numeric_limits<unsigned long>::max)() > ul );
} }
// Disable warnings about sign conversions for the next two tests
// (as we are deliberately invoking them)
// - Current only disabled for GCC/ LLVM. Should add VC++ too
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wsign-compare"
#pragma GCC diagnostic ignored "-Wsign-conversion"
TEST_CASE( "./succeeding/conditions//long_to_unsigned_x", TEST_CASE( "./succeeding/conditions//long_to_unsigned_x",
"comparisons between int variables" ) "comparisons between int variables" )
{ {
@ -204,9 +211,7 @@ TEST_CASE( "./succeeding/conditions//long_to_unsigned_x",
REQUIRE( long_var == unsigned_long_var ); REQUIRE( long_var == unsigned_long_var );
} }
// These are not built normally to avoid warnings about signed/ unsigned TEST_CASE( "./succeeding/conditions/negative ints",
#ifdef ALLOW_TESTS_THAT_WARN
TEST_CASE( "succeeding/conditions/negative ints",
"Comparisons between unsigned ints and negative signed ints match c++ standard behaviour" ) "Comparisons between unsigned ints and negative signed ints match c++ standard behaviour" )
{ {
CHECK( ( -1 > 2u ) ); CHECK( ( -1 > 2u ) );
@ -219,7 +224,9 @@ TEST_CASE( "succeeding/conditions/negative ints",
CHECK( ( minInt > 2u ) ); CHECK( ( minInt > 2u ) );
CHECK( minInt > 2u ); CHECK( minInt > 2u );
} }
#endif
#pragma GCC diagnostic pop
inline const char* returnsConstNull(){ return NULL; } inline const char* returnsConstNull(){ return NULL; }
inline char* returnsNull(){ return NULL; } inline char* returnsNull(){ return NULL; }

View File

@ -112,6 +112,9 @@ TEST_CASE_NORETURN( "./failing/exceptions/custom/double", "Unexpected custom exc
throw double( 3.14 ); throw double( 3.14 );
} }
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-variable"
TEST_CASE( "./failing/exceptions/in-section", "Exceptions thrown from sections report file/ line or section" ) TEST_CASE( "./failing/exceptions/in-section", "Exceptions thrown from sections report file/ line or section" )
{ {
SECTION( "the section", "" ) SECTION( "the section", "" )
@ -123,6 +126,8 @@ TEST_CASE( "./failing/exceptions/in-section", "Exceptions thrown from sections r
} }
} }
#pragma GCC diagnostic pop
TEST_CASE( "./succeeding/exceptions/error messages", "The error messages produced by exceptions caught by Catch matched the expected form" ) TEST_CASE( "./succeeding/exceptions/error messages", "The error messages produced by exceptions caught by Catch matched the expected form" )
{ {
Catch::EmbeddedRunner runner; Catch::EmbeddedRunner runner;

View File

@ -33,7 +33,7 @@ TEST_CASE( "selftest/main", "Runs all Catch self tests and checks their results"
SECTION( "selftest/test counts/succeeding tests", SECTION( "selftest/test counts/succeeding tests",
"Number of 'succeeding' tests is fixed" ) { "Number of 'succeeding' tests is fixed" ) {
runner.runMatching( "./succeeding/*" ); runner.runMatching( "./succeeding/*" );
CHECK( runner.getTotals().assertions.passed == 277 ); CHECK( runner.getTotals().assertions.passed == 283 );
CHECK( runner.getTotals().assertions.failed == 0 ); CHECK( runner.getTotals().assertions.failed == 0 );
} }