26 lines
		
	
	
		
			416 B
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			416 B
		
	
	
	
		
			Plaintext
		
	
	
	
// RUN: %clang_cc1 -fobjc-gc -triple x86_64-apple-darwin10 -fobjc-runtime=macosx-fragile-10.5 -emit-llvm -o - %s
 | 
						|
// rdar: // 7501812
 | 
						|
 | 
						|
struct A {
 | 
						|
  int member;
 | 
						|
  void foo();
 | 
						|
  A *operator->();
 | 
						|
};
 | 
						|
struct B : A { };
 | 
						|
 | 
						|
@interface BInt {
 | 
						|
@private
 | 
						|
  B *b;
 | 
						|
}
 | 
						|
- (B)value;
 | 
						|
- (void)setValue : (B) arg;
 | 
						|
@property B value;
 | 
						|
@end
 | 
						|
 | 
						|
void g(BInt *bint) {
 | 
						|
  bint.value.foo();
 | 
						|
  bint.value->member = 17;
 | 
						|
  int x = bint.value.member;
 | 
						|
}
 | 
						|
 |