diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2019-01-19 10:04:05 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2019-01-19 10:04:05 +0000 |
| commit | 676fbe8105eeb6ff4bb2ed261cb212fcfdbe7b63 (patch) | |
| tree | 02a1ac369cb734d0abfa5000dd86e5b7797e6a74 /test/SemaObjC/multiple-method-names-in-class-self.m | |
| parent | c7e70c433efc6953dc3888b9fbf9f3512d7da2b0 (diff) | |
Vendor import of clang trunk r351319 (just before the release_80 branchvendor/clang/clang-trunk-r351319
Diffstat (limited to 'test/SemaObjC/multiple-method-names-in-class-self.m')
| -rw-r--r-- | test/SemaObjC/multiple-method-names-in-class-self.m | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/test/SemaObjC/multiple-method-names-in-class-self.m b/test/SemaObjC/multiple-method-names-in-class-self.m new file mode 100644 index 000000000000..47e1306d3837 --- /dev/null +++ b/test/SemaObjC/multiple-method-names-in-class-self.m @@ -0,0 +1,39 @@ +// RUN: %clang_cc1 -Wobjc-multiple-method-names -x objective-c -verify %s +// RUN: %clang_cc1 -Wobjc-multiple-method-names -x objective-c -verify -fobjc-arc %s +// expected-no-diagnostics + +@interface NSObj + ++ (instancetype) alloc; + ++ (_Nonnull instancetype) globalObject; + +@end + +@interface SelfAllocReturn: NSObj + +- (instancetype)initWithFoo:(int)x; + +@end + +@interface SelfAllocReturn2: NSObj + +- (instancetype)initWithFoo:(SelfAllocReturn *)x; + +@end + +@implementation SelfAllocReturn + +- (instancetype)initWithFoo:(int)x { + return self; +} + ++ (instancetype) thingWithFoo:(int)x { + return [[self alloc] initWithFoo: x]; +} + ++ (void) initGlobal { + (void)[[self globalObject] initWithFoo: 20]; +} + +@end |
