diff options
author | Anders Carlsson <andersca@mac.com> | 2009-09-18 02:42:01 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2009-09-18 02:42:01 +0000 |
commit | 7624f219388f2434a4988ba2508a6ca7b57ba1c3 (patch) | |
tree | 6d33ffbe67e7a21d9aa3b781618c7aed4d71c7d5 /test/CodeGenCXX/mangle.cpp | |
parent | 1c1afc4ed3ec30fc99e172220c8bb74a13b117b0 (diff) |
Handle mangling of TemplateSpecializationType.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82189 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGenCXX/mangle.cpp')
-rw-r--r-- | test/CodeGenCXX/mangle.cpp | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/test/CodeGenCXX/mangle.cpp b/test/CodeGenCXX/mangle.cpp index 98db0845c7..8d302248a1 100644 --- a/test/CodeGenCXX/mangle.cpp +++ b/test/CodeGenCXX/mangle.cpp @@ -92,15 +92,24 @@ template<typename T, typename U> void ft1(U u, T t) { } template<typename T> void ft2(T t, void (*)(T), void (*)(T)) { } +template<typename T, typename U = S1<T> > struct S4 { }; +template<typename T> void ft3(S4<T>*) { } + +void g() { + ft2<int>(0); +} +extern "C++" { + // CHECK: @_Z1hv + void h() { } +} + void g() { // CHECK: @_Z3ft1IidEvT0_T_ ft1<int, double>(1, 0); // CHECK: @_Z3ft2IcEvT_PFvS0_ES2_ ft2<char>(1, 0, 0); -} - -extern "C++" { - // CHECK: @_Z1hv - void h() { } + + // CHECK: @_Z3ft3IiEvP2S4IT_2S1IS1_EE + ft3<int>(0); } |