office-gobmx/cppunit/cppunit-1.12.1-warnings.patch
2012-02-10 15:02:25 +01:00

32 lines
1 KiB
Diff

--- 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 <stdio.h>
#include <float.h> // For struct assertion_traits<double>
+// 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();
}
};