Home | History | Annotate | Download | only in SemaObjC
      1 // RUN: %clang_cc1 -fsyntax-only -verify %s
      2 
      3 @protocol P
      4 - (void) doSomethingInProtocol: (float) x; // expected-note {{previous definition is here}}
      5 + (void) doSomethingClassyInProtocol: (float) x; // expected-note {{previous definition is here}}
      6 - (void) doNothingInProtocol : (float) x;
      7 + (void) doNothingClassyInProtocol : (float) x;
      8 @end
      9 
     10 @interface I <P>
     11 - (void) doSomething: (float) x; // expected-note {{previous definition is here}}
     12 + (void) doSomethingClassy: (int) x; // expected-note {{previous definition is here}}
     13 @end
     14 
     15 @interface Bar : I
     16 @end
     17 
     18 @implementation Bar
     19 - (void) doSomething: (int) x {} // expected-warning {{conflicting parameter types}}
     20 + (void) doSomethingClassy: (float) x{}  // expected-warning {{conflicting parameter types}}
     21 - (void) doSomethingInProtocol: (id) x {}  // expected-warning {{conflicting parameter types}}
     22 + (void) doSomethingClassyInProtocol: (id) x {}  // expected-warning {{conflicting parameter types}}
     23 @end
     24 
     25 
     26