diff options
Diffstat (limited to 'tests/auto/corelib/tools/qpair/tst_qpair.cpp')
-rw-r--r-- | tests/auto/corelib/tools/qpair/tst_qpair.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/tests/auto/corelib/tools/qpair/tst_qpair.cpp b/tests/auto/corelib/tools/qpair/tst_qpair.cpp index 05031dbbf8..59b0ffb95e 100644 --- a/tests/auto/corelib/tools/qpair/tst_qpair.cpp +++ b/tests/auto/corelib/tools/qpair/tst_qpair.cpp @@ -42,12 +42,13 @@ #include <QtTest/QtTest> #include <QPair> +#include <QSize> class tst_QPair : public QObject { Q_OBJECT private Q_SLOTS: - void dummy() {} + void testConstexpr(); }; class C { char _[4]; }; @@ -101,5 +102,19 @@ Q_STATIC_ASSERT(!QTypeInfo<QPairPP>::isDummy ); Q_STATIC_ASSERT(!QTypeInfo<QPairPP>::isPointer); +void tst_QPair::testConstexpr() +{ + Q_CONSTEXPR QPair<int, double> pID = qMakePair(0, 0.0); + Q_UNUSED(pID); + + Q_CONSTEXPR QPair<double, double> pDD = qMakePair(0.0, 0.0); + Q_CONSTEXPR QPair<double, double> pDD2 = qMakePair(0, 0.0); // involes (rvalue) conversion ctor + Q_CONSTEXPR bool equal = pDD2 == pDD; + QVERIFY(equal); + + Q_CONSTEXPR QPair<QSize, int> pSI = qMakePair(QSize(4, 5), 6); + Q_UNUSED(pSI); +} + QTEST_APPLESS_MAIN(tst_QPair) #include "tst_qpair.moc" |