Remove SFINAE support for all unknown compilers

This commit is contained in:
Phil Nash 2013-04-18 07:40:19 +01:00
parent bd5910ef9f
commit 052dc18c76
2 changed files with 12 additions and 10 deletions

View File

@ -15,7 +15,7 @@
#ifdef __BORLANDC__
#if (__BORLANDC__ > 0x582 )
#define CATCH_SFINAE
//#define CATCH_SFINAE // Not confirmed
#endif
#endif // __BORLANDC__
@ -25,7 +25,7 @@
#ifdef __EDG_VERSION__
#if (__EDG_VERSION__ > 238 )
#define CATCH_SFINAE
//#define CATCH_SFINAE // Not confirmed
#endif
#endif // __EDG_VERSION__
@ -35,7 +35,7 @@
#ifdef __DMC__
#if (__DMC__ > 0x840 )
#define CATCH_SFINAE
//#define CATCH_SFINAE // Not confirmed
#endif
#endif // __DMC__
@ -64,7 +64,7 @@
#ifdef _MSC_VER
#if (_MSC_VER >= 1310 ) // (VC++ 7.0+)
#define CATCH_SFINAE
//#define CATCH_SFINAE // Not confirmed
#endif
#endif // _MSC_VER

View File

@ -342,9 +342,11 @@ struct Awkward
operator int() const { return 7; }
};
TEST_CASE( "non streamable", "" )
{
Awkward awkward;
std::string s = Catch::toString( awkward );
REQUIRE( s == "7" ); // This is ambiguous without SFINAE
}
// This now works with GCC/ Clang usinh SFINAE
// Uncomment when it works on all compilers that are tested
//TEST_CASE( "non streamable", "" )
//{
// Awkward awkward;
// std::string s = Catch::toString( awkward );
// REQUIRE( s == "7" ); // This is ambiguous without SFINAE
//}