blob: 1256e7db1a4f28970f249a26a53e790c77979bd3 [file] [log] [blame]
Douglas Gregor1a0d31a2009-01-12 18:45:55 +00001// RUN: clang -fsyntax-only -verify %s
2// FIXME: must also compile as Objective-C++
3
4// <rdar://problem/6487662>
5typedef struct objc_selector *SEL;
6typedef signed char BOOL;
7typedef unsigned int NSUInteger;
8typedef struct _NSZone NSZone;
9@class NSInvocation, NSMethodSignature, NSCoder, NSString, NSEnumerator;
10@protocol NSObject
11- (BOOL)isEqual:(id)object;
12- (BOOL)respondsToSelector:(SEL)aSelector;
13@end
14@protocol NSCopying
15- (id)copyWithZone:(NSZone *)zone;
16@end
17@protocol NSMutableCopying
18- (id)mutableCopyWithZone:(NSZone *)zone;
19@end
20@protocol NSCoding
21- (void)encodeWithCoder:(NSCoder *)aCoder;
22@end
23@interface NSObject <NSObject> {}
24@end
25@class NSString, NSData;
26typedef struct _NSPoint {}
27NSRange;
28@interface NSString : NSObject <NSCopying, NSMutableCopying, NSCoding>
29- (NSUInteger)length;
30@end
31@interface NSMutableString : NSString
32- (void)replaceCharactersInRange:(NSRange)range withString:(NSString *)aString;
33@end
34@class NSArray, NSDictionary, NSMapTable;
35@interface NSResponder : NSObject <NSCoding> {}
36@end
37@protocol NSAnimatablePropertyContainer
38- (id)animator;
39@end
40extern NSString *NSAnimationTriggerOrderIn ;
41@interface NSView : NSResponder <NSAnimatablePropertyContainer> {
42 struct __VFlags2 {} _vFlags2;
43}
44@end
45@class NSAttributedString, NSEvent, NSFont, NSFormatter, NSImage, NSMenu, NSText, NSView;
46@interface FooiagramView : NSView {
47id _delegate;
48}
49@end
50@class FooiagramView;
51@interface _FooiagramViewReserved : NSObject {
52@public
53 NSMutableString *_typeToSelectString;
54 struct _FooiagramViewFlags {
55 unsigned int delegateRespondsToPrintInfoForBarView : 1;
56 } _dvFlags;
57}
58@end
59extern _FooiagramViewReserved *_FooiagramViewBarViewReserved(FooiagramView *BarView);
60@interface FooiagramView (FooiagramViewPrivate)
61+ (Class)_defaultBarToolManagerClass;
62@end
63@implementation FooiagramView
64static NSMapTable *_defaultMenuForClass = 0;
65- (void)setDelegate:(id)delegate {
66 if (_delegate != delegate) {
67 struct _FooiagramViewFlags *dvFlags =
68 &_FooiagramViewBarViewReserved(self)->_dvFlags;
69 if (_delegate != ((void *)0)) {
70 dvFlags->delegateRespondsToPrintInfoForBarView = [_delegate respondsToSelector:@selector(printInfoForBarView:)];
71 }
72 }
73}
74@end
75
76// <rdar://problem/6487684>
77@interface WizKing_MIKeep {
78struct __LoreStuffNode *_historyStuff;
79}
80@end
81typedef struct __LoreStuffNode {} LoreStuffNode;
82@implementation WizKing_MIKeep
83- init {
84 LoreStuffNode *node;
85 node = &(_historyStuff[1]);
86}
87@end
88
89// <rdar://problem/6487702>
90typedef long unsigned int __darwin_size_t;
91typedef __darwin_size_t size_t;
92void *memset(void *, int, size_t);
93@class NSString, NSURL, NSError;
94@interface OingoWerdnaPeon : NSObject {}
95@end typedef enum {
96OingoPT_SmashOK, OingoPT_NoSuchFile, }
97OingoWerdnaPeonIOMethod;
98@interface OingoWerdnaPeonSmashDrivel : NSObject <NSCopying> {}
99@end
100@interface OingoBoingoContraptionPeon : OingoWerdnaPeon {
101struct _OingoBoingoContraptionPeonFlags {}
102_nfttFlags;
103}
104@end
105@implementation OingoBoingoContraptionPeon
106+ (void)initialize {}
107- (id)initWithSmashDrivel:(OingoWerdnaPeonSmashDrivel *)info {
108 if (self != ((void *)0)) {
109 (void)memset(&_nfttFlags, 0, sizeof(struct _OingoBoingoContraptionPeonFlags));
110 }
111}
112@end
113
114@interface Blah {
115 struct X {
116 int x;
117 } value;
118}
119@end
120
121@implementation Blah
122- (int)getValue {
123 struct X *xp = &value;
124 return xp->x;
125}
126@end