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