summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qmetatype.h
diff options
context:
space:
mode:
authorAlexander Neumann <Alexander.Neumann@hamburg.de>2022-02-20 10:12:43 +0100
committerThiago Macieira <thiago.macieira@intel.com>2022-02-20 10:33:33 +0000
commitd49f5752a560d7c8fec99c57bbfb192a9be1b296 (patch)
tree09a99f75bac8e0759901f5e04e7dcc7ad0a36324 /src/corelib/kernel/qmetatype.h
parent2d935dc7f9d80f0a7b83111695a23b3b5bb99a31 (diff)
Fix QMetaType::typeName returning wrong result for clang-cl
Pick-to: 6.2 6.3 Change-Id: I94fa1d56d98b8caae514b37fbf6432985195d827 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/kernel/qmetatype.h')
-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 4b13db91d3..615ea52a56 100644
--- a/src/corelib/kernel/qmetatype.h
+++ b/src/corelib/kernel/qmetatype.h
@@ -2185,7 +2185,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 = "
@@ -2195,7 +2197,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("]");