1 // RUN: %clang_cc1 -fsyntax-only -verify %s
4 When processing @synthesize, treat ivars in a class extension the same as ivars in the class @interface,
5 and treat ivars in a superclass extension the same as ivars in the superclass @interface.
6 In particular, when searching for an ivar to back an @synthesize, do look at ivars in the class's own class
7 extension but ignore any ivars in superclass class extensions.
16 int Property; // expected-note {{previously declared 'Property' here}}
20 @interface SomeClass : Super {
24 @property int Property;
25 @property int Property1;
28 @interface SomeClass () {
33 @implementation SomeClass
34 @synthesize Property; // expected-error {{property 'Property' attempting to use instance variable 'Property' declared in super class 'Super'}}
35 @synthesize Property1; // OK