diff options
Diffstat (limited to 'tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp')
-rw-r--r-- | tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp index 6b30419bb8..23ee85ee46 100644 --- a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp +++ b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp @@ -68,6 +68,21 @@ class CustomNonQObject; +template<typename T, typename = void> +struct QVariantFromValueCompiles +{ + static inline constexpr bool value = false; +}; + +template<typename T> +struct QVariantFromValueCompiles<T, std::void_t<decltype (QVariant::fromValue(std::declval<T>()))>> +{ + static inline constexpr bool value = true; +}; + +static_assert(QVariantFromValueCompiles<int>::value); +static_assert(!QVariantFromValueCompiles<QObject>::value); + class tst_QVariant : public QObject { Q_OBJECT |