Files
llvm-project/clang/test/Parser/objc-init.m
Chris Lattner bd2d634424 continue cleaning up code, and disable sending a message directly to an
interface.  This fixes a bug where we used to accept:

void test2(NSNumber x) {
	[x METH];
}

which doesn't make sense and GCC rejects.

llvm-svn: 53841
2008-07-21 06:12:56 +00:00

27 lines
398 B
Objective-C

// RUN: clang -fsyntax-only -verify %s
// rdar://5707001
@interface NSNumber;
- () METH;
- (unsigned) METH2;
@end
void test1() {
id objects[] = {[NSNumber METH]};
}
void test2(NSNumber x) {
id objects[] = {[x METH]}; // expected-error {{bad receiver type}}
}
void test3(NSNumber *x) {
id objects[] = {[x METH]};
}
// rdar://5977581
void test4() {
unsigned x[] = {[NSNumber METH2]+2};
}