44 lines
		
	
	
		
			775 B
		
	
	
	
		
			Objective-C
		
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			775 B
		
	
	
	
		
			Objective-C
		
	
	
	
| // RUN: %clang_cc1  -fsyntax-only -verify -Wno-objc-root-class %s
 | |
| 
 | |
| // rdar:// 8565343
 | |
| @interface Foo  {
 | |
| @private
 | |
|     int _foo;
 | |
|     int _foo2;
 | |
| }
 | |
| @property (readwrite, nonatomic) int foo, foo1, foo2, foo3;
 | |
| @property (readwrite, nonatomic) int PROP;
 | |
| @end
 | |
| 
 | |
| @implementation Foo
 | |
| 
 | |
| @synthesize foo = _foo;
 | |
| @synthesize foo1;
 | |
| 
 | |
| - (void)setFoo:(int)value {
 | |
|     _foo = foo; // expected-error {{use of undeclared identifier 'foo'}}
 | |
| }
 | |
| 
 | |
| - (void)setFoo1:(int)value {
 | |
|     _foo = foo1; // OK
 | |
| }
 | |
| 
 | |
| - (void)setFoo2:(int)value {
 | |
|     _foo = foo2; // expected-error {{use of undeclared identifier 'foo2'}}
 | |
| }
 | |
| 
 | |
| - (void)setFoo3:(int)value {
 | |
|     _foo = foo3;	// OK
 | |
| }
 | |
| 
 | |
| @synthesize foo2 = _foo2;
 | |
| @synthesize foo3;
 | |
| 
 | |
| @synthesize PROP=PROP;
 | |
| - (void)setPROP:(int)value {
 | |
|     PROP = value;        // OK
 | |
| }
 | |
| 
 | |
| @end
 | |
| 
 |