summaryrefslogtreecommitdiffstats
path: root/tests/auto/moc/tst_moc.cpp
diff options
context:
space:
mode:
authorPaul Olav Tvete <paul.tvete@nokia.com>2010-08-04 12:12:57 (GMT)
committerPaul Olav Tvete <paul.tvete@nokia.com>2010-08-04 12:12:57 (GMT)
commitbabf1ff43584b454ac24728fbf93bf291b9f36d1 (patch)
treec1d7567183d4a124fd4417a23e558d4fcef847ad /tests/auto/moc/tst_moc.cpp
parent05e8e8056824dfa56830e12a6a50ec39018df6fc (diff)
parenta6633a9cf1bb2083d0ce41f4667b3f9349a39865 (diff)
downloadQt-babf1ff43584b454ac24728fbf93bf291b9f36d1.zip
Qt-babf1ff43584b454ac24728fbf93bf291b9f36d1.tar.gz
Qt-babf1ff43584b454ac24728fbf93bf291b9f36d1.tar.bz2
Merge remote branch 'qt/master' into lighthouse-master
Conflicts: configure
Diffstat (limited to 'tests/auto/moc/tst_moc.cpp')
-rw-r--r--tests/auto/moc/tst_moc.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/auto/moc/tst_moc.cpp b/tests/auto/moc/tst_moc.cpp
index 19f3677..d3a7e03 100644
--- a/tests/auto/moc/tst_moc.cpp
+++ b/tests/auto/moc/tst_moc.cpp
@@ -491,6 +491,7 @@ private slots:
void typenameWithUnsigned();
void warnOnVirtualSignal();
void QTBUG5590_dummyProperty();
+ void QTBUG12260_defaultTemplate();
signals:
void sigWithUnsignedArg(unsigned foo);
void sigWithSignedArg(signed foo);
@@ -1340,6 +1341,27 @@ signals:
void testSignal(TestTemplate2<const int, const short*>);
};
+class QTBUG12260_defaultTemplate_Object : public QObject
+{ Q_OBJECT
+public slots:
+#if !(defined(Q_CC_GNU) && __GNUC__ == 4 && __GNUC_MINOR__ <= 3) || defined(Q_MOC_RUN)
+ void doSomething(QHash<QString, QVariant> values = QHash<QString, QVariant>() ) { Q_UNUSED(values); }
+#else
+ // we want to test the previous function, but gcc < 4.4 seemed to have a bug similar to the one moc has.
+ typedef QHash<QString, QVariant> WorkaroundGCCBug;
+ void doSomething(QHash<QString, QVariant> values = WorkaroundGCCBug() ) { Q_UNUSED(values); }
+#endif
+
+ void doAnotherThing(bool a = (1 < 3), bool b = (1 > 4)) { Q_UNUSED(a); Q_UNUSED(b); }
+};
+
+
+void tst_Moc::QTBUG12260_defaultTemplate()
+{
+ QVERIFY(QTBUG12260_defaultTemplate_Object::staticMetaObject.indexOfSlot("doSomething(QHash<QString,QVariant>)") != -1);
+ QVERIFY(QTBUG12260_defaultTemplate_Object::staticMetaObject.indexOfSlot("doAnotherThing(bool,bool)") != -1);
+}
+
QTEST_APPLESS_MAIN(tst_Moc)
#include "tst_moc.moc"