summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Neumann <Alexander.Neumann@hamburg.de>2022-02-20 10:12:43 +0100
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2022-02-20 13:57:46 +0000
commit81b12417916ab2c9f4021797a1b2028b5b7ad97e (patch)
tree6f228a72e6feb4f9d71ef2d875dcb07816da5d60
parentaf028545857c41b7619f422b0e72551be8291a1d (diff)
Fix QMetaType::typeName returning wrong result for clang-cl
Change-Id: I94fa1d56d98b8caae514b37fbf6432985195d827 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit d49f5752a560d7c8fec99c57bbfb192a9be1b296) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/corelib/kernel/qmetatype.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/corelib/kernel/qmetatype.h b/src/corelib/kernel/qmetatype.h
index a453019798..e20118f469 100644
--- a/src/corelib/kernel/qmetatype.h
+++ b/src/corelib/kernel/qmetatype.h
@@ -2136,7 +2136,9 @@ constexpr auto typenameHelper()
#ifdef QT_NAMESPACE
QT_STRINGIFY(QT_NAMESPACE) "::"
#endif
-#ifdef Q_CC_MSVC
+#if defined(Q_CC_MSVC) && defined(Q_CC_CLANG)
+ "auto __cdecl QtPrivate::typenameHelper(void) [T = "
+#elif defined(Q_CC_MSVC)
"auto __cdecl QtPrivate::typenameHelper<"
#elif defined(Q_CC_CLANG)
"auto QtPrivate::typenameHelper() [T = "
@@ -2146,7 +2148,7 @@ constexpr auto typenameHelper()
"constexpr auto QtPrivate::typenameHelper() [with T = "
#endif
) - 1;
-#ifdef Q_CC_MSVC
+#if defined(Q_CC_MSVC) && !defined(Q_CC_CLANG)
constexpr int suffix = sizeof(">(void)");
#else
constexpr int suffix = sizeof("]");