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