summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorSylvestre Ledru <sylvestre@debian.org>2017-08-12 15:15:10 +0000
committerSylvestre Ledru <sylvestre@debian.org>2017-08-12 15:15:10 +0000
commitd23dd6c633b1865cfabd548099814f6943e1760e (patch)
tree4e33a34055c87d6e5a78db21e3ba03f78c0446bd /clang
parent3655495b49acc681cb0b7aa79f5533daf5c91368 (diff)
downloadbcm5719-llvm-d23dd6c633b1865cfabd548099814f6943e1760e.tar.gz
bcm5719-llvm-d23dd6c633b1865cfabd548099814f6943e1760e.zip
clang-format: add an option -verbose to list the files being processed
Reviewers: djasper Reviewed By: djasper Subscribers: klimek, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D34824 llvm-svn: 310778
Diffstat (limited to 'clang')
-rw-r--r--clang/docs/ClangFormat.rst1
-rw-r--r--clang/docs/ReleaseNotes.rst3
-rw-r--r--clang/test/Format/verbose.cpp16
-rw-r--r--clang/tools/clang-format/ClangFormat.cpp32
4 files changed, 36 insertions, 16 deletions
diff --git a/clang/docs/ClangFormat.rst b/clang/docs/ClangFormat.rst
index 902afcd08ed..b4030eac6f1 100644
--- a/clang/docs/ClangFormat.rst
+++ b/clang/docs/ClangFormat.rst
@@ -71,6 +71,7 @@ to format C/C++/Obj-C code.
Use -style="{key: value, ...}" to set specific
parameters, e.g.:
-style="{BasedOnStyle: llvm, IndentWidth: 8}"
+ -verbose - If set, shows the list of processed files
Generic Options:
diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
index 64c1cf492ff..be038234df7 100644
--- a/clang/docs/ReleaseNotes.rst
+++ b/clang/docs/ReleaseNotes.rst
@@ -187,6 +187,9 @@ clang-format
...
+* Option -verbose added to the command line.
+ Shows the list of processed files.
+
libclang
--------
diff --git a/clang/test/Format/verbose.cpp b/clang/test/Format/verbose.cpp
new file mode 100644
index 00000000000..dd625e3f67e
--- /dev/null
+++ b/clang/test/Format/verbose.cpp
@@ -0,0 +1,16 @@
+// RUN: clang-format %s 2> %t.stderr
+// RUN: not grep "Formatting" %t.stderr
+// RUN: clang-format %s -verbose 2> %t.stderr
+// RUN: grep -E "Formatting (.*)verbose.cpp(.*)" %t.stderr
+// RUN: clang-format %s -verbose=false 2> %t.stderr
+// RUN: not grep "Formatting" %t.stderr
+
+int a;
+// RUN: clang-format %s 2> %t.stderr
+// RUN: not grep "Formatting" %t.stderr
+// RUN: clang-format %s -verbose 2> %t.stderr
+// RUN: grep -E "Formatting (.*)verbose.cpp(.*)" %t.stderr
+// RUN: clang-format %s -verbose=false 2> %t.stderr
+// RUN: not grep "Formatting" %t.stderr
+
+int a;
diff --git a/clang/tools/clang-format/ClangFormat.cpp b/clang/tools/clang-format/ClangFormat.cpp
index f8e2fe186b9..37c2d8b78f6 100644
--- a/clang/tools/clang-format/ClangFormat.cpp
+++ b/clang/tools/clang-format/ClangFormat.cpp
@@ -102,6 +102,10 @@ static cl::opt<bool> SortIncludes(
"SortIncludes style flag"),
cl::cat(ClangFormatCategory));
+static cl::opt<bool>
+ Verbose("verbose", cl::desc("If set, shows the list of processed files"),
+ cl::cat(ClangFormatCategory));
+
static cl::list<std::string> FileNames(cl::Positional, cl::desc("[<file> ...]"),
cl::cat(ClangFormatCategory));
@@ -365,23 +369,19 @@ int main(int argc, const char **argv) {
}
bool Error = false;
- switch (FileNames.size()) {
- case 0:
+ if (FileNames.empty()) {
Error = clang::format::format("-");
- break;
- case 1:
- Error = clang::format::format(FileNames[0]);
- break;
- default:
- if (!Offsets.empty() || !Lengths.empty() || !LineRanges.empty()) {
- errs() << "error: -offset, -length and -lines can only be used for "
- "single file.\n";
- return 1;
- }
- for (unsigned i = 0; i < FileNames.size(); ++i)
- Error |= clang::format::format(FileNames[i]);
- break;
+ return Error ? 1 : 0;
+ }
+ if (FileNames.size() != 1 && (!Offsets.empty() || !Lengths.empty() || !LineRanges.empty())) {
+ errs() << "error: -offset, -length and -lines can only be used for "
+ "single file.\n";
+ return 1;
+ }
+ for (const auto &FileName : FileNames) {
+ if (Verbose)
+ errs() << "Formatting " << FileName << "\n";
+ Error |= clang::format::format(FileName);
}
return Error ? 1 : 0;
}
-
OpenPOWER on IntegriCloud