Keep the source location of the selector in ObjCMessageExpr.
[clang.git] / test / SemaObjC / unimplemented-protocol-prop.m
blobd3de50efea583960e3dc6faf261b22868e9ecd50
1 // RUN: %clang_cc1  -fsyntax-only -verify %s
3 @protocol PROTOCOL0
4 @required
5 @property float MyProperty0; // expected-warning {{property 'MyProperty0' requires method 'MyProperty0' to be defined }} \
6                              // expected-warning {{property 'MyProperty0' requires method 'setMyProperty0:' to be defined}}
7 @end
9 @protocol PROTOCOL<PROTOCOL0>
10 @required
11 @property float MyProperty; // expected-warning {{property 'MyProperty' requires method 'MyProperty' to be defined}} \
12                         // expected-warning {{property 'MyProperty' requires method 'setMyProperty:' to be defined}}
13 @optional
14 @property float OptMyProperty;
15 @end
17 @interface I <PROTOCOL>
18 @end
20 @implementation I @end // expected-note 4 {{implementation is here}}