mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-27 15:28:53 -04:00

- This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). llvm-svn: 91446
44 lines
749 B
Objective-C
44 lines
749 B
Objective-C
// RUN: %clang_cc1 -fsyntax-only %s
|
|
|
|
typedef struct objc_class *Class;
|
|
typedef struct objc_object {
|
|
Class isa;
|
|
} *id;
|
|
|
|
|
|
@protocol P @end
|
|
|
|
@interface MyList
|
|
@end
|
|
|
|
@implementation MyList
|
|
- (unsigned int)countByEnumeratingWithState: (struct __objcFastEnumerationState *)state objects: (id *)items count:(unsigned int)stackcount
|
|
{
|
|
return 0;
|
|
}
|
|
@end
|
|
|
|
@interface MyList (BasicTest)
|
|
- (void)compilerTestAgainst;
|
|
@end
|
|
|
|
@implementation MyList (BasicTest)
|
|
- (void)compilerTestAgainst {
|
|
int i;
|
|
for (id elem in self)
|
|
++i;
|
|
for (MyList *elem in self)
|
|
++i;
|
|
for (id<P> se in self)
|
|
++i;
|
|
|
|
MyList<P> *p;
|
|
for (p in self)
|
|
++i;
|
|
|
|
for (p in p)
|
|
++i;
|
|
}
|
|
@end
|
|
|