mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-17 10:46:37 +00:00

is that we need more information to decide the exact conditions for whether one ObjCObjectPointer is an acceptable return/parameter override for another, so we're going to disable that entire class of warning for now. The "forward developement" warning category, -Wmethod-signatures, can receive unrestricted feature work, and when we're happy with how it acts, we'll turn it on by default. This is a pretty conservative change, and nobody's totally content with it. llvm-svn: 117524
24 lines
775 B
Objective-C
24 lines
775 B
Objective-C
// RUN: %clang_cc1 -Wmethod-signatures -fsyntax-only -verify %s
|
|
|
|
@protocol NSWindowDelegate @end
|
|
|
|
@protocol IBStringsTableWindowDelegate <NSWindowDelegate>
|
|
@end
|
|
|
|
@interface NSWindow
|
|
- (void)setDelegate:(id <NSWindowDelegate>)anObject; // expected-note {{previous definition is here}}
|
|
- (id <IBStringsTableWindowDelegate>) delegate; // expected-note {{previous definition is here}}
|
|
@end
|
|
|
|
|
|
@interface IBStringsTableWindow : NSWindow {}
|
|
@end
|
|
|
|
@implementation IBStringsTableWindow
|
|
- (void)setDelegate:(id <IBStringsTableWindowDelegate>)delegate { // expected-warning {{conflicting parameter types in implementation of 'setDelegate:'}}
|
|
}
|
|
- (id <NSWindowDelegate>)delegate { // expected-warning {{conflicting return type in implementation of 'delegate':}}
|
|
return 0;
|
|
}
|
|
@end
|