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()18 void 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