1// RUN: %clang_cc1 -triple x86_64-apple-macosx10.13.0 -std=c++1z -fobjc-arc -fobjc-exceptions -fcxx-exceptions -fexceptions -emit-llvm -o - %s | FileCheck %s 2 3// CHECK: %[[V0:.*]] = type opaque 4// CHECK: %[[STRUCT_CLASS1:.*]] = type { %[[V0]]* } 5 6@interface Class0; 7@end 8 9struct Class1 { 10 Class0 *f; 11}; 12 13struct Container { 14 Class1 a; 15 bool b; 16}; 17 18bool getBool() { 19 return false; 20} 21 22Class0 *g; 23 24// CHECK: define {{.*}} @_Z4testv() 25// CHECK: invoke zeroext i1 @_Z7getBoolv() 26// CHECK: landingpad { i8*, i32 } 27// CHECK: call void @_ZN6Class1D1Ev(%[[STRUCT_CLASS1]]* %{{.*}}) 28// CHECK: br label 29 30// CHECK: define linkonce_odr void @_ZN6Class1D1Ev( 31 32Container test() { 33 return {{g}, getBool()}; 34} 35