1 // RUN: %clang_cc1 %s -fblocks -triple x86_64-apple-darwin -emit-llvm -o - | FileCheck %s 2 3 struct S { 4 S(const char *); 5 ~S(); 6 }; 7 8 struct TestObject 9 { 10 TestObject(const TestObject& inObj, int def = 100, const S &Silly = "silly"); 11 TestObject(); 12 ~TestObject(); 13 TestObject& operator=(const TestObject& inObj); 14 int version() const; 15 16 }; 17 testRoutine()18void testRoutine() { 19 TestObject one; 20 int (^V)() = ^{ return one.version(); }; 21 } 22 23 // CHECK: call void @_ZN10TestObjectC1Ev 24 // CHECK: call void @_ZN1SC1EPKc 25 // CHECK: call void @_ZN10TestObjectC1ERKS_iRK1S 26 // CHECK: call void @_ZN1SD1Ev 27 // CHECK: call void @_ZN10TestObjectD1Ev 28 // CHECK: call void @_ZN10TestObjectD1Ev 29