[PATCH] D54311: Add a test checking clang-tidy can find libc++ on Mac
Ilya Biryukov via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Nov 12 02:00:53 PST 2018
ilya-biryukov updated this revision to Diff 173635.
ilya-biryukov marked an inline comment as done.
ilya-biryukov added a comment.
- Check for a diagnostic inside the found library
Repository:
rCTE Clang Tools Extra
https://reviews.llvm.org/D54311
Files:
test/clang-tidy/Inputs/mock-libcxx/include/c++/v1/mock_vector
test/clang-tidy/clang-tidy-mac-libcxx.cpp
Index: test/clang-tidy/clang-tidy-mac-libcxx.cpp
===================================================================
--- /dev/null
+++ test/clang-tidy/clang-tidy-mac-libcxx.cpp
@@ -0,0 +1,17 @@
+// Clang on MacOS can find libc++ living beside the installed compiler.
+// This test makes sure clang-tidy emulates this properly.
+//
+// RUN: rm -rf %t
+// RUN: mkdir %t
+//
+// Install the mock libc++ (simulates the libc++ directory structure).
+// RUN: cp -r %S/Inputs/mock-libcxx %t/
+//
+// Pretend clang is installed beside the mock library that we provided.
+// RUN: echo '[{"directory":"%t","command":"%t/mock-libcxx/bin/clang++ -stdlib=libc++ -target x86_64-apple-darwin -c test.cpp","file":"test.cpp"}]' | sed -e 's/\\/\//g' > %t/compile_commands.json
+// RUN: cp "%s" "%t/test.cpp"
+// RUN: not clang-tidy "%t/test.cpp" | FileCheck %s
+// CHECK: error: static_assert failed "mock libcxx found"
+
+#include <mock_vector>
+vector v;
Index: test/clang-tidy/Inputs/mock-libcxx/include/c++/v1/mock_vector
===================================================================
--- /dev/null
+++ test/clang-tidy/Inputs/mock-libcxx/include/c++/v1/mock_vector
@@ -0,0 +1,3 @@
+class vector {
+ static_assert(false, "mock libcxx found");
+};
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D54311.173635.patch
Type: text/x-patch
Size: 1238 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20181112/6d32798c/attachment.bin>
More information about the cfe-commits
mailing list