1*67e74705SXin Li// REQUIRES: x86-registered-target 2*67e74705SXin Li// RUN: %clang_cc1 -emit-llvm -fblocks -debug-info-kind=limited -triple x86_64-apple-darwin10 -fobjc-runtime=macosx-fragile-10.5 %s -o - | FileCheck %s 3*67e74705SXin Liextern void foo(void(^)(void)); 4*67e74705SXin Li 5*67e74705SXin Li// CHECK: !DISubprogram(name: "__destroy_helper_block_" 6*67e74705SXin Li 7*67e74705SXin Li@interface NSObject { 8*67e74705SXin Li struct objc_object *isa; 9*67e74705SXin Li} 10*67e74705SXin Li@end 11*67e74705SXin Li 12*67e74705SXin Li@interface A:NSObject @end 13*67e74705SXin Li@implementation A 14*67e74705SXin Li- (void) helper { 15*67e74705SXin Li int master = 0; 16*67e74705SXin Li __block int m2 = 0; 17*67e74705SXin Li __block int dbTransaction = 0; 18*67e74705SXin Li int (^x)(void) = ^(void) { (void) self; 19*67e74705SXin Li (void) master; 20*67e74705SXin Li (void) dbTransaction; 21*67e74705SXin Li m2++; 22*67e74705SXin Li return m2; 23*67e74705SXin Li 24*67e74705SXin Li }; 25*67e74705SXin Li master = x(); 26*67e74705SXin Li} 27*67e74705SXin Li@end 28*67e74705SXin Li 29*67e74705SXin Livoid foo(void(^x)(void)) {} 30*67e74705SXin Li 31