diff options
Diffstat (limited to 'test/SemaObjC/typo-correction.m')
| -rw-r--r-- | test/SemaObjC/typo-correction.m | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/test/SemaObjC/typo-correction.m b/test/SemaObjC/typo-correction.m index 58824e2edbf0..f19ec1a1fa3c 100644 --- a/test/SemaObjC/typo-correction.m +++ b/test/SemaObjC/typo-correction.m @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 %s -verify -fsyntax-only +// RUN: %clang_cc1 %s -verify -fsyntax-only -fobjc-runtime=ios @protocol P -(id)description; @@ -28,3 +28,26 @@ typedef int super1; [self foo:[super description] other:someivar]; // expected-error {{use of undeclared identifier 'someivar'; did you mean '_someivar'?}} } @end + +__attribute__ (( __objc_root_class__ )) +@interface I { + id _interface; // expected-note {{'_interface' declared here}} +} +-(void)method; +@end + +@interface I () { + id _extension; // expected-note {{'_extension' declared here}} +} +@end + +@implementation I { + id _implementation; // expected-note {{'_implementation' declared here}} +} +-(void)method { + (void)self->implementation; // expected-error {{'I' does not have a member named 'implementation'; did you mean '_implementation'?}} + (void)self->interface; // expected-error {{'I' does not have a member named 'interface'; did you mean '_interface'?}} + (void)self->extension; // expected-error {{'I' does not have a member named 'extension'; did you mean '_extension'?}} +} +@end + |
