Ensure that QAtomicPointer of forward-declared classes works
authorThiago Macieira <thiago.macieira@intel.com>
Fri, 27 Jul 2012 14:28:36 +0000 (16:28 +0200)
committerQt by Nokia <qt-info@nokia.com>
Mon, 30 Jul 2012 08:43:50 +0000 (10:43 +0200)
This is working, but let's just be sure by adding a testcase.

Change-Id: I8c6b5ded0c7b6c90645dbf70a7ce6c1ba447a284
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
tests/auto/corelib/thread/qatomicpointer/tst_qatomicpointer.cpp

index ee6460d..a09bbe5 100644 (file)
@@ -69,6 +69,7 @@ private slots:
     void fetchAndAdd();
 
     void constAndVolatile();
+    void forwardDeclared();
 private:
     static void warningFreeHelper();
 };
@@ -647,5 +648,21 @@ void tst_QAtomicPointer::constAndVolatile()
     constAndVolatile_helper<const volatile void>();
 }
 
+struct ForwardDeclared;
+struct ContainsForwardDeclared
+{
+    QAtomicPointer<ForwardDeclared> ptr;
+};
+
+void tst_QAtomicPointer::forwardDeclared()
+{
+    // this is just a compilation test
+    QAtomicPointer<ForwardDeclared> ptr;
+    ContainsForwardDeclared cfd;
+    Q_UNUSED(ptr);
+    Q_UNUSED(cfd);
+    QVERIFY(true);
+}
+
 QTEST_APPLESS_MAIN(tst_QAtomicPointer)
 #include "tst_qatomicpointer.moc"