diff options
author | Douglas Gregor <dgregor@apple.com> | 2009-09-22 21:11:38 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2009-09-22 21:11:38 +0000 |
commit | b657f115c3b4e262e72906a28cbcf3eaccd9460c (patch) | |
tree | 95502c386d41a13dd1c04b189247446b9fb8d18e /test/CodeCompletion/call.cpp | |
parent | add28829c7a8d3c5da9ae140f18d3c9ad2d8b599 (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.cpp | 17 |
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 +} |