r311237 - [clang-diff] Make printing of matches optional
Johannes Altmanninger via cfe-commits
cfe-commits at lists.llvm.org
Sat Aug 19 05:04:05 PDT 2017
Author: krobelus
Date: Sat Aug 19 05:04:04 2017
New Revision: 311237
URL: http://llvm.org/viewvc/llvm-project?rev=311237&view=rev
Log:
[clang-diff] Make printing of matches optional
Reviewers: arphaman
Subscribers: klimek
Differential Revision: https://reviews.llvm.org/D36181
Modified:
cfe/trunk/test/Tooling/clang-diff-args.test
cfe/trunk/test/Tooling/clang-diff-basic.cpp
cfe/trunk/tools/clang-diff/ClangDiff.cpp
Modified: cfe/trunk/test/Tooling/clang-diff-args.test
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Tooling/clang-diff-args.test?rev=311237&r1=311236&r2=311237&view=diff
==============================================================================
--- cfe/trunk/test/Tooling/clang-diff-args.test (original)
+++ cfe/trunk/test/Tooling/clang-diff-args.test Sat Aug 19 05:04:04 2017
@@ -6,3 +6,7 @@ check adding compiler cflags
RUN: clang-diff -ast-dump -extra-arg=-Da=X %t.cpp -- 2>&1 | FileCheck %s
RUN: clang-diff -ast-dump -extra-arg-before=-Da=X %t.cpp -- 2>&1 | FileCheck %s
RUN: clang-diff -ast-dump %t.cpp -- 2>&1 -Da=X | FileCheck %s
+
+NOMATCH-CHECK-NOT: {{.}}
+RUN: clang-diff %S/clang-diff-ast.cpp %S/clang-diff-ast.cpp -- 2>&1 -std=c++11 \
+RUN: | FileCheck -check-prefix=NOMATCH-CHECK -allow-empty %s
Modified: cfe/trunk/test/Tooling/clang-diff-basic.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Tooling/clang-diff-basic.cpp?rev=311237&r1=311236&r2=311237&view=diff
==============================================================================
--- cfe/trunk/test/Tooling/clang-diff-basic.cpp (original)
+++ cfe/trunk/test/Tooling/clang-diff-basic.cpp Sat Aug 19 05:04:04 2017
@@ -1,6 +1,6 @@
// RUN: %clang_cc1 -E %s > %t.src.cpp
// RUN: %clang_cc1 -E %s > %t.dst.cpp -DDEST
-// RUN: clang-diff %t.src.cpp %t.dst.cpp -- | FileCheck %s
+// RUN: clang-diff -dump-matches %t.src.cpp %t.dst.cpp -- | FileCheck %s
#ifndef DEST
namespace src {
Modified: cfe/trunk/tools/clang-diff/ClangDiff.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/clang-diff/ClangDiff.cpp?rev=311237&r1=311236&r2=311237&view=diff
==============================================================================
--- cfe/trunk/tools/clang-diff/ClangDiff.cpp (original)
+++ cfe/trunk/tools/clang-diff/ClangDiff.cpp Sat Aug 19 05:04:04 2017
@@ -33,6 +33,10 @@ static cl::opt<bool> ASTDumpJson(
cl::desc("Print the internal representation of the AST as JSON."),
cl::init(false), cl::cat(ClangDiffCategory));
+static cl::opt<bool>
+ PrintMatches("dump-matches", cl::desc("Print the matched nodes."),
+ cl::init(false), cl::cat(ClangDiffCategory));
+
static cl::opt<std::string> SourcePath(cl::Positional, cl::desc("<source>"),
cl::Required,
cl::cat(ClangDiffCategory));
@@ -267,7 +271,7 @@ int main(int argc, const char **argv) {
for (diff::NodeId Dst : DstTree) {
diff::NodeId Src = Diff.getMapped(DstTree, Dst);
- if (Src.isValid()) {
+ if (PrintMatches && Src.isValid()) {
llvm::outs() << "Match ";
printNode(llvm::outs(), SrcTree, Src);
llvm::outs() << " to ";
More information about the cfe-commits
mailing list