================
@@ -2586,8 +2561,9 @@ bool
CXXNameMangler::mangleUnresolvedTypeOrSimpleId(QualType Ty,
}
case Type::InjectedClassName:
- mangleSourceNameWithAbiTags(
- cast<InjectedClassNameType>(Ty)->getDecl());
+ mangleSourceNameWithAbiTags(cast<InjectedClassNameType>(Ty)
+ ->getOriginalDecl()
+ ->getDefinitionOrSelf());
----------------
bolshakov-a wrote:
I've caught an example:
```cpp
template <typename>
struct Tpl;
template <typename>
struct Tpl {
Tpl(const Tpl&) {}
};
```
The injected name from the copy ctor prototype refers to the
forward-declaration from the first two lines. Looks a little strange but Ok.
https://github.com/llvm/llvm-project/pull/147835
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits