diff options
Diffstat (limited to 'test/CodeGenCXX/rtti-linkage.cpp')
-rw-r--r-- | test/CodeGenCXX/rtti-linkage.cpp | 69 |
1 files changed, 37 insertions, 32 deletions
diff --git a/test/CodeGenCXX/rtti-linkage.cpp b/test/CodeGenCXX/rtti-linkage.cpp index b9eb5b4..9d85a2c 100644 --- a/test/CodeGenCXX/rtti-linkage.cpp +++ b/test/CodeGenCXX/rtti-linkage.cpp @@ -1,47 +1,53 @@ -// RUN: %clang_cc1 %s -I%S -triple=x86_64-apple-darwin10 -emit-llvm -o - | FileCheck %s +// RUN: %clang_cc1 %s -I%S -triple=x86_64-apple-darwin10 -emit-llvm -o - | sort | FileCheck %s + +// FIXME: Fails on Win32, dunno why. +// XFAIL: win32 + #include <typeinfo> -// CHECK: _ZTS1B = constant -// CHECK: _ZTS1A = weak_odr constant + + +// CHECK: _ZTIN12_GLOBAL__N_11DE to + + + // CHECK: _ZTI1A = weak_odr constant // CHECK: _ZTI1B = constant -// CHECK: _ZTSP1C = internal constant -// CHECK: _ZTS1C = internal constant // CHECK: _ZTI1C = internal constant -// CHECK: _ZTIP1C = internal constant -// CHECK: _ZTSPP1C = internal constant -// CHECK: _ZTIPP1C = internal constant -// CHECK: _ZTSM1Ci = internal constant -// CHECK: _ZTIM1Ci = internal constant -// CHECK: _ZTSPM1Ci = internal constant -// CHECK: _ZTIPM1Ci = internal constant -// CHECK: _ZTSM1CS_ = internal constant -// CHECK: _ZTIM1CS_ = internal constant -// CHECK: _ZTSM1CPS_ = internal constant -// CHECK: _ZTIM1CPS_ = internal constant -// CHECK: _ZTSM1A1C = internal constant +// CHECK: _ZTIFN12_GLOBAL__N_11DEvE = internal constant +// CHECK: _ZTIFvN12_GLOBAL__N_11DEE = internal constant +// CHECK: _ZTIFvvE = weak_odr // CHECK: _ZTIM1A1C = internal constant -// CHECK: _ZTSM1AP1C = internal constant // CHECK: _ZTIM1AP1C = internal constant - -// CHECK: _ZTS1F = weak_odr constant - -// CHECK: _ZTSN12_GLOBAL__N_11DE = internal constant +// CHECK: _ZTIM1CPS_ = internal constant +// CHECK: _ZTIM1CS_ = internal constant +// CHECK: _ZTIM1Ci = internal constant // CHECK: _ZTIN12_GLOBAL__N_11DE = internal constant -// CHECK: _ZTSPN12_GLOBAL__N_11DE = internal constant +// CHECK: _ZTIN12_GLOBAL__N_11EE = internal constant +// CHECK: _ZTIP1C = internal constant +// CHECK: _ZTIPFvvE = weak_odr constant +// CHECK: _ZTIPM1Ci = internal constant // CHECK: _ZTIPN12_GLOBAL__N_11DE = internal constant +// CHECK: _ZTIPP1C = internal constant +// CHECK: _ZTS1A = weak_odr constant +// CHECK: _ZTS1B = constant +// CHECK: _ZTS1C = internal constant +// CHECK: _ZTS1F = weak_odr constant // CHECK: _ZTSFN12_GLOBAL__N_11DEvE = internal constant -// CHECK: _ZTIFN12_GLOBAL__N_11DEvE = internal constant // CHECK: _ZTSFvN12_GLOBAL__N_11DEE = internal constant -// CHECK: _ZTIFvN12_GLOBAL__N_11DEE = internal constant - -// CHECK: _ZTSPFvvE = weak_odr constant // CHECK: _ZTSFvvE = weak_odr constant -// CHECK: _ZTIFvvE = weak_odr -// CHECK: _ZTIPFvvE = weak_odr constant - +// CHECK: _ZTSM1A1C = internal constant +// CHECK: _ZTSM1AP1C = internal constant +// CHECK: _ZTSM1CPS_ = internal constant +// CHECK: _ZTSM1CS_ = internal constant +// CHECK: _ZTSM1Ci = internal constant +// CHECK: _ZTSN12_GLOBAL__N_11DE = internal constant // CHECK: _ZTSN12_GLOBAL__N_11EE = internal constant -// CHECK: _ZTIN12_GLOBAL__N_11EE = internal constant +// CHECK: _ZTSP1C = internal constant +// CHECK: _ZTSPFvvE = weak_odr constant +// CHECK: _ZTSPM1Ci = internal constant +// CHECK: _ZTSPN12_GLOBAL__N_11DE = internal constant +// CHECK: _ZTSPP1C = internal constant // A has no key function, so its RTTI data should be weak_odr. struct A { }; @@ -99,6 +105,5 @@ const std::type_info &t2() { (void)typeid(E); - // CHECK: _ZTIN12_GLOBAL__N_11DE to return typeid(getD()); } |