1*f4a2713aSLionel Sambuc// Note: the run lines follow their respective tests, since line/column 2*f4a2713aSLionel Sambuc// matter in this test. 3*f4a2713aSLionel Sambuc 4*f4a2713aSLionel Sambuc@interface C 5*f4a2713aSLionel Sambuc- (int)instanceMethod3:(int)x; 6*f4a2713aSLionel Sambuc+ (int)classMethod3:(float)f; 7*f4a2713aSLionel Sambuc@end 8*f4a2713aSLionel Sambuc 9*f4a2713aSLionel Sambucvoid msg_id(id x) { 10*f4a2713aSLionel Sambuc [id classMethod1:1.0]; 11*f4a2713aSLionel Sambuc [x instanceMethod1:5]; 12*f4a2713aSLionel Sambuc} 13*f4a2713aSLionel Sambuc 14*f4a2713aSLionel Sambuc// REQUIRES: native 15*f4a2713aSLionel Sambuc 16*f4a2713aSLionel Sambuc// Build the precompiled header 17*f4a2713aSLionel Sambuc// RUN: %clang -x objective-c-header -o %t.h.pch %S/Inputs/complete-pch.h 18*f4a2713aSLionel Sambuc 19*f4a2713aSLionel Sambuc// Run the actual tests 20*f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:10:7 -include %t.h %s | FileCheck -check-prefix=CHECK-CC1 %s 21*f4a2713aSLionel Sambuc// CHECK-CC1: ObjCClassMethodDecl:{ResultType int}{TypedText classMethod1:}{Placeholder (double)} 22*f4a2713aSLionel Sambuc// CHECK-CC1: ObjCClassMethodDecl:{ResultType int}{TypedText classMethod2:}{Placeholder (float)} 23*f4a2713aSLionel Sambuc// CHECK-CC1: ObjCClassMethodDecl:{ResultType int}{TypedText classMethod3:}{Placeholder (float)} 24*f4a2713aSLionel Sambuc 25*f4a2713aSLionel Sambuc// RUN: c-index-test -code-completion-at=%s:11:6 -include %t.h %s | FileCheck -check-prefix=CHECK-CC2 %s 26*f4a2713aSLionel Sambuc// CHECK-CC2: ObjCInstanceMethodDecl:{ResultType int}{TypedText instanceMethod1:}{Placeholder (int)} 27*f4a2713aSLionel Sambuc// CHECK-CC2: ObjCInstanceMethodDecl:{ResultType int}{TypedText instanceMethod2:}{Placeholder (int)} 28*f4a2713aSLionel Sambuc// CHECK-CC2: ObjCInstanceMethodDecl:{ResultType int}{TypedText instanceMethod3:}{Placeholder (int)} 29