1 // REQUIRES: x86-64-registered-target 2 // RUN: %clang_cc1 -masm-verbose -S -fblocks -g -triple x86_64-apple-darwin10 -fobjc-dispatch-method=mixed %s -o - | FileCheck %s 3 4 //Radar 9279956 5 //CHECK: ## DW_OP_deref 6 //CHECK-NEXT: ## DW_OP_plus_uconst 7 8 typedef unsigned int NSUInteger; 9 10 @protocol NSObject 11 @end 12 13 @interface NSObject <NSObject> 14 - (id)init; 15 + (id)alloc; 16 @end 17 18 @interface NSDictionary : NSObject 19 - (NSUInteger)count; 20 @end 21 22 @interface NSMutableDictionary : NSDictionary 23 @end 24 25 @interface A : NSObject { 26 @public 27 int ivar; 28 } 29 @end 30 31 static void run(void (^block)(void)) 32 { 33 block(); 34 } 35 36 @implementation A 37 38 - (id)init 39 { 40 if ((self = [super init])) { 41 run(^{ 42 NSMutableDictionary *d = [[NSMutableDictionary alloc] init]; 43 ivar = 42 + (int)[d count]; 44 }); 45 } 46 return self; 47 } 48 49 @end 50 51 int main() 52 { 53 A *a = [[A alloc] init]; 54 return 0; 55 } 56