Home | History | Annotate | Download | only in CodeGenObjC
      1 // RUN: %clang_cc1 -triple x86_64-apple-darwin -emit-llvm -o %t %s
      2 // RUN: FileCheck < %t %s
      3 // rdar://11777609
      4 
      5 typedef struct {} Z;
      6 
      7 @interface A
      8 -(void)bar:(Z)a;
      9 -(void)foo:(Z)a : (char*)b : (Z)c : (double) d;
     10 @end
     11 
     12 @implementation A
     13 -(void)bar:(Z)a {}
     14 -(void)foo:(Z)a: (char*)b : (Z)c : (double) d {}
     15 @end
     16 
     17 // CHECK: internal global [14 x i8] c"v16@0:8{?=}16
     18 // CHECK: internal global [26 x i8] c"v32@0:8{?=}16*16{?=}24d24
     19 
     20 
     21 // rdar://13190095
     22 @interface NSObject @end
     23 
     24 @class BABugExample;
     25 typedef BABugExample BABugExampleRedefinition;
     26 
     27 @interface BABugExample : NSObject {
     28     BABugExampleRedefinition *_property; // .asciz   "^{BABugExample=^{BABugExample}}"
     29 }
     30 @property (copy) BABugExampleRedefinition *property;
     31 @end
     32 
     33 @implementation BABugExample
     34 @synthesize property = _property;
     35 @end
     36 
     37 // CHECK: internal global [24 x i8] c"^{BABugExample=@}16
     38 
     39 // rdar://14408244
     40 @class SCNCamera;
     41 typedef SCNCamera C3DCamera;
     42 typedef struct
     43 {
     44     C3DCamera *presentationInstance;
     45 }  C3DCameraStorage;
     46 
     47 @interface SCNCamera
     48 @end
     49 
     50 @implementation SCNCamera
     51 {
     52     C3DCameraStorage _storage;
     53 }
     54 @end
     55 // CHECK: internal global [39 x i8] c"{?=\22presentationInstance\22^{SCNCamera}}\00"
     56