property-derived-to-base-conv.mm
416 Bytes
// 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;
}