blob: d7c743c6906839dcc42a1de6fd22cfd7b8608f4c [file] [log] [blame]
Fariborz Jahanian353b33b2010-06-17 23:00:29 +00001// RUN: %clang_cc1 -fobjc-gc -triple x86_64-apple-darwin10 -emit-llvm -o - %s
2// rdar: // 7501812
3
John McCall09431682010-11-18 19:01:18 +00004struct A {
5 int member;
6 void foo();
7 A *operator->();
8};
Fariborz Jahanian353b33b2010-06-17 23:00:29 +00009struct B : A { };
10
11@interface BInt {
12@private
13 B *b;
14}
15- (B)value;
16- (void)setValue : (B) arg;
17@property B value;
18@end
19
20void g(BInt *bint) {
John McCall09431682010-11-18 19:01:18 +000021 bint.value.foo();
22 bint.value->member = 17;
23 int x = bint.value.member;
Fariborz Jahanian353b33b2010-06-17 23:00:29 +000024}
25