From 3df3bdcdb3b797a655ae28900111343b67da99d7 Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Thu, 14 May 2020 20:16:29 +0200 Subject: QTaggedPointer: verify constexpr'ness of some ctors Change-Id: I44196ba3a823ce04b7c82aacfb9da301cc0f1886 Reviewed-by: Lars Knoll --- .../tools/qtaggedpointer/tst_qtaggedpointer.cpp | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'tests') diff --git a/tests/auto/corelib/tools/qtaggedpointer/tst_qtaggedpointer.cpp b/tests/auto/corelib/tools/qtaggedpointer/tst_qtaggedpointer.cpp index 6a7a7c7ec8..1ef510e93f 100644 --- a/tests/auto/corelib/tools/qtaggedpointer/tst_qtaggedpointer.cpp +++ b/tests/auto/corelib/tools/qtaggedpointer/tst_qtaggedpointer.cpp @@ -34,6 +34,7 @@ class tst_QTaggedPointer : public QObject Q_OBJECT private Q_SLOTS: + void constExpr(); void construction(); void dereferenceOperator(); void pointerOperator(); @@ -46,6 +47,38 @@ private Q_SLOTS: void taggedLinkedList(); }; +void tst_QTaggedPointer::constExpr() +{ + { + constexpr QTaggedPointer p; + Q_UNUSED(p); + } + { + enum Foo : uint {}; + constexpr QTaggedPointer p; + Q_UNUSED(p); + } + { + enum Foo : int {}; + constexpr QTaggedPointer p; + Q_UNUSED(p); + } + { + constexpr QTaggedPointer p = nullptr; + Q_UNUSED(p); + } + { + enum Foo : uint {}; + constexpr QTaggedPointer p = nullptr; + Q_UNUSED(p); + } + { + enum Foo : int {}; + constexpr QTaggedPointer p = nullptr; + Q_UNUSED(p); + } +} + void tst_QTaggedPointer::construction() { { -- cgit v1.2.3