diff options
author | Zachary Turner <zturner@google.com> | 2018-08-21 22:52:52 +0000 |
---|---|---|
committer | Zachary Turner <zturner@google.com> | 2018-08-21 22:52:52 +0000 |
commit | ee09170d254d55bb2f69ed486d5ed8bd2b874bb2 (patch) | |
tree | cf0589bf86600d13132e7d2d19e541614ab5149e /llvm/test | |
parent | 986f03c2eab5a7389a7bd77849384290b0dec330 (diff) | |
download | bcm5719-llvm-ee09170d254d55bb2f69ed486d5ed8bd2b874bb2.tar.gz bcm5719-llvm-ee09170d254d55bb2f69ed486d5ed8bd2b874bb2.zip |
[MS Demangler] Print template constructor args.
Previously if you had something like this:
template<typename T>
struct Foo {
template<typename U>
Foo(U);
};
Foo F(3.7);
this would mangle as ??$?0N@?$Foo@H@@QEAA@N@Z
and this would be demangled as:
undname: __cdecl Foo<int>::Foo<int><double>(double)
llvm-undname: __cdecl Foo<int>::Foo<int>(double)
Note the lack of the constructor template parameter in our
demangling.
This patch makes it so we print the constructor argument list.
llvm-svn: 340356
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/Demangle/ms-templates.test | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/test/Demangle/ms-templates.test b/llvm/test/Demangle/ms-templates.test index 09995b36f52..bddc92ffb50 100644 --- a/llvm/test/Demangle/ms-templates.test +++ b/llvm/test/Demangle/ms-templates.test @@ -196,3 +196,6 @@ ??$f@US@@$1?g@1@QEAAXXZ@@YAXXZ ; CHECK: void __cdecl f<struct S, &void __cdecl S::g(void)>(void) + +??$?0N@?$Foo@H@@QEAA@N@Z +; CHECK: __cdecl Foo<int>::Foo<int><double>(double)
\ No newline at end of file |