236
|
1 // RUN: %clang_cc1 -no-opaque-pointers -triple x86_64-apple-darwin -emit-llvm -o %t %s
|
150
|
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: private unnamed_addr constant [14 x i8] c"v16@0:8{?=}16
|
|
18 // CHECK: private unnamed_addr constant [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: private unnamed_addr constant [8 x i8] c"@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: private unnamed_addr constant [39 x i8] c"{?=\22presentationInstance\22@\22SCNCamera\22}\00"
|
|
56
|
|
57 // rdar://16655340
|
|
58 int i;
|
|
59 typeof(@encode(typeof(i))) e = @encode(typeof(i));
|
236
|
60 const char * Test(void)
|
150
|
61 {
|
|
62 return e;
|
|
63 }
|
221
|
64 // CHECK: @e ={{.*}} global [2 x i8] c"i\00", align 1
|
|
65 // CHECK: define{{.*}} i8* @Test()
|
150
|
66 // CHECK: ret i8* getelementptr inbounds ([2 x i8], [2 x i8]* @e, i64 0, i64 0)
|