xref: /minix3/external/bsd/llvm/dist/clang/test/Index/complete-method-decls.m (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1f4a2713aSLionel Sambuc/* Note: the RUN lines are near the end of the file, since line/column
2f4a2713aSLionel Sambuc   matter for this test. */
3f4a2713aSLionel Sambuc#define IBAction void
4f4a2713aSLionel Sambuc@protocol P1
5f4a2713aSLionel Sambuc- (id)abc;
6f4a2713aSLionel Sambuc- (id)initWithInt:(int)x;
7f4a2713aSLionel Sambuc- (id)initWithTwoInts:(inout int)x second:(int)y;
8f4a2713aSLionel Sambuc- (int)getInt;
9f4a2713aSLionel Sambuc- (id)getSelf;
10f4a2713aSLionel Sambuc@end
11f4a2713aSLionel Sambuc@protocol P1;
12f4a2713aSLionel Sambuc@protocol P2<P1>
13f4a2713aSLionel Sambuc+ (id)alloc;
14f4a2713aSLionel Sambuc@end
15f4a2713aSLionel Sambuc
16f4a2713aSLionel Sambuc@interface A <P1>
17f4a2713aSLionel Sambuc- (id)init;
18f4a2713aSLionel Sambuc- (int)getValue;
19f4a2713aSLionel Sambuc@end
20f4a2713aSLionel Sambuc
21f4a2713aSLionel Sambuc@interface B : A<P2>
22f4a2713aSLionel Sambuc- (id)initWithInt:(int)x;
23f4a2713aSLionel Sambuc- (int)getSecondValue;
24f4a2713aSLionel Sambuc- (id)getSelf;
25f4a2713aSLionel Sambuc- (int)setValue:(int)x;
26f4a2713aSLionel Sambuc@end
27f4a2713aSLionel Sambuc
28f4a2713aSLionel Sambuc@interface B (FooBar)
29f4a2713aSLionel Sambuc- (id)categoryFunction:(int)x;
30f4a2713aSLionel Sambuc@end
31f4a2713aSLionel Sambuc
32f4a2713aSLionel Sambuc@implementation B
33f4a2713aSLionel Sambuc- (int)getSecondValue { return 0; }
34f4a2713aSLionel Sambuc- (id)init { return self; }
35f4a2713aSLionel Sambuc- (id)getSelf { return self; }
36f4a2713aSLionel Sambuc- (void)setValue:(int)x { }
37f4a2713aSLionel Sambuc- (id)initWithTwoInts:(int)x second:(int)y { return self; }
38f4a2713aSLionel Sambuc+ (id)alloc { return 0; }
39f4a2713aSLionel Sambuc@end
40f4a2713aSLionel Sambuc
41f4a2713aSLionel Sambuc@implementation B (FooBar)
42f4a2713aSLionel Sambuc- (id)categoryFunction:(int)x { return self; }
43f4a2713aSLionel Sambuc@end
44f4a2713aSLionel Sambuc
45f4a2713aSLionel Sambuc@interface C
46f4a2713aSLionel Sambuc- (int)first:(int)x second:(float)y third:(double)z;
47f4a2713aSLionel Sambuc- (id)first:(int)xx second2:(float)y2 third:(double)z;
48f4a2713aSLionel Sambuc- (void*)first:(int)xxx second3:(float)y3 third:(double)z;
49f4a2713aSLionel Sambuc@end
50f4a2713aSLionel Sambuc
51f4a2713aSLionel Sambuc@interface D
52f4a2713aSLionel Sambuc- (int)first:(int)x second2:(float)y third:(double)z;
53f4a2713aSLionel Sambuc@end
54f4a2713aSLionel Sambuc
55f4a2713aSLionel Sambuc@implementation D
56f4a2713aSLionel Sambuc- (int)first:(int)x second2:(float)y third:(double)z { }
57f4a2713aSLionel Sambuc@end
58f4a2713aSLionel Sambuc
59f4a2713aSLionel Sambuc@interface Passing
60f4a2713aSLionel Sambuc- (oneway void)method:(in id)x;
61f4a2713aSLionel Sambuc@end
62f4a2713aSLionel Sambuc
63f4a2713aSLionel Sambuc@interface Gaps
64f4a2713aSLionel Sambuc- (void)method:(int)x :(int)y;
65f4a2713aSLionel Sambuc@end
66f4a2713aSLionel Sambuc
67f4a2713aSLionel Sambuc@implementation Gaps
68f4a2713aSLionel Sambuc- (void)method:(int)x :(int)y {}
69f4a2713aSLionel Sambuc@end
70f4a2713aSLionel Sambuc
71f4a2713aSLionel Sambuc@implementation Passing
72f4a2713aSLionel Sambuc- (oneway void)method:(in id x) {}
73f4a2713aSLionel Sambuc@end
74f4a2713aSLionel Sambuc
75*0a6a1f1dSLionel Sambuctypedef A MyObject;
76*0a6a1f1dSLionel Sambuctypedef A *MyObjectRef;
77*0a6a1f1dSLionel Sambuc
78*0a6a1f1dSLionel Sambuc@interface I1
79*0a6a1f1dSLionel Sambuc-(Class<P1>)meth;
80*0a6a1f1dSLionel Sambuc-(MyObject <P1> *)meth2;
81*0a6a1f1dSLionel Sambuc-(MyObjectRef)meth3;
82*0a6a1f1dSLionel Sambuc@end
83*0a6a1f1dSLionel Sambuc
84*0a6a1f1dSLionel Sambuc@implementation I1
85*0a6a1f1dSLionel Sambuc-
86*0a6a1f1dSLionel Sambuc@end
87*0a6a1f1dSLionel Sambuc
88f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:17:3 %s | FileCheck -check-prefix=CHECK-CC1 %s
89f4a2713aSLionel Sambuc// CHECK-CC1: ObjCInstanceMethodDecl:{LeftParen (}{Text id}{RightParen )}{TypedText abc} (40)
90f4a2713aSLionel Sambuc// CHECK-CC1: ObjCInstanceMethodDecl:{LeftParen (}{Text int}{RightParen )}{TypedText getInt} (40)
91f4a2713aSLionel Sambuc// CHECK-CC1: ObjCInstanceMethodDecl:{LeftParen (}{Text id}{RightParen )}{TypedText getSelf} (40)
92f4a2713aSLionel Sambuc// CHECK-CC1: ObjCInstanceMethodDecl:{LeftParen (}{Text id}{RightParen )}{TypedText initWithInt}{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text x} (40)
93f4a2713aSLionel Sambuc// CHECK-CC1: ObjCInstanceMethodDecl:{LeftParen (}{Text id}{RightParen )}{TypedText initWithTwoInts}{TypedText :}{LeftParen (}{Text inout }{Text int}{RightParen )}{Text x}{HorizontalSpace  }{TypedText second:}{LeftParen (}{Text int}{RightParen )}{Text y} (40)
94f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:17:7 %s | FileCheck -check-prefix=CHECK-CC2 %s
95f4a2713aSLionel Sambuc// CHECK-CC2: ObjCInstanceMethodDecl:{TypedText abc}
96f4a2713aSLionel Sambuc// CHECK-CC2-NEXT: ObjCInstanceMethodDecl:{TypedText getSelf}
97f4a2713aSLionel Sambuc// CHECK-CC2: ObjCInstanceMethodDecl:{TypedText initWithInt}{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text x}
98f4a2713aSLionel Sambuc// CHECK-CC2: ObjCInstanceMethodDecl:{TypedText initWithTwoInts}{TypedText :}{LeftParen (}{Text inout }{Text int}{RightParen )}{Text x}{HorizontalSpace  }{TypedText second:}{LeftParen (}{Text int}{RightParen )}{Text y}
99f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:24:7 %s | FileCheck -check-prefix=CHECK-CC3 %s
100f4a2713aSLionel Sambuc// CHECK-CC3: ObjCInstanceMethodDecl:{TypedText abc}
101f4a2713aSLionel Sambuc// CHECK-CC3-NEXT: ObjCInstanceMethodDecl:{TypedText getSelf}
102f4a2713aSLionel Sambuc// CHECK-CC3: ObjCInstanceMethodDecl:{TypedText init}
103f4a2713aSLionel Sambuc// CHECK-CC3: ObjCInstanceMethodDecl:{TypedText initWithInt}{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text x}
104f4a2713aSLionel Sambuc// CHECK-CC3: ObjCInstanceMethodDecl:{TypedText initWithTwoInts}{TypedText :}{LeftParen (}{Text inout }{Text int}{RightParen )}{Text x}{HorizontalSpace  }{TypedText second:}{LeftParen (}{Text int}{RightParen )}{Text y}
105f4a2713aSLionel Sambuc// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:33:3 %s | FileCheck -check-prefix=CHECK-CC4 %s
106f4a2713aSLionel Sambuc// CHECK-CC4: ObjCInstanceMethodDecl:{LeftParen (}{Text id}{RightParen )}{TypedText abc}{HorizontalSpace  }{LeftBrace {}{VerticalSpace  }{Text return}{HorizontalSpace  }{Placeholder expression}{SemiColon ;}{VerticalSpace  }{RightBrace }} (42)
107f4a2713aSLionel Sambuc// CHECK-CC4: ObjCInstanceMethodDecl:{LeftParen (}{Text int}{RightParen )}{TypedText getInt}{HorizontalSpace  }{LeftBrace {}{VerticalSpace
108f4a2713aSLionel Sambuc// CHECK-CC4: ObjCInstanceMethodDecl:{LeftParen (}{Text int}{RightParen )}{TypedText getSecondValue}{HorizontalSpace  }{LeftBrace {}{VerticalSpace
109f4a2713aSLionel Sambuc// CHECK-CC4: ObjCInstanceMethodDecl:{LeftParen (}{Text id}{RightParen )}{TypedText getSelf}{HorizontalSpace  }{LeftBrace {}{VerticalSpace  }{Text return}{HorizontalSpace  }{Placeholder expression}{SemiColon ;}{VerticalSpace  }{RightBrace }} (40)
110f4a2713aSLionel Sambuc// CHECK-CC4: ObjCInstanceMethodDecl:{LeftParen (}{Text id}{RightParen )}{TypedText initWithInt}{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text x}{HorizontalSpace  }{LeftBrace {}{VerticalSpace
111f4a2713aSLionel Sambuc// CHECK-CC4: ObjCInstanceMethodDecl:{LeftParen (}{Text id}{RightParen )}{TypedText initWithTwoInts}{TypedText :}{LeftParen (}{Text inout }{Text int}{RightParen )}{Text x}{HorizontalSpace  }{TypedText second:}{LeftParen (}{Text int}{RightParen )}{Text y}{HorizontalSpace  }{LeftBrace {}{VerticalSpace
112f4a2713aSLionel Sambuc// CHECK-CC4: ObjCInstanceMethodDecl:{LeftParen (}{Text int}{RightParen )}{TypedText setValue}{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text x}{HorizontalSpace  }{LeftBrace {}{VerticalSpace
113f4a2713aSLionel Sambuc// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:33:8 %s | FileCheck -check-prefix=CHECK-CC5 %s
114f4a2713aSLionel Sambuc// CHECK-CC5: ObjCInstanceMethodDecl:{TypedText getInt}{HorizontalSpace  }{LeftBrace {}{VerticalSpace  }{Text return}{HorizontalSpace  }{Placeholder expression}{SemiColon ;}{VerticalSpace  }{RightBrace }} (42)
115f4a2713aSLionel Sambuc// CHECK-CC5: ObjCInstanceMethodDecl:{TypedText getSecondValue}{HorizontalSpace  }{LeftBrace {}{VerticalSpace  }{Text return}{HorizontalSpace  }{Placeholder expression}{SemiColon ;}{VerticalSpace  }{RightBrace }} (40)
116f4a2713aSLionel Sambuc// CHECK-CC5-NOT: {TypedText getSelf}{HorizontalSpace  }{LeftBrace {}{VerticalSpace
117f4a2713aSLionel Sambuc// CHECK-CC5: ObjCInstanceMethodDecl:{TypedText setValue}{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text x}{HorizontalSpace  }{LeftBrace {}{VerticalSpace
118f4a2713aSLionel Sambuc// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:37:7 %s | FileCheck -check-prefix=CHECK-CC6 %s
119f4a2713aSLionel Sambuc// CHECK-CC6: ObjCInstanceMethodDecl:{TypedText abc}{HorizontalSpace  }{LeftBrace {}{VerticalSpace
120f4a2713aSLionel Sambuc// CHECK-CC6: ObjCInstanceMethodDecl:{TypedText getSelf}{HorizontalSpace  }{LeftBrace {}{VerticalSpace  }{Text return}{HorizontalSpace  }{Placeholder expression}{SemiColon ;}{VerticalSpace  }{RightBrace }} (40)
121f4a2713aSLionel Sambuc// CHECK-CC6: ObjCInstanceMethodDecl:{TypedText initWithInt}{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text x}{HorizontalSpace  }{LeftBrace {}{VerticalSpace
122f4a2713aSLionel Sambuc// CHECK-CC6: ObjCInstanceMethodDecl:{TypedText initWithTwoInts}{TypedText :}{LeftParen (}{Text inout }{Text int}{RightParen )}{Text x}{HorizontalSpace  }{TypedText second:}{LeftParen (}{Text int}{RightParen )}{Text y}{HorizontalSpace  }{LeftBrace {}{VerticalSpace
123f4a2713aSLionel Sambuc// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:42:3 %s | FileCheck -check-prefix=CHECK-CC7 %s
124f4a2713aSLionel Sambuc// CHECK-CC7: ObjCInstanceMethodDecl:{LeftParen (}{Text id}{RightParen )}{TypedText abc}{HorizontalSpace  }{LeftBrace {}{VerticalSpace  }{Text return}{HorizontalSpace  }{Placeholder expression}{SemiColon ;}{VerticalSpace  }{RightBrace }} (42)
125f4a2713aSLionel Sambuc// CHECK-CC7: ObjCInstanceMethodDecl:{LeftParen (}{Text id}{RightParen )}{TypedText categoryFunction}{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text x}{HorizontalSpace  }{LeftBrace {}{VerticalSpace
126f4a2713aSLionel Sambuc// CHECK-CC7: ObjCInstanceMethodDecl:{LeftParen (}{Text id}{RightParen )}{TypedText getSelf}{HorizontalSpace  }{LeftBrace {}{VerticalSpace  }{Text return}{HorizontalSpace  }{Placeholder expression}{SemiColon ;}{VerticalSpace  }{RightBrace }} (42)
127f4a2713aSLionel Sambuc// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:52:21 %s | FileCheck -check-prefix=CHECK-CC8 %s
128f4a2713aSLionel Sambuc// CHECK-CC8: ObjCInstanceMethodDecl:{ResultType id}{Informative first:}{TypedText second2:}{Text (float)y2}{HorizontalSpace  }{TypedText third:}{Text (double)z} (35)
129f4a2713aSLionel Sambuc// CHECK-CC8: ObjCInstanceMethodDecl:{ResultType void *}{Informative first:}{TypedText second3:}{Text (float)y3}{HorizontalSpace  }{TypedText third:}{Text (double)z} (35)
130f4a2713aSLionel Sambuc// CHECK-CC8: ObjCInstanceMethodDecl:{ResultType int}{Informative first:}{TypedText second:}{Text (float)y}{HorizontalSpace  }{TypedText third:}{Text (double)z} (8)
131f4a2713aSLionel Sambuc// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:52:19 %s | FileCheck -check-prefix=CHECK-CC9 %s
132f4a2713aSLionel Sambuc// CHECK-CC9: NotImplemented:{TypedText x} (40)
133f4a2713aSLionel Sambuc// CHECK-CC9: NotImplemented:{TypedText xx} (40)
134f4a2713aSLionel Sambuc// CHECK-CC9: NotImplemented:{TypedText xxx} (40)
135f4a2713aSLionel Sambuc// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:52:36 %s | FileCheck -check-prefix=CHECK-CCA %s
136f4a2713aSLionel Sambuc// CHECK-CCA: NotImplemented:{TypedText y2} (40)
137f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:56:3 %s | FileCheck -check-prefix=CHECK-CCB %s
138f4a2713aSLionel Sambuc// CHECK-CCB: ObjCInstanceMethodDecl:{LeftParen (}{Text int}{RightParen )}{TypedText first}{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text x}{HorizontalSpace  }{TypedText second2:}{LeftParen (}{Text float}{RightParen )}{Text y}{HorizontalSpace  }{TypedText third:}{LeftParen (}{Text double}{RightParen )}{Text z} (40)
139f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:56:8 %s | FileCheck -check-prefix=CHECK-CCC %s
140f4a2713aSLionel Sambuc// CHECK-CCC: ObjCInstanceMethodDecl:{TypedText first}{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text x}{HorizontalSpace  }{TypedText second2:}{LeftParen (}{Text float}{RightParen )}{Text y}{HorizontalSpace  }{TypedText third:}{LeftParen (}{Text double}{RightParen )}{Text z} (40)
141f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:56:21 %s | FileCheck -check-prefix=CHECK-CCD %s
142f4a2713aSLionel Sambuc// CHECK-CCD: ObjCInstanceMethodDecl:{ResultType id}{Informative first:}{TypedText second2:}{Text (float)y2}{HorizontalSpace  }{TypedText third:}{Text (double)z} (35)
143f4a2713aSLionel Sambuc// CHECK-CCD: ObjCInstanceMethodDecl:{ResultType int}{Informative first:}{TypedText second2:}{Text (float)y}{HorizontalSpace  }{TypedText third:}{Text (double)z} (8)
144f4a2713aSLionel Sambuc// CHECK-CCD: ObjCInstanceMethodDecl:{ResultType void *}{Informative first:}{TypedText second3:}{Text (float)y3}{HorizontalSpace  }{TypedText third:}{Text (double)z} (35)
145f4a2713aSLionel Sambuc// CHECK-CCD: ObjCInstanceMethodDecl:{ResultType int}{Informative first:}{TypedText second:}{Text (float)y}{HorizontalSpace  }{TypedText third:}{Text (double)z} (8)
146f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:56:38 %s | FileCheck -check-prefix=CHECK-CCE %s
147f4a2713aSLionel Sambuc// CHECK-CCE: ObjCInstanceMethodDecl:{ResultType id}{Informative first:}{Informative second2:}{TypedText third:}{Text (double)z} (35)
148f4a2713aSLionel Sambuc// CHECK-CCE: ObjCInstanceMethodDecl:{ResultType int}{Informative first:}{Informative second2:}{TypedText third:}{Text (double)z} (8)
149f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:60:4 %s | FileCheck -check-prefix=CHECK-CCF %s
150f4a2713aSLionel Sambuc// CHECK-CCF: ObjCInterfaceDecl:{TypedText A} (50)
151f4a2713aSLionel Sambuc// CHECK-CCF: ObjCInterfaceDecl:{TypedText B} (50)
152f4a2713aSLionel Sambuc// CHECK-CCF: NotImplemented:{TypedText bycopy} (40)
153f4a2713aSLionel Sambuc// CHECK-CCF: NotImplemented:{TypedText byref} (40)
154f4a2713aSLionel Sambuc// CHECK-CCF: NotImplemented:{TypedText in} (40)
155f4a2713aSLionel Sambuc// CHECK-CCF: NotImplemented:{TypedText inout} (40)
156f4a2713aSLionel Sambuc// CHECK-CCF: NotImplemented:{TypedText oneway} (40)
157f4a2713aSLionel Sambuc// CHECK-CCF: NotImplemented:{TypedText out} (40)
158f4a2713aSLionel Sambuc// CHECK-CCF: NotImplemented:{TypedText unsigned} (50)
159f4a2713aSLionel Sambuc// CHECK-CCF: NotImplemented:{TypedText void} (50)
160f4a2713aSLionel Sambuc// CHECK-CCF: NotImplemented:{TypedText volatile} (50)
161f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:60:11 %s | FileCheck -check-prefix=CHECK-CCG %s
162f4a2713aSLionel Sambuc// CHECK-CCG: ObjCInterfaceDecl:{TypedText A} (50)
163f4a2713aSLionel Sambuc// CHECK-CCG: ObjCInterfaceDecl:{TypedText B} (50)
164f4a2713aSLionel Sambuc// CHECK-CCG-NOT: NotImplemented:{TypedText bycopy} (40)
165f4a2713aSLionel Sambuc// CHECK-CCG-NOT: NotImplemented:{TypedText byref} (40)
166f4a2713aSLionel Sambuc// CHECK-CCG: NotImplemented:{TypedText in} (40)
167f4a2713aSLionel Sambuc// CHECK-CCG: NotImplemented:{TypedText inout} (40)
168f4a2713aSLionel Sambuc// CHECK-CCG-NOT: NotImplemented:{TypedText oneway} (40)
169f4a2713aSLionel Sambuc// CHECK-CCG: NotImplemented:{TypedText out} (40)
170f4a2713aSLionel Sambuc// CHECK-CCG: NotImplemented:{TypedText unsigned} (50)
171f4a2713aSLionel Sambuc// CHECK-CCG: NotImplemented:{TypedText void} (50)
172f4a2713aSLionel Sambuc// CHECK-CCG: NotImplemented:{TypedText volatile} (50)
173f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:60:24 %s | FileCheck -check-prefix=CHECK-CCF %s
174f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:60:26 %s | FileCheck -check-prefix=CHECK-CCH %s
175f4a2713aSLionel Sambuc// CHECK-CCH: ObjCInterfaceDecl:{TypedText A} (50)
176f4a2713aSLionel Sambuc// CHECK-CCH: ObjCInterfaceDecl:{TypedText B} (50)
177f4a2713aSLionel Sambuc// CHECK-CCH: NotImplemented:{TypedText bycopy} (40)
178f4a2713aSLionel Sambuc// CHECK-CCH: NotImplemented:{TypedText byref} (40)
179f4a2713aSLionel Sambuc// CHECK-CCH-NOT: NotImplemented:{TypedText in} (40)
180f4a2713aSLionel Sambuc// CHECK-CCH: NotImplemented:{TypedText inout} (40)
181f4a2713aSLionel Sambuc// CHECK-CCH: NotImplemented:{TypedText oneway} (40)
182f4a2713aSLionel Sambuc// CHECK-CCH: NotImplemented:{TypedText out} (40)
183f4a2713aSLionel Sambuc// CHECK-CCH: NotImplemented:{TypedText unsigned} (50)
184f4a2713aSLionel Sambuc// CHECK-CCH: NotImplemented:{TypedText void} (50)
185f4a2713aSLionel Sambuc// CHECK-CCH: NotImplemented:{TypedText volatile} (50)
186f4a2713aSLionel Sambuc
187f4a2713aSLionel Sambuc// IBAction completion
188f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:5:4 %s | FileCheck -check-prefix=CHECK-IBACTION %s
189f4a2713aSLionel Sambuc// CHECK-IBACTION: NotImplemented:{TypedText IBAction}{RightParen )}{Placeholder selector}{Colon :}{LeftParen (}{Text id}{RightParen )}{Text sender} (40)
190f4a2713aSLionel Sambuc
191f4a2713aSLionel Sambuc// <rdar://problem/8939352>
192f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:68:9 %s | FileCheck -check-prefix=CHECK-8939352 %s
193f4a2713aSLionel Sambuc// CHECK-8939352: ObjCInstanceMethodDecl:{TypedText method}{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text x}{HorizontalSpace  }{TypedText :}{LeftParen (}{Text int}{RightParen )}{Text y} (40)
194f4a2713aSLionel Sambuc
195f4a2713aSLionel Sambuc
196f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:72:2 %s | FileCheck -check-prefix=CHECK-ONEWAY %s
197f4a2713aSLionel Sambuc// CHECK-ONEWAY: ObjCInstanceMethodDecl:{LeftParen (}{Text oneway }{Text void}{RightParen )}{TypedText method}{TypedText :}{LeftParen (}{Text in }{Text id}{RightParen )}{Text x} (40)
198*0a6a1f1dSLionel Sambuc
199*0a6a1f1dSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:85:2 %s | FileCheck -check-prefix=CHECK-CLASSTY %s
200*0a6a1f1dSLionel Sambuc// CHECK-CLASSTY: ObjCInstanceMethodDecl:{LeftParen (}{Text Class<P1>}{RightParen )}{TypedText meth}
201*0a6a1f1dSLionel Sambuc// FIXME: It should be "MyObject <P1> *""
202*0a6a1f1dSLionel Sambuc// CHECK-CLASSTY: ObjCInstanceMethodDecl:{LeftParen (}{Text A<P1> *}{RightParen )}{TypedText meth2}
203*0a6a1f1dSLionel Sambuc// CHECK-CLASSTY: ObjCInstanceMethodDecl:{LeftParen (}{Text MyObjectRef}{RightParen )}{TypedText meth3}
204