1*0a6a1f1dSLionel Sambuc // RUN: %clang_cc1 -std=c++11 -triple %itanium_abi_triple -emit-llvm -o - %s | FileCheck %s 2f4a2713aSLionel Sambuc struct A { A(); }; 3f4a2713aSLionel Sambuc template<typename T> 4f4a2713aSLionel Sambuc struct X : A // default constructor is not trivial 5f4a2713aSLionel Sambuc { 6f4a2713aSLionel Sambuc X() = default; ~XX7f4a2713aSLionel Sambuc ~X() {} // not a literal type 8f4a2713aSLionel Sambuc }; 9f4a2713aSLionel Sambuc 10f4a2713aSLionel Sambuc X<int> x; 11f4a2713aSLionel Sambuc // CHECK-LABEL: define internal void @__cxx_global_var_init() 12f4a2713aSLionel Sambuc // CHECK: call {{.*}} @_ZN1XIiEC1Ev 13f4a2713aSLionel Sambuc // CHECK: define linkonce_odr {{.*}} @_ZN1XIiEC1Ev 14f4a2713aSLionel Sambuc // CHECK: define linkonce_odr {{.*}} @_ZN1XIiEC2Ev 15