diff options
author | Ievgenii Meshcheriakov <ievgenii.meshcheriakov@qt.io> | 2021-09-30 14:40:33 +0200 |
---|---|---|
committer | Ievgenii Meshcheriakov <ievgenii.meshcheriakov@qt.io> | 2021-10-01 02:46:27 +0200 |
commit | 49d94bbb41cede41ebe97004a84b2e3a4f5936e5 (patch) | |
tree | d37780ea94e43f5d4b0f8e80945282e92c613df7 | |
parent | e0b87edd73c4ade9f35985313b19d8f2f1f9ca78 (diff) |
Assume that <variant> header is always present
This header is a C++17 feature that is already used unconditionally
in qtypeinfo.h.
Change-Id: I26330d298e95102f3e94c0c69fc95c1025666eb4
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
-rw-r--r-- | src/corelib/kernel/qvariant.h | 9 | ||||
-rw-r--r-- | tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp | 4 |
2 files changed, 0 insertions, 13 deletions
diff --git a/src/corelib/kernel/qvariant.h b/src/corelib/kernel/qvariant.h index 213368a036..bacaa44e95 100644 --- a/src/corelib/kernel/qvariant.h +++ b/src/corelib/kernel/qvariant.h @@ -57,12 +57,7 @@ #endif #include <memory> #include <type_traits> - -#if __has_include(<variant>) #include <variant> -#elif defined(Q_CLANG_QDOC) -namespace std { template<typename...> struct variant; } -#endif QT_BEGIN_NAMESPACE @@ -402,7 +397,6 @@ class Q_CORE_EXPORT QVariant return QVariant(QMetaType::fromType<T>(), std::addressof(value)); } -#if __has_include(<variant>) || defined(Q_CLANG_QDOC) template<typename... Types> static inline QVariant fromStdVariant(const std::variant<Types...> &value) { @@ -410,7 +404,6 @@ class Q_CORE_EXPORT QVariant return QVariant(); return std::visit([](const auto &arg) { return fromValue(arg); }, value); } -#endif template<typename T> bool canConvert() const @@ -580,13 +573,11 @@ inline QVariant QVariant::fromValue(const QVariant &value) return value; } -#if __has_include(<variant>) template<> inline QVariant QVariant::fromValue(const std::monostate &) { return QVariant(); } -#endif inline bool QVariant::isValid() const { diff --git a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp index 40dfb79cff..6166c8a639 100644 --- a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp +++ b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp @@ -48,9 +48,7 @@ #include <limits.h> #include <float.h> #include <cmath> -#if __has_include(<variant>) #include <variant> -#endif #include <QRegularExpression> #include <QDir> #include <QBuffer> @@ -4882,7 +4880,6 @@ void tst_QVariant::shouldDeleteVariantDataWorksForAssociative() void tst_QVariant::fromStdVariant() { -#if __has_include(<variant>) { typedef std::variant<int, bool> intorbool_t; intorbool_t stdvar = 5; @@ -4913,7 +4910,6 @@ void tst_QVariant::fromStdVariant() QCOMPARE(qvar.type(), QVariant::Char); QCOMPARE(qvar.value<QChar>(), std::get<QChar>(stdvar)); } -#endif } void tst_QVariant::qt4UuidDataStream() |