diff options
author | Nicola Pero <n.pero@mi.flashnet.it> | 2002-08-28 00:03:30 +0200 |
---|---|---|
committer | Nicola Pero <nicola@gcc.gnu.org> | 2002-08-27 22:03:30 +0000 |
commit | c350f8c1c479aabb1bd0a58f4072381d77daca77 (patch) | |
tree | 411847e1d86c6ab3afd2bc1f16b9fa218d2116c6 | |
parent | ece4ce85d8c9b38cd2d5cec1c75727102208b20d (diff) | |
download | gcc-c350f8c1c479aabb1bd0a58f4072381d77daca77.zip gcc-c350f8c1c479aabb1bd0a58f4072381d77daca77.tar.gz gcc-c350f8c1c479aabb1bd0a58f4072381d77daca77.tar.bz2 |
New objc.dg test for new -Wundeclared-selector ObjC option
From-SVN: r56616
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/objc.dg/undeclared-selector.m | 48 |
2 files changed, 52 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 17cadbf..1e3a262 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +Tue Aug 27 22:23:22 2002 Nicola Pero <n.pero@mi.flashnet.it> + + * objc.dg/undeclared-selector.m: New test. + 2002-08-27 Nathan Sidwell <nathan@codesourcery.com> * g++.dg/other/offsetof1.C: Avoid cast warning. diff --git a/gcc/testsuite/objc.dg/undeclared-selector.m b/gcc/testsuite/objc.dg/undeclared-selector.m new file mode 100644 index 0000000..1cfc6c8 --- /dev/null +++ b/gcc/testsuite/objc.dg/undeclared-selector.m @@ -0,0 +1,48 @@ +/* Test for -Wundeclared-selector. */ +/* Author: Nicola Pero <nicola@brainstorm.co.uk>. */ +/* { dg-do compile } */ +/* { dg-options "-Wundeclared-selector" } */ + +#include <objc/objc.h> + +@interface MyClass + ++ (void) methodA; +- (void) methodB; ++ (void) methodD; +- (void) methodF; + +@end + +@implementation MyClass + ++ (void) methodA {} +- (void) methodB {} ++ (void) methodD +{ + SEL d = @selector(methodD); /* Ok */ + SEL e = @selector(methodE); /* { dg-warning "undeclared selector" } */ +} + +- (void) methodE +{ + SEL e = @selector(methodE); /* Ok */ +} + +- (void) methodF +{ + SEL e = @selector(methodE); /* Ok */ +} + +@end + +int main (void) +{ + SEL a = @selector(methodA); /* Ok */ + SEL b = @selector(methodB); /* Ok */ + SEL c = @selector(methodC); /* { dg-warning "undeclared selector" } */ + SEL d = @selector(methodD); /* Ok */ + SEL e = @selector(methodE); /* Ok */ + return 0; + +} |