diff options
| author | Jordan Rose <jordan_rose@apple.com> | 2012-06-01 21:23:17 +0000 |
|---|---|---|
| committer | Jordan Rose <jordan_rose@apple.com> | 2012-06-01 21:23:17 +0000 |
| commit | d617e06997d2be193a5f580a4401c55e63b47f9f (patch) | |
| tree | e84fd95bd93721bd5cd07172bc3d0e26491714ef /clang/tools/diagtool/ListWarnings.cpp | |
| parent | 8b4fcec988af431649008f71b2dd7f2ed9e86d6b (diff) | |
| download | bcm5719-llvm-d617e06997d2be193a5f580a4401c55e63b47f9f.tar.gz bcm5719-llvm-d617e06997d2be193a5f580a4401c55e63b47f9f.zip | |
[diagtool] Add 'show-enabled', which displays which warnings are enabled.
show-enabled uses the command line you give it to build a CompilerInstance,
so any flags you pass will be processed as if running clang proper.
llvm-svn: 157842
Diffstat (limited to 'clang/tools/diagtool/ListWarnings.cpp')
| -rw-r--r-- | clang/tools/diagtool/ListWarnings.cpp | 27 |
1 files changed, 3 insertions, 24 deletions
diff --git a/clang/tools/diagtool/ListWarnings.cpp b/clang/tools/diagtool/ListWarnings.cpp index 2bbeca80249..6c59338eef1 100644 --- a/clang/tools/diagtool/ListWarnings.cpp +++ b/clang/tools/diagtool/ListWarnings.cpp @@ -13,6 +13,7 @@ //===----------------------------------------------------------------------===// #include "DiagTool.h" +#include "DiagnosticNames.h" #include "clang/Basic/Diagnostic.h" #include "llvm/Support/Format.h" #include "llvm/ADT/StringMap.h" @@ -26,28 +27,6 @@ DEF_DIAGTOOL("list-warnings", using namespace clang; namespace { -struct StaticDiagNameIndexRec { - const char *NameStr; - unsigned short DiagID; - uint8_t NameLen; - - StringRef getName() const { - return StringRef(NameStr, NameLen); - } -}; -} - -static const StaticDiagNameIndexRec StaticDiagNameIndex[] = { -#define DIAG_NAME_INDEX(ENUM) { #ENUM, diag::ENUM, STR_SIZE(#ENUM, uint8_t) }, -#include "clang/Basic/DiagnosticIndexName.inc" -#undef DIAG_NAME_INDEX - { 0, 0, 0 } -}; - -static const unsigned StaticDiagNameIndexSize = - sizeof(StaticDiagNameIndex)/sizeof(StaticDiagNameIndex[0])-1; - -namespace { struct Entry { llvm::StringRef DiagName; llvm::StringRef Flag; @@ -73,8 +52,8 @@ 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 StaticDiagNameIndexRec *di = StaticDiagNameIndex, *de = StaticDiagNameIndex + StaticDiagNameIndexSize; - di != de; ++di) { + for (const diagtool::DiagnosticRecord *di = diagtool::BuiltinDiagnostics, + *de = di + diagtool::BuiltinDiagnosticsCount; di != de; ++di) { unsigned diagID = di->DiagID; |

