1 // RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class -disable-objc-default-synthesize-properties %s
5 @property float MyProperty0; // expected-note 2 {{property declared}}
8 @protocol PROTOCOL<PROTOCOL0>
10 @property float MyProperty; // expected-note 2 {{property declared}}
12 @property float OptMyProperty;
15 @interface I <PROTOCOL>
18 @implementation I @end // expected-warning {{property 'MyProperty0' requires method 'MyProperty0' to be defined}} \
19 // expected-warning {{property 'MyProperty0' requires method 'setMyProperty0:' to be defined}}\
20 // expected-warning {{property 'MyProperty' requires method 'MyProperty' to be defined}} \
21 // expected-warning {{property 'MyProperty' requires method 'setMyProperty:' to be defined}}
24 // property is implemented in super class. No warning
34 @interface childclass : superclass <PROTOCOL1>
37 @implementation childclass