diff options
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/SemaObjC/unused.m | 5 | ||||
| -rw-r--r-- | clang/test/SemaObjC/warning-missing-selector-name.m | 20 |
2 files changed, 23 insertions, 2 deletions
diff --git a/clang/test/SemaObjC/unused.m b/clang/test/SemaObjC/unused.m index efaf9c8f3ef..23d7e8cbe50 100644 --- a/clang/test/SemaObjC/unused.m +++ b/clang/test/SemaObjC/unused.m @@ -29,8 +29,9 @@ void test2() { @end @implementation foo -- (int) meth: (int)x: -(int)y: // expected-warning{{unused}} +- (int) meth: (int)x: // expected-warning {{parameter name used as selector may result in incomplete method selector name}} \ + // expected-note {{did you mean to use meth:Name2:Name3: as the selector name instead of meth:::}} +(int)y: // expected-warning{{unused}} expected-warning {{parameter name used as selector may result in incomplete method selector name}} (int) __attribute__((unused))z { return x; } @end diff --git a/clang/test/SemaObjC/warning-missing-selector-name.m b/clang/test/SemaObjC/warning-missing-selector-name.m new file mode 100644 index 00000000000..e4bde0b7466 --- /dev/null +++ b/clang/test/SemaObjC/warning-missing-selector-name.m @@ -0,0 +1,20 @@ +// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s +// RUN: %clang_cc1 -x objective-c++ -fsyntax-only -verify -Wno-objc-root-class -Wmissing-argument-name-in-selector %s +// rdar://12263549 + +@interface Super @end +@interface INTF : Super +-(void) Name1:(id)Arg1 Name2:(id)Arg2; // Name1:Name2: +-(void) Name1:(id) Name2:(id)Arg2; +-(void) Name1:(id)Arg1 Name2:(id)Arg2 Name3:(id)Arg3; // Name1:Name2:Name3: +-(void) Name1:(id)Arg1 Name2:(id) Name3:(id)Arg3; +@end + +@implementation INTF +-(void) Name1:(id)Arg1 Name2:(id)Arg2{} +-(void) Name1:(id) Name2:(id)Arg2 {} // expected-warning {{parameter name used as selector may result in incomplete method selector name}} \ + // expected-note {{did you mean to use Name1:Name2: as the selector name instead of Name1::}} +-(void) Name1:(id)Arg1 Name2:(id)Arg2 Name3:(id)Arg3 {} +-(void) Name1:(id)Arg1 Name2:(id) Name3:(id)Arg3 {} // expected-warning {{parameter name used as selector may result in incomplete method selector name}} \ + // expected-note {{did you mean to use Name1:Name2:Name3: as the selector name instead of Name1:Name2::}} +@end |

