summaryrefslogtreecommitdiff
path: root/tools/diagtool/ListWarnings.cpp
diff options
context:
space:
mode:
authorJordan Rose <jordan_rose@apple.com>2012-06-24 00:07:45 +0000
committerJordan Rose <jordan_rose@apple.com>2012-06-24 00:07:45 +0000
commite7427636767501903cfa51ccecafa7a4795a23c2 (patch)
tree70b387e6f336a7e0bc03a6b2529edf2bfb64529d /tools/diagtool/ListWarnings.cpp
parent9ee494f98610dcd79441dce469d7bf609fcd7b92 (diff)
downloadclang-e7427636767501903cfa51ccecafa7a4795a23c2.tar.gz
clang-e7427636767501903cfa51ccecafa7a4795a23c2.tar.bz2
clang-e7427636767501903cfa51ccecafa7a4795a23c2.tar.xz
[diagtool] Add a new "tree" command to shows warnings activated by a flag.
% diagtool tree -Wunused-value -Wunused-value -Wunused-comparison warn_unused_comparison -Wunused-result warn_unused_result warn_unused_call warn_unused_container_subscript_expr warn_unused_expr warn_unused_property_expr warn_unused_voidptr git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159093 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/diagtool/ListWarnings.cpp')
-rw-r--r--tools/diagtool/ListWarnings.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/tools/diagtool/ListWarnings.cpp b/tools/diagtool/ListWarnings.cpp
index 6c59338eef..d59ffaa2a0 100644
--- a/tools/diagtool/ListWarnings.cpp
+++ b/tools/diagtool/ListWarnings.cpp
@@ -25,6 +25,7 @@ DEF_DIAGTOOL("list-warnings",
ListWarnings)
using namespace clang;
+using namespace diagtool;
namespace {
struct Entry {
@@ -52,9 +53,11 @@ int ListWarnings::run(unsigned int argc, char **argv, llvm::raw_ostream &out) {
std::vector<Entry> Flagged, Unflagged;
llvm::StringMap<std::vector<unsigned> > flagHistogram;
- for (const diagtool::DiagnosticRecord *di = diagtool::BuiltinDiagnostics,
- *de = di + diagtool::BuiltinDiagnosticsCount; di != de; ++di) {
-
+ ArrayRef<DiagnosticRecord> AllDiagnostics = getBuiltinDiagnosticsByName();
+
+ for (ArrayRef<DiagnosticRecord>::iterator di = AllDiagnostics.begin(),
+ de = AllDiagnostics.end();
+ di != de; ++di) {
unsigned diagID = di->DiagID;
if (DiagnosticIDs::isBuiltinNote(diagID))
@@ -74,9 +77,6 @@ int ListWarnings::run(unsigned int argc, char **argv, llvm::raw_ostream &out) {
}
}
- std::sort(Flagged.begin(), Flagged.end());
- std::sort(Unflagged.begin(), Unflagged.end());
-
out << "Warnings with flags (" << Flagged.size() << "):\n";
printEntries(Flagged, out);