Use standard llvm Debug.h support for debugging output.
Leave a quick "// Uncomment this." hint to enable the debug output in
tests. FIXME: figure out whether we want to enable debug command line
handling for all tests.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172608 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Format/UnwrappedLineParser.cpp b/lib/Format/UnwrappedLineParser.cpp
index d6c66dc..e8b334b 100644
--- a/lib/Format/UnwrappedLineParser.cpp
+++ b/lib/Format/UnwrappedLineParser.cpp
@@ -16,14 +16,15 @@
///
//===----------------------------------------------------------------------===//
-#include "UnwrappedLineParser.h"
-#include "clang/Basic/Diagnostic.h"
-#include "llvm/Support/raw_ostream.h"
+#define DEBUG_TYPE "format-parser"
-// Uncomment to get debug output from the UnwrappedLineParser.
-// Use in combination with --gtest_filter=*TestName* to limit the output to a
-// single test.
-// #define UNWRAPPED_LINE_PARSER_DEBUG_OUTPUT
+#include "clang/Basic/Diagnostic.h"
+#include "llvm/Support/Debug.h"
+#include "llvm/Support/raw_ostream.h"
+#include "UnwrappedLineParser.h"
+
+// Uncomment to get debug output from tests:
+// #define DEBUG_WITH_TYPE(T, X) do { X; } while(0)
namespace clang {
namespace format {
@@ -109,9 +110,7 @@
}
bool UnwrappedLineParser::parse() {
-#ifdef UNWRAPPED_LINE_PARSER_DEBUG_OUTPUT
- llvm::errs() << "----\n";
-#endif
+ DEBUG(llvm::dbgs() << "----\n");
readToken();
return parseFile();
}
@@ -658,16 +657,16 @@
FormatTok.Tok.is(tok::comment)) {
nextToken();
}
-#ifdef UNWRAPPED_LINE_PARSER_DEBUG_OUTPUT
- llvm::errs() << "Line: ";
- for (std::list<FormatToken>::iterator I = Line->Tokens.begin(),
- E = Line->Tokens.end();
- I != E; ++I) {
- llvm::errs() << I->Tok.getName() << " ";
+ DEBUG({
+ llvm::dbgs() << "Line: ";
+ for (std::list<FormatToken>::iterator I = Line->Tokens.begin(),
+ E = Line->Tokens.end();
+ I != E; ++I) {
+ llvm::dbgs() << I->Tok.getName() << " ";
- }
- llvm::errs() << "\n";
-#endif
+ }
+ llvm::dbgs() << "\n";
+ });
Callback.consumeUnwrappedLine(*Line);
Line->Tokens.clear();
}