blob: b9558283127605d5195c59271bc4a98dcc1d01f3 [file] [log] [blame]
Daniel Dunbara5728872009-12-15 20:14:24 +00001// RUN: %clang_cc1 %s -emit-llvm -o - | FileCheck %s
Eli Friedman378fe062009-12-05 04:55:55 +00002
3template<class T> class A {
John McCall7002f4c2010-04-09 19:03:51 +00004public:
Eli Friedman378fe062009-12-05 04:55:55 +00005 A() {}
6 virtual void a() {}
7};
8class B : A<int> {
9 B();
10};
11B::B() {}
12
John McCall3d640e62010-08-03 07:24:12 +000013template class A<long>;
14
15extern template class A<short>;
16template class A<short>;
17
18
19// CHECK: @_ZTV1B = weak_odr hidden constant
20// CHECK: @_ZTV1AIlE = weak_odr constant
21// CHECK: @_ZTV1AIsE = weak_odr constant
John McCall7a536902010-08-05 20:39:18 +000022// CHECK: @_ZTV1AIiE = weak_odr constant