[clang] [Clang] [AST] Fix placeholder return type name mangling for MSVC 1920+ / VS2019+ (PR #102848)
Max Winkler via cfe-commits
cfe-commits at lists.llvm.org
Mon Aug 12 20:03:08 PDT 2024
================
@@ -2494,6 +2506,58 @@ void MicrosoftCXXNameMangler::mangleAddressSpaceType(QualType T,
mangleArtificialTagType(TagTypeKind::Struct, ASMangling, {"__clang"});
}
+void MicrosoftCXXNameMangler::mangleAutoReturnType(QualType T,
+ SourceRange Range,
+ QualifierMangleMode QMM) {
+ assert(getASTContext().getLangOpts().isCompatibleWithMSVC(
----------------
MaxEW707 wrote:
The assert is here because the VS2017 path still takes the incorrect manglings path. I want to ensure any potential changing of the code doesn't call this function when mangling for VS2017 or earlier.
That happens here, https://github.com/llvm/llvm-project/pull/102848/files#diff-f5b0f26263c3f9e2967ea9e3911d88ce9c4b3e990cbbab10627429435305bb96R2997, where we check if we are VS2019 otherwise do the incorrect mangling.
https://github.com/llvm/llvm-project/pull/102848
More information about the cfe-commits
mailing list