blob: cf8c2a2a9684961784b2063ddcb8b389a90daf28 [file] [log] [blame]
Galina Kistanova0ccb31c2011-06-03 22:24:54 +00001// REQUIRES: x86-64-registered-target
John McCall260611a2012-06-20 06:18:46 +00002// RUN: %clang_cc1 -emit-llvm -fblocks -g -triple x86_64-apple-darwin10 -fobjc-runtime=macosx-fragile-10.5 %s -o - | FileCheck %s
Devang Patel58dc5ca2011-05-02 20:37:08 +00003extern void foo(void(^)(void));
4
Eric Christopher87380aa2012-04-23 19:00:24 +00005// CHECK: metadata !{i32 786478, i32 0, metadata !27, metadata !"__destroy_helper_block_", metadata !"__destroy_helper_block_", metadata !"", metadata !27, i32 24, metadata !37, i1 true, i1 true, i32 0, i32 0, null, i32 0, i1 false, void (i8*)* @__destroy_helper_block_, null, null, metadata !5, i32 24} ; [ DW_TAG_subprogram ]
Devang Patel58dc5ca2011-05-02 20:37:08 +00006
7@interface NSObject {
8 struct objc_object *isa;
9}
10@end
11
12@interface A:NSObject @end
13@implementation A
14- (void) helper {
15 int master = 0;
16 __block int m2 = 0;
17 __block int dbTransaction = 0;
18 int (^x)(void) = ^(void) { (void) self;
19 (void) master;
20 (void) dbTransaction;
21 m2++;
22 return m2;
23
24 };
25 master = x();
26}
27@end
28
29void foo(void(^x)(void)) {}
30