2014-01-15 03:35:09 +08:00
|
|
|
// RUN: %clang_cc1 -std=c++11 -triple %itanium_abi_triple -emit-llvm -o - %s | FileCheck %s
|
2012-02-26 08:31:33 +08:00
|
|
|
struct A { A(); };
|
2011-05-24 05:07:59 +08:00
|
|
|
template<typename T>
|
2012-02-26 08:31:33 +08:00
|
|
|
struct X : A // default constructor is not trivial
|
2011-05-24 05:07:59 +08:00
|
|
|
{
|
|
|
|
X() = default;
|
2012-01-14 12:30:29 +08:00
|
|
|
~X() {} // not a literal type
|
2011-05-24 05:07:59 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
X<int> x;
|
2015-06-30 01:29:50 +08:00
|
|
|
// CHECK-LABEL: define internal {{.*}}void @__cxx_global_var_init()
|
2011-06-15 05:20:53 +08:00
|
|
|
// CHECK: call {{.*}} @_ZN1XIiEC1Ev
|
|
|
|
// CHECK: define linkonce_odr {{.*}} @_ZN1XIiEC1Ev
|
|
|
|
// CHECK: define linkonce_odr {{.*}} @_ZN1XIiEC2Ev
|