1@interface Super : TestRoot {
2  @public
3#if OLD
4    // nothing
5#else
6    char superIvar;
7#endif
8}
9@end
10
11
12@interface ShrinkingSuper : TestRoot {
13  @public
14#if OLD
15    id superIvar[5];
16    __weak id superIvar2[5];
17#else
18    // nothing
19#endif
20}
21@end;
22
23
24@interface MoreStrongSuper : TestRoot {
25  @public
26#if OLD
27    void *superIvar;
28#else
29    id superIvar;
30#endif
31}
32@end;
33
34
35@interface MoreWeakSuper : TestRoot {
36  @public
37#if OLD
38    id superIvar;
39#else
40    __weak id superIvar;
41#endif
42}
43@end;
44
45@interface MoreWeak2Super : TestRoot {
46  @public
47#if OLD
48    void *superIvar;
49#else
50    __weak id superIvar;
51#endif
52}
53@end;
54
55@interface LessStrongSuper : TestRoot {
56  @public
57#if OLD
58    id superIvar;
59#else
60    void *superIvar;
61#endif
62}
63@end;
64
65@interface LessWeakSuper : TestRoot {
66  @public
67#if OLD
68    __weak id superIvar;
69#else
70    id superIvar;
71#endif
72}
73@end;
74
75@interface LessWeak2Super : TestRoot {
76  @public
77#if OLD
78    __weak id superIvar;
79#else
80    void *superIvar;
81#endif
82}
83@end;
84
85@interface NoGCChangeSuper : TestRoot {
86  @public
87    intptr_t d;
88    char superc1;
89#if OLD
90    // nothing
91#else
92    char superc2;
93#endif
94}
95@end
96
97@interface RunsOf15 : TestRoot {
98  @public
99    id scan1;
100    intptr_t skip15[15];
101    id scan15[15];
102    intptr_t skip15_2[15];
103    id scan15_2[15];
104#if OLD
105    // nothing
106#else
107    intptr_t skip1;
108#endif
109}
110@end
111