blob: 8e894c4220a803d3d7d26fb45c2dc9d22b37cd99 [file] [log] [blame]
Sebastian Redle3f38ea2008-12-21 12:17:24 +00001// RUN: clang -triple=i686-apple-darwin9 -fnext-runtime -emit-llvm -o %t %s &&
Fariborz Jahanian43822ea2008-12-19 23:34:38 +00002// RUN: grep -e "\^{Innermost=CC}" %t | count 1 &&
Fariborz Jahanianadcaf542008-12-20 19:17:01 +00003// RUN: grep -e "{Derived=#ib32b8b3b8sb16b8b8b2b8ccb6}" %t | count 1 &&
Fariborz Jahanian4306d3c2008-12-20 23:29:59 +00004// RUN: grep -e "{B1=#@c}" %t | count 1 &&
5// RUN: grep -e "v12@0:4\[3\[4{Test=i}]]8" %t | count 1
Fariborz Jahaniane4bb68a2008-12-19 17:45:06 +00006
7@class Int1;
8
9struct Innermost {
10 unsigned char a, b;
11};
12
13@interface Int1 {
14 signed char a, b;
15 struct Innermost *innermost;
16}
17@end
18
19@implementation Int1
20@end
Fariborz Jahanian43822ea2008-12-19 23:34:38 +000021
22@interface Base
23{
24 struct objc_class *isa;
25 int full;
26 int full2: 32;
27 int _refs: 8;
28 int field2: 3;
29 unsigned f3: 8;
30 short cc;
31 unsigned g: 16;
32 int r2: 8;
33 int r3: 8;
34 int r4: 2;
35 int r5: 8;
36 char c;
37}
38@end
39
40@interface Derived: Base
41{
42 char d;
43 int _field3: 6;
44}
45@end
46
47@implementation Base
48@end
49
50@implementation Derived
51@end
52
Fariborz Jahanianadcaf542008-12-20 19:17:01 +000053@interface B1
54{
55 struct objc_class *isa;
56 Int1 *sBase;
57 char c;
58}
59@end
60
61@implementation B1
62@end
63
Fariborz Jahanian4306d3c2008-12-20 23:29:59 +000064@interface Test
65{
66 int ivar;
67}
68-(void) test3: (Test [3] [4])b ;
69@end
70
71@implementation Test
72-(void) test3: (Test [3] [4])b {}
73@end
74
75
Fariborz Jahanian43822ea2008-12-19 23:34:38 +000076int main()
77{
78 const char *en = @encode(Derived);
Fariborz Jahanianadcaf542008-12-20 19:17:01 +000079 const char *eb = @encode(B1);
Fariborz Jahanian43822ea2008-12-19 23:34:38 +000080}
81