blob: 46fd60914b0ef250ff6b7cdbc2e88f88cce43326 [file] [log] [blame]
Hans Wennborgc9bd88e2014-01-14 19:35:09 +00001// RUN: %clang_cc1 -std=c++11 -triple %itanium_abi_triple -emit-llvm -o - %s | FileCheck %s
Richard Smith0d1f3cb2012-02-26 00:31:33 +00002struct A { A(); };
Alexis Hunt1fb4e762011-05-23 21:07:59 +00003template<typename T>
Richard Smith0d1f3cb2012-02-26 00:31:33 +00004struct X : A // default constructor is not trivial
Alexis Hunt1fb4e762011-05-23 21:07:59 +00005{
6 X() = default;
Richard Smithdafff942012-01-14 04:30:29 +00007 ~X() {} // not a literal type
Alexis Hunt1fb4e762011-05-23 21:07:59 +00008};
9
10X<int> x;
Stephen Lin43622612013-08-15 06:47:53 +000011// CHECK-LABEL: define internal void @__cxx_global_var_init()
Eli Friedman50ed1502011-06-14 21:20:53 +000012// CHECK: call {{.*}} @_ZN1XIiEC1Ev
13// CHECK: define linkonce_odr {{.*}} @_ZN1XIiEC1Ev
14// CHECK: define linkonce_odr {{.*}} @_ZN1XIiEC2Ev