summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2024-11-18 23:05:16 -0800
committerThiago Macieira <thiago.macieira@intel.com>2024-11-22 11:09:23 -0800
commitbb0c61b42f4d336e73fdb4c7e3fb34c30dd23be5 (patch)
tree6e3b1e6c47d2669620581cb47919dcd1f057c3fa /src
parent6acacb36ddacc69e531b5c562616b68740e61042 (diff)
QMetaType: make iface() constexpr
And use it in QtMocHelpers. Change-Id: Iacc9d5759653b2828575fffd4109425a120ccb22 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/corelib/kernel/qmetatype.h4
-rw-r--r--src/corelib/kernel/qtmochelpers.h4
2 files changed, 3 insertions, 5 deletions
diff --git a/src/corelib/kernel/qmetatype.h b/src/corelib/kernel/qmetatype.h
index 3ea98353d29..f55b9715b98 100644
--- a/src/corelib/kernel/qmetatype.h
+++ b/src/corelib/kernel/qmetatype.h
@@ -766,9 +766,9 @@ public:
static void unregisterMetaType(QMetaType type);
#if QT_VERSION < QT_VERSION_CHECK(7, 0, 0)
- const QtPrivate::QMetaTypeInterface *iface() { return d_ptr; }
+ constexpr const QtPrivate::QMetaTypeInterface *iface() { return d_ptr; }
#endif
- const QtPrivate::QMetaTypeInterface *iface() const { return d_ptr; }
+ constexpr const QtPrivate::QMetaTypeInterface *iface() const { return d_ptr; }
private:
static bool isDefaultConstructible(const QtPrivate::QMetaTypeInterface *) noexcept Q_DECL_PURE_FUNCTION;
diff --git a/src/corelib/kernel/qtmochelpers.h b/src/corelib/kernel/qtmochelpers.h
index a253e7a1291..e90dd1c9df3 100644
--- a/src/corelib/kernel/qtmochelpers.h
+++ b/src/corelib/kernel/qtmochelpers.h
@@ -590,9 +590,7 @@ constexpr auto metaObjectData(uint flags, const Strings &strings,
dataoffset += enums.dataSize();
// the meta type referring to the object itself
- result.relocatingData.metaTypes[metatypeoffset++] =
- QtPrivate::qTryMetaTypeInterfaceForType<void,
- QtPrivate::TypeAndForceComplete<ObjectType, std::true_type>>();
+ result.relocatingData.metaTypes[metatypeoffset++] = QMetaType::fromType<ObjectType>().iface();
data[4] = methods.count();
data[5] = methods.count() ? dataoffset : 0;