aboutsummaryrefslogtreecommitdiff
path: root/test/CodeCompletion/call.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2009-09-22 21:11:38 +0000
committerDouglas Gregor <dgregor@apple.com>2009-09-22 21:11:38 +0000
commitb657f115c3b4e262e72906a28cbcf3eaccd9460c (patch)
tree95502c386d41a13dd1c04b189247446b9fb8d18e /test/CodeCompletion/call.cpp
parentadd28829c7a8d3c5da9ae140f18d3c9ad2d8b599 (diff)
Replace the -code-completion-dump option with
-code-completion-at=filename:line:column which performs code completion at the specified location by truncating the file at that position and enabling code completion. This approach makes it possible to run multiple tests from a single test file, and gives a more natural command-line interface. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82571 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeCompletion/call.cpp')
-rw-r--r--test/CodeCompletion/call.cpp17
1 files changed, 12 insertions, 5 deletions
diff --git a/test/CodeCompletion/call.cpp b/test/CodeCompletion/call.cpp
index 4faff15c05..dd90083874 100644
--- a/test/CodeCompletion/call.cpp
+++ b/test/CodeCompletion/call.cpp
@@ -1,5 +1,5 @@
-// RUN: clang-cc -fsyntax-only -code-completion-dump=1 %s -o - | FileCheck -check-prefix=CC1 %s &&
-// RUN: true
+// Note: the run lines follow their respective tests, since line/column
+// matter in this test.
void f(float x, float y);
void f(int i, int j, int k);
struct X { };
@@ -10,13 +10,20 @@ namespace N {
operator int() const;
};
- void f(Y y);
+ void f(Y y, int);
}
typedef N::Y Y;
void f();
void test() {
- // CHECK-CC1: f : 0 : f(<#struct N::Y y#>)
+ f(Y(), 0, 0);
+ // RUN: clang-cc -fsyntax-only -code-completion-at=%s:19:9 %s -o - | FileCheck -check-prefix=CC1 %s &&
+ // CHECK-CC1: f : 0 : f(<#struct N::Y y#>, <#int#>)
// CHECK-NEXT-CC1: f : 0 : f(<#int i#>, <#int j#>, <#int k#>)
// CHECK-NEXT-CC1: f : 0 : f(<#float x#>, <#float y#>)
- f(Y(),
+ // RUN: clang-cc -fsyntax-only -code-completion-at=%s:19:13 %s -o - | FileCheck -check-prefix=CC2 %s &&
+ // CHECK-NOT-CC2: f : 0 : f(<#struct N::Y y#>, <#int#>)
+ // CHECK-CC2: f : 0 : f(<#int i#>, <#int j#>, <#int k#>)
+ // CHECK-NEXT-CC2: f : 0 : f(<#float x#>, <#float y#>)
+ // RUN: true
+}