1 // RUN: %clang_cc1 -fsyntax-only -Wmethod-signatures -verify -pedantic -Wno-objc-root-class %s
2 typedef signed char BOOL;
7 @protocol PBXCompletionItem
12 extern NSInteger codeAssistantCaseCompareItems(id a, id b, void *context);
14 NSInteger codeAssistantCaseCompareItems(id<PBXCompletionItem> a, id<PBXCompletionItem> b, void *context)
19 @interface TedWantsToVerifyObjCDoesTheRightThing
21 - compareThis:(int)a withThat:(id)b; // expected-note {{previous definition is here}} \
22 // expected-note {{previous definition is here}}
26 @implementation TedWantsToVerifyObjCDoesTheRightThing
28 - compareThis:(id<PBXCompletionItem>)
29 a // expected-warning {{conflicting parameter types in implementation of 'compareThis:withThat:': 'int' vs 'id<PBXCompletionItem>'}}
30 withThat:(id<PBXCompletionItem>)b { // expected-warning {{conflicting parameter types in implementation of 'compareThis:withThat:': 'id' vs 'id<PBXCompletionItem>'}}