summaryrefslogtreecommitdiffstats
path: root/clang/test/Tooling/auto-detect-from-source.cpp
diff options
context:
space:
mode:
authorSam McCall <sam.mccall@gmail.com>2018-09-14 12:24:09 +0000
committerSam McCall <sam.mccall@gmail.com>2018-09-14 12:24:09 +0000
commit9d3530bd4ebaa7dc02494db440026f87f2bb8bc4 (patch)
tree20f4c360c26fe3d07dfb5da30bac7f54764ac3fb /clang/test/Tooling/auto-detect-from-source.cpp
parent2fcdf76eef8705d5813e1529bf97ca62805aeb39 (diff)
downloadbcm5719-llvm-9d3530bd4ebaa7dc02494db440026f87f2bb8bc4.tar.gz
bcm5719-llvm-9d3530bd4ebaa7dc02494db440026f87f2bb8bc4.zip
[Tooling] JSONCompilationDatabasePlugin infers compile commands for missing files
Summary: See the existing InterpolatingCompilationDatabase for details on how this works. We've been using this in clangd for a while, the heuristics seem to work well. Reviewers: bkramer Subscribers: ilya-biryukov, ioeric, kadircet, cfe-commits Differential Revision: https://reviews.llvm.org/D51729 llvm-svn: 342228
Diffstat (limited to 'clang/test/Tooling/auto-detect-from-source.cpp')
-rw-r--r--clang/test/Tooling/auto-detect-from-source.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/clang/test/Tooling/auto-detect-from-source.cpp b/clang/test/Tooling/auto-detect-from-source.cpp
index 12a660d585a..e6241a9ec3e 100644
--- a/clang/test/Tooling/auto-detect-from-source.cpp
+++ b/clang/test/Tooling/auto-detect-from-source.cpp
@@ -1,8 +1,12 @@
// RUN: rm -rf %t
// RUN: mkdir %t
-// RUN: echo "[{\"directory\":\".\",\"command\":\"clang++ -c %/t/test.cpp\",\"file\":\"%/t/test.cpp\"}]" | sed -e 's/\\/\\\\/g' > %t/compile_commands.json
+// RUN: echo "[{\"directory\":\".\",\"command\":\"clang++ -DSECRET=XYZZY -c %/t/test.cpp\",\"file\":\"%/t/test.cpp\"}]" | sed -e 's/\\/\\\\/g' > %t/compile_commands.json
// RUN: cp "%s" "%t/test.cpp"
// RUN: not clang-check "%t/test.cpp" 2>&1 | FileCheck %s
-// CHECK: C++ requires
-invalid;
+// CHECK: XYZZY
+SECRET;
+
+// Copy to a different file, and rely on the command being inferred.
+// RUN: cp "%s" "%t/other.cpp"
+// RUN: not clang-check "%t/other.cpp" 2>&1 | FileCheck %s
OpenPOWER on IntegriCloud