• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// REQUIRES: x86-64-registered-target
2// RUN: %clang_cc1 -emit-llvm -fblocks -g -triple x86_64-apple-darwin10 -fobjc-fragile-abi %s -o - | FileCheck %s
3extern void foo(void(^)(void));
4
5// CHECK: metadata !{i32 786478, i32 0, metadata !27, metadata !"__destroy_helper_block_", metadata !"__destroy_helper_block_", metadata !"", metadata !27, i32 24, metadata !43, i1 true, i1 true, i32 0, i32 0, null, i32 0, i1 false, void (i8*)* @__destroy_helper_block_, null, null, metadata !45, i32 24} ; [ DW_TAG_subprogram ]
6
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
31