blob: 5d5904ca4157d4b26bf4c5407e5448285b3c6376 [file] [log] [blame]
Francisco Lopes da Silvac6ccc4f2015-01-22 21:14:08 +00001// Note: the run lines follow their respective tests, since line/column
2// matter in this test.
3
4template<class T> void (&foo(T))(T);
5template<class T> void (*bar(T))(T);
6
7int main() {
8 foo(42)(42);
9 bar(42)(42);
10}
11
12// RUN: c-index-test -code-completion-at=%s:8:11 %s | FileCheck -check-prefix=CHECK-CC1 %s
13// CHECK-CC1: OverloadCandidate:{Text void}{LeftParen (}{CurrentParameter int}{RightParen )} (1)
14// CHECK-CC1: Completion contexts:
15// CHECK-CC1-NEXT: Any type
16// CHECK-CC1-NEXT: Any value
17// CHECK-CC1-NEXT: Enum tag
18// CHECK-CC1-NEXT: Union tag
19// CHECK-CC1-NEXT: Struct tag
20// CHECK-CC1-NEXT: Class name
21// CHECK-CC1-NEXT: Nested name specifier
22// CHECK-CC1-NEXT: Objective-C interface
23
24// RUN: c-index-test -code-completion-at=%s:9:11 %s | FileCheck -check-prefix=CHECK-CC2 %s
25// CHECK-CC2: OverloadCandidate:{Text void}{LeftParen (}{CurrentParameter int}{RightParen )} (1)
26// CHECK-CC2: Completion contexts:
27// CHECK-CC2-NEXT: Any type
28// CHECK-CC2-NEXT: Any value
29// CHECK-CC2-NEXT: Enum tag
30// CHECK-CC2-NEXT: Union tag
31// CHECK-CC2-NEXT: Struct tag
32// CHECK-CC2-NEXT: Class name
33// CHECK-CC2-NEXT: Nested name specifier
34// CHECK-CC2-NEXT: Objective-C interface