xref: /llvm-project/clang/test/SemaObjC/interface-layout.m (revision c6e68daac0fa6e77a89f3ca72f266a528503dd1c)
15fb5df9cSJohn McCall// RUN: %clang_cc1 %s -fsyntax-only -verify  -triple i386-apple-darwin9 -fobjc-runtime=macosx-fragile-10.5
2*c6e68daaSAndy Gibbs// expected-no-diagnostics
331236f87SChris Lattnertypedef struct objc_object {} *id;
431236f87SChris Lattnertypedef signed char BOOL;
531236f87SChris Lattnertypedef unsigned int NSUInteger;
631236f87SChris Lattnertypedef struct _NSZone NSZone;
731236f87SChris Lattner
831236f87SChris Lattner@protocol NSObject
931236f87SChris Lattner- (BOOL) isEqual:(id) object;
1031236f87SChris Lattner@end
1131236f87SChris Lattner
1231236f87SChris Lattner@protocol NSCopying
1331236f87SChris Lattner- (id) copyWithZone:(NSZone *) zone;
1431236f87SChris Lattner@end
1531236f87SChris Lattner
1631236f87SChris Lattner@interface NSObject < NSObject > {}
1731236f87SChris Lattner@end
1831236f87SChris Lattner
1931236f87SChris Lattnerextern id NSAllocateObject (Class aClass, NSUInteger extraBytes, NSZone * zone);
2031236f87SChris Lattner
2131236f87SChris Lattner@interface MyClassBase : NSObject < NSCopying > {}
2231236f87SChris Lattner@end
2331236f87SChris Lattner
2431236f87SChris Lattner@interface MyClassDirectNode : MyClassBase < NSCopying >
2531236f87SChris Lattner{
2631236f87SChris Lattner  @public NSUInteger attributeRuns[((1024 - 16 - sizeof (MyClassBase)) / (sizeof (NSUInteger) + sizeof (void *)))];
2731236f87SChris Lattner}
2831236f87SChris Lattner@end
29