From fbf9258582eaa39ed92a3acdfaae232dbb1f8ff5 Mon Sep 17 00:00:00 2001 From: Alexander Kornienko Date: Mon, 2 Jun 2014 20:32:06 +0000 Subject: Exit with error when no checks enabled. Summary: This seems like a more appropriate reaction to the user specifying a single check with a wrong name, for example. Reviewers: klimek Reviewed By: klimek Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D3981 llvm-svn: 210043 --- clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp') diff --git a/clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp b/clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp index 41b66d66a64..f338805fcfd 100644 --- a/clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp +++ b/clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp @@ -119,15 +119,23 @@ int main(int argc, const char **argv) { return 1; } + std::vector EnabledChecks = clang::tidy::getCheckNames(Options); + // FIXME: Allow using --list-checks without positional arguments. if (ListChecks) { llvm::outs() << "Enabled checks:"; - for (auto CheckName : clang::tidy::getCheckNames(Options)) + for (auto CheckName : EnabledChecks) llvm::outs() << "\n " << CheckName; llvm::outs() << "\n\n"; return 0; } + if (EnabledChecks.empty()) { + llvm::errs() << "Error: no checks enabled.\n"; + llvm::cl::PrintHelpMessage(/*Hidden=*/false, /*Categorized=*/true); + return 1; + } + std::vector Errors; clang::tidy::ClangTidyStats Stats = clang::tidy::runClangTidy(Options, OptionsParser.getCompilations(), -- cgit v1.2.3