MSVC "14" CTP 3 has fixed it's mangling for alias templates when used as
template-template arguments; update clang to be compatible with this
mangling.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215972
91177308-0d34-0410-b5e6-
96231b3b80d8
if (const auto *TD = dyn_cast<TagDecl>(ND)) {
mangleType(TD);
} else if (isa<TypeAliasDecl>(ND)) {
- // FIXME: The mangling, while compatible with VS "14", is horribly
- // broken. Update this when they release their next compiler.
- Out << '$';
+ Out << "$$Y";
+ mangleName(ND);
} else {
llvm_unreachable("unexpected template template NamedDecl!");
}
void f() {}
template void f<AliasA>();
-// CHECK-DAG: @"\01??$f@$@PR20047@@YAXXZ"
+// CHECK-DAG: @"\01??$f@$$YAliasA@PR20047@@@PR20047@@YAXXZ"
}