--- misc/cppunit-1.12.1/include/cppunit/TestAssert.h 2012-02-10 12:34:26.564961982 +0100 +++ misc/build/cppunit-1.12.1/include/cppunit/TestAssert.h 2012-02-10 12:33:57.660131866 +0100 @@ -8,6 +8,12 @@ #include #include // For struct assertion_traits +// Work around "passing 'T' chooses 'int' over 'unsigned int'" warnings when T +// is an enum type: +#if defined __GNUC__ && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6)) +#pragma GCC system_header +#endif + CPPUNIT_NS_BEGIN @@ -46,7 +52,16 @@ static std::string toString( const T& x ) { OStringStream ost; +// Work around "passing 'T' chooses 'int' over 'unsigned int'" warnings when T +// is an enum type: +#if defined __GNUC__ && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wsign-promo" +#endif ost << x; +#if defined __GNUC__ && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4) +#pragma GCC diagnostic pop +#endif return ost.str(); } };