1// Note: the run lines follow their respective tests, since line/column
2// matter in this test.
3
4@interface Foo  {
5  void *isa;
6}
7@property(copy) Foo *myprop;
8@property(retain, nonatomic) id xx;
9
10// RUN: c-index-test -code-completion-at=%s:7:11 %s -fobjc-runtime=macosx-10.4 -fno-objc-arc | FileCheck -check-prefix=CHECK-CC1 -check-prefix=CHECK-CC1-NOWEAK %s
11// RUN: c-index-test -code-completion-at=%s:7:11 %s -fobjc-runtime=macosx-10.8 -Xclang -fobjc-weak -fno-objc-arc | FileCheck -check-prefix=CHECK-CC1 -check-prefix=CHECK-CC1-WEAK  %s
12// CHECK-CC1: {TypedText assign}
13// CHECK-CC1-NEXT: {TypedText atomic}
14// CHECK-CC1-NEXT: {TypedText copy}
15// CHECK-CC1-NEXT: {TypedText getter}{Text =}{Placeholder method}
16// CHECK-CC1-NEXT: {TypedText nonatomic}
17// CHECK-CC1: {TypedText nonnull}
18// CHECK-CC1-NEXT: {TypedText null_resettable}
19// CHECK-CC1-NEXT: {TypedText null_unspecified}
20// CHECK-CC1-NEXT: {TypedText nullable}
21// CHECK-CC1-NEXT: {TypedText readonly}
22// CHECK-CC1-NEXT: {TypedText readwrite}
23// CHECK-CC1-NEXT: {TypedText retain}
24// CHECK-CC1-NEXT: {TypedText setter}{Text =}{Placeholder method}
25// CHECK-CC1-NEXT: {TypedText strong}
26// CHECK-CC1-NEXT: {TypedText unsafe_unretained}
27// CHECK-CC1-NOWEAK-NOT: {TypedText weak}
28// CHECK-CC1-WEAK-NEXT: {TypedText weak}
29
30// RUN: c-index-test -code-completion-at=%s:7:11 %s -fobjc-arc -fobjc-runtime=macosx-10.7 | FileCheck -check-prefix=CHECK-CC1-ARC %s
31// CHECK-CC1-ARC: {TypedText assign}
32// CHECK-CC1-ARC-NEXT: {TypedText atomic}
33// CHECK-CC1-ARC-NEXT: {TypedText copy}
34// CHECK-CC1-ARC-NEXT: {TypedText getter}{Text =}{Placeholder method}
35// CHECK-CC1-ARC-NEXT: {TypedText nonatomic}
36// CHECK-CC1-ARC-NEXT: {TypedText nonnull}
37// CHECK-CC1-ARC-NEXT: {TypedText null_resettable}
38// CHECK-CC1-ARC-NEXT: {TypedText null_unspecified}
39// CHECK-CC1-ARC-NEXT: {TypedText nullable}
40// CHECK-CC1-ARC-NEXT: {TypedText readonly}
41// CHECK-CC1-ARC-NEXT: {TypedText readwrite}
42// CHECK-CC1-ARC-NEXT: {TypedText retain}
43// CHECK-CC1-ARC-NEXT: {TypedText setter}{Text =}{Placeholder method}
44// CHECK-CC1-ARC-NEXT: {TypedText strong}
45// CHECK-CC1-ARC-NEXT: {TypedText unsafe_unretained}
46// CHECK-CC1-ARC-NEXT: {TypedText weak}
47
48// RUN: c-index-test -code-completion-at=%s:8:18 %s | FileCheck -check-prefix=CHECK-CC2 %s
49// CHECK-CC2: {TypedText getter}{Text =}{Placeholder method}
50// CHECK-CC2-NEXT: {TypedText nonatomic}
51// CHECK-CC2-NEXT: {TypedText nonnull}
52// CHECK-CC2-NEXT: {TypedText null_resettable}
53// CHECK-CC2-NEXT: {TypedText null_unspecified}
54// CHECK-CC2-NEXT: {TypedText nullable}
55// CHECK-CC2-NEXT: {TypedText readonly}
56// CHECK-CC2-NEXT: {TypedText readwrite}
57// CHECK-CC2-NEXT: {TypedText setter}{Text =}{Placeholder method}
58@end
59