1// RUN: %clang_cc1 -x objective-c++ -Wno-return-type -fblocks -fms-extensions -rewrite-objc -fobjc-runtime=macosx-fragile-10.5 %s -o %t-rw.cpp
2// RUN: %clang_cc1 -fsyntax-only -std=gnu++98 -fblocks -Wno-address-of-temporary -Did="void*" -D"SEL=void*" -D"__declspec(X)=" %t-rw.cpp
3// rdar:// 8570020
4
5@interface Foo {
6	Foo *foo;
7}
8
9@property (retain, nonatomic) Foo *foo;
10
11@end
12
13@implementation Foo
14
15- (Foo *)foo {
16    if (!foo) {
17        foo = 0;
18    }
19    return foo;
20}
21
22
23- (void) setFoo : (Foo *) arg {
24  foo = arg;
25}
26
27@synthesize foo;
28
29@end
30
31