xref: /aosp_15_r20/external/clang/test/SemaObjC/interface-layout.m (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li// RUN: %clang_cc1 %s -fsyntax-only -verify  -triple i386-apple-darwin9 -fobjc-runtime=macosx-fragile-10.5
2*67e74705SXin Li// expected-no-diagnostics
3*67e74705SXin Litypedef struct objc_object {} *id;
4*67e74705SXin Litypedef signed char BOOL;
5*67e74705SXin Litypedef unsigned int NSUInteger;
6*67e74705SXin Litypedef struct _NSZone NSZone;
7*67e74705SXin Li
8*67e74705SXin Li@protocol NSObject
9*67e74705SXin Li- (BOOL) isEqual:(id) object;
10*67e74705SXin Li@end
11*67e74705SXin Li
12*67e74705SXin Li@protocol NSCopying
13*67e74705SXin Li- (id) copyWithZone:(NSZone *) zone;
14*67e74705SXin Li@end
15*67e74705SXin Li
16*67e74705SXin Li@interface NSObject < NSObject > {}
17*67e74705SXin Li@end
18*67e74705SXin Li
19*67e74705SXin Liextern id NSAllocateObject (Class aClass, NSUInteger extraBytes, NSZone * zone);
20*67e74705SXin Li
21*67e74705SXin Li@interface MyClassBase : NSObject < NSCopying > {}
22*67e74705SXin Li@end
23*67e74705SXin Li
24*67e74705SXin Li@interface MyClassDirectNode : MyClassBase < NSCopying >
25*67e74705SXin Li{
26*67e74705SXin Li  @public NSUInteger attributeRuns[((1024 - 16 - sizeof (MyClassBase)) / (sizeof (NSUInteger) + sizeof (void *)))];
27*67e74705SXin Li}
28*67e74705SXin Li@end
29