blob: 5784f2be9cecc9588460eeded8d8ea958279656b [file] [log] [blame]
John McCall260611a2012-06-20 06:18:46 +00001// RUN: %clang_cc1 -fobjc-gc -triple x86_64-apple-darwin10 -fobjc-runtime=macosx-fragile-10.5 -emit-llvm -o - %s
Fariborz Jahanian353b33b2010-06-17 23:00:29 +00002// 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