[clang] -fsanitize=function: fix MSVC hashing to sugared type (PR #66816)

Matheus Izvekov via cfe-commits cfe-commits at lists.llvm.org
Tue Sep 19 14:12:51 PDT 2023


mizvekov wrote:

> It looks like the Itanium mangleTypeName() canonicalizes the type itself; should the MSVC mangleTypeName do the same thing?

It's done on purpose:
`MicrosoftMangle.cpp`:
```cpp
void MicrosoftCXXNameMangler::mangleType(QualType T, SourceRange Range,
                                         QualifierMangleMode QMM) {
  // Don't use the canonical types.  MSVC includes things like 'const' on
  // pointer arguments to function pointers that canonicalization strips away.
```

https://github.com/llvm/llvm-project/pull/66816


More information about the cfe-commits mailing list