From 81b12417916ab2c9f4021797a1b2028b5b7ad97e Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Sun, 20 Feb 2022 10:12:43 +0100 Subject: Fix QMetaType::typeName returning wrong result for clang-cl Change-Id: I94fa1d56d98b8caae514b37fbf6432985195d827 Reviewed-by: Thiago Macieira (cherry picked from commit d49f5752a560d7c8fec99c57bbfb192a9be1b296) Reviewed-by: Qt Cherry-pick Bot --- src/corelib/kernel/qmetatype.h | 6 ++++-- 1 file 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("]"); -- cgit v1.2.3