reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | // RUN: %clang_cc1 -fsyntax-only -verify %s @protocol P - (void) doSomethingInProtocol: (float) x; // expected-note {{previous definition is here}} + (void) doSomethingClassyInProtocol: (float) x; // expected-note {{previous definition is here}} - (void) doNothingInProtocol : (float) x; + (void) doNothingClassyInProtocol : (float) x; @end @interface I <P> - (void) doSomething: (float) x; // expected-note {{previous definition is here}} + (void) doSomethingClassy: (int) x; // expected-note {{previous definition is here}} @end @interface Bar : I @end @implementation Bar - (void) doSomething: (int) x {} // expected-warning {{conflicting parameter types}} + (void) doSomethingClassy: (float) x{} // expected-warning {{conflicting parameter types}} - (void) doSomethingInProtocol: (id) x {} // expected-warning {{conflicting parameter types}} + (void) doSomethingClassyInProtocol: (id) x {} // expected-warning {{conflicting parameter types}} @end |