brintos

brintos / llvm-project-archived public Read only

0
0
Text · 717 B · 66d2332 Raw
33 lines · cpp
1// RUN: %clang_cc1 %s -triple %itanium_abi_triple -emit-llvm -o - | FileCheck %s2 3template<class T> class A {4public:5  A() {}6  virtual void a() {}7};8class B : A<int> {9  B();10};11B::B() {}12 13template class A<long>;14 15extern template class A<short>;16template class A<short>;17 18 19// CHECK: @_ZTV1B = linkonce_odr {{(dso_local )?}}unnamed_addr constant20// CHECK: @_ZTV1AIlE = weak_odr {{(dso_local )?}}unnamed_addr constant21// CHECK: @_ZTV1AIsE = weak_odr {{(dso_local )?}}unnamed_addr constant22// CHECK: @_ZTV1AIiE = linkonce_odr {{(dso_local )?}}unnamed_addr constant23 24template<class T> struct C {25  virtual void c() {}26};27struct D : C<int> {28  virtual void d();29};30void D::d() {}31 32// CHECK: define {{.*}}@_ZN1CIiE1cEv(33