Skip to content

Commit

Permalink
clang-format: add an option -verbose to list the files being processed
Browse files Browse the repository at this point in the history
Reviewers: djasper

Reviewed By: djasper

Subscribers: klimek, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D34824

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@310778 91177308-0d34-0410-b5e6-96231b3b80d8
  • Loading branch information
sylvestre committed Aug 12, 2017
1 parent 4e37891 commit 7602b13
Show file tree
Hide file tree
Showing 4 changed files with 36 additions and 16 deletions.
1 change: 1 addition & 0 deletions docs/ClangFormat.rst
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down
3 changes: 3 additions & 0 deletions docs/ReleaseNotes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,9 @@ clang-format

...

* Option -verbose added to the command line.
Shows the list of processed files.

libclang
--------

Expand Down
16 changes: 16 additions & 0 deletions test/Format/verbose.cpp
Original file line number Diff line number Diff line change
@@ -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;
32 changes: 16 additions & 16 deletions tools/clang-format/ClangFormat.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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));

Expand Down Expand Up @@ -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;
}

0 comments on commit 7602b13

Please sign in to comment.