mirror of
https://github.com/catchorg/Catch2.git
synced 2024-11-22 21:36:11 +01:00
Allow { NULL <op> T }to work
This commit is contained in:
parent
ef611c65d9
commit
7dfd830a3a
@ -224,7 +224,16 @@ TEST_CASE( "./succeeding/conditions/ptr", "Pointers can be compared to null" )
|
|||||||
|
|
||||||
TestData data;
|
TestData data;
|
||||||
p = &data;
|
p = &data;
|
||||||
|
|
||||||
REQUIRE( p != NULL );
|
REQUIRE( p != NULL );
|
||||||
|
|
||||||
|
const TestData* cp = p;
|
||||||
|
REQUIRE( cp != NULL );
|
||||||
|
|
||||||
|
const TestData* const cpc = p;
|
||||||
|
REQUIRE( cpc != NULL );
|
||||||
|
|
||||||
|
// REQUIRE( NULL != p ); // gives warning, but should compile and run ok
|
||||||
}
|
}
|
||||||
|
|
||||||
// Not (!) tests
|
// Not (!) tests
|
||||||
|
@ -217,6 +217,20 @@ namespace Internal
|
|||||||
return applyEvaluator<Op>( static_cast<unsigned long>( lhs ), rhs, testLhsSign( lhs ) );
|
return applyEvaluator<Op>( static_cast<unsigned long>( lhs ), rhs, testLhsSign( lhs ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template<Operator Op, typename T>
|
||||||
|
bool compare( long lhs, const T* rhs )
|
||||||
|
{
|
||||||
|
return Evaluator<T*, T*, Op>::evaluate( reinterpret_cast<T*>( NULL ), rhs );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
template<Operator Op, typename T>
|
||||||
|
bool compare( long lhs, T* rhs )
|
||||||
|
{
|
||||||
|
return Evaluator<T*, T*, Op>::evaluate( reinterpret_cast<T*>( lhs ), rhs );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
} // end of namespace Internal
|
} // end of namespace Internal
|
||||||
} // end of namespace Catch
|
} // end of namespace Catch
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user