diff --git a/tests/auto/cplusplus/semantic/tst_semantic.cpp b/tests/auto/cplusplus/semantic/tst_semantic.cpp
index 76437a4700b62084177239ff534f36a6bafb28cb..0f4e355c1284c2a32fd628f23f3531d375ec3bd7 100644
--- a/tests/auto/cplusplus/semantic/tst_semantic.cpp
+++ b/tests/auto/cplusplus/semantic/tst_semantic.cpp
@@ -83,13 +83,13 @@ public:
         { }
 
         virtual void report(int /*level*/,
-                            const StringLiteral *fileName,
-                            unsigned line, unsigned column,
-                            const char *format, va_list ap)
+                            const StringLiteral * /*fileName*/,
+                            unsigned /*line*/, unsigned /*column*/,
+                            const char * /*format*/, va_list /*ap*/)
         {
             ++errorCount;
 
-            qDebug() << fileName->chars()<<':'<<line<<':'<<column<<' '<<QString().vsprintf(format, ap);
+//            qDebug() << fileName->chars()<<':'<<line<<':'<<column<<' '<<QString().vsprintf(format, ap);
         }
     };
 
@@ -132,6 +132,8 @@ private slots:
     void objcSelector_2();
 
     void q_enum_1();
+
+    void diagnostic_error();
 };
 
 void tst_Semantic::function_declaration_1()
@@ -664,5 +666,15 @@ void tst_Semantic::q_enum_1()
     QCOMPARE(e->name->identifier()->chars(), "e");
 }
 
+void tst_Semantic::diagnostic_error()
+{
+    QSharedPointer<Document> doc = document("\n"
+                                            "class Foo {}\n",
+                                            false, false);
+
+    QCOMPARE(doc->errorCount, 1U);
+    QCOMPARE(doc->globals->memberCount(), 1U);
+}
+
 QTEST_APPLESS_MAIN(tst_Semantic)
 #include "tst_semantic.moc"