Use variadic macros where available to make QSKIP source compatible.
authorStephen Kelly <stephen.kelly@kdab.com>
Thu, 7 Jun 2012 08:43:16 +0000 (10:43 +0200)
committerQt by Nokia <qt-info@nokia.com>
Fri, 8 Jun 2012 16:10:18 +0000 (18:10 +0200)
Otherwise this is a large source incompatbility during porting, so
it makes sense to provide the option of using C++11 for that.

Change-Id: I9792b3ae2c1fa3743bc9a2e74380134ea2f24add
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
src/testlib/qtestcase.h

index 661aaa0..5e88cc3 100644 (file)
@@ -117,12 +117,22 @@ do { \
 
 #define QTRY_COMPARE(__expr, __expected) QTRY_COMPARE_WITH_TIMEOUT(__expr, __expected, 5000)
 
-#define QSKIP(statement) \
+#define QSKIP_INTERNAL(statement) \
 do {\
     QTest::qSkip(statement, __FILE__, __LINE__);\
     return;\
 } while (0)
 
+#ifdef Q_COMPILER_VARIADIC_MACROS
+
+#define QSKIP(statement, ...) QSKIP_INTERNAL(statement)
+
+#else
+
+#define QSKIP(statement) QSKIP_INTERNAL(statement)
+
+#endif
+
 #define QEXPECT_FAIL(dataIndex, comment, mode)\
 do {\
     if (!QTest::qExpectFail(dataIndex, comment, QTest::mode, __FILE__, __LINE__))\