diff options
Diffstat (limited to 'test/CodeGenCXX/mangle.cpp')
-rw-r--r-- | test/CodeGenCXX/mangle.cpp | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/test/CodeGenCXX/mangle.cpp b/test/CodeGenCXX/mangle.cpp index ba1b3bf..e7955a8 100644 --- a/test/CodeGenCXX/mangle.cpp +++ b/test/CodeGenCXX/mangle.cpp @@ -218,7 +218,7 @@ struct S7 { // PR5139 // CHECK: @_ZN2S7C1Ev // CHECK: @_ZN2S7C2Ev -// CHECK: @"_ZN2S73$_0C1Ev" +// CHECK: @_ZN2S7Ut_C1Ev S7::S7() {} // PR5063 @@ -852,3 +852,26 @@ namespace test36 { // CHECK: define weak_odr {{.*}} @_ZN6test362f1IJifEEENS_1AIXsZfp_EEEDpT_ template A<2> f1(int, float); } + +namespace test37 { + struct foo { + struct { + } a; + typedef struct { } b; + typedef struct { } *c; + struct { + } d; + }; + template<typename T> void func(T) { } + void test() { + // CHECK: define linkonce_odr void @_ZN6test374funcINS_3fooUt_EEEvT_ + func(foo().a); + // CHECK: define linkonce_odr void @_ZN6test374funcINS_3fooUt0_EEEvT_ + func(*foo::c()); + // CHECK: define linkonce_odr void @_ZN6test374funcINS_3fooUt1_EEEvT_ + func(foo().d); + } +} + +// CHECK: define void @_Z6ASfuncPU3AS3i +void ASfunc(__attribute__((address_space(3))) int* x) {} |