35 lines
		
	
	
		
			626 B
		
	
	
	
		
			Objective-C
		
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			626 B
		
	
	
	
		
			Objective-C
		
	
	
	
| // RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s
 | |
| 
 | |
| typedef struct NSSize {
 | |
|      		int width;
 | |
| 		struct {
 | |
| 		  int dim;
 | |
| 		} inner;
 | |
| } NSSize;
 | |
| 
 | |
| @interface Foo  {
 | |
|         NSSize _size;
 | |
| }
 | |
| @property NSSize size;
 | |
| @end
 | |
| 
 | |
| void foo() { 
 | |
|         Foo *f;
 | |
|         f.size.width = 2.2; // expected-error {{expression is not assignable}}
 | |
| 	f.size.inner.dim = 200; // expected-error {{expression is not assignable}}
 | |
| }
 | |
| 
 | |
| // radar 7628953
 | |
| 
 | |
| @interface Gorf  {
 | |
| }
 | |
| - (NSSize)size;
 | |
| @end
 | |
| 
 | |
| @implementation Gorf
 | |
| - (void)MyView_sharedInit {
 | |
|     self.size.width = 2.2; // expected-error {{expression is not assignable}}
 | |
| }
 | |
| - (NSSize)size {}
 | |
| @end
 |