diff options
| -rw-r--r-- | llvm/include/llvm/Support/Debug.h | 8 | ||||
| -rw-r--r-- | llvm/lib/Support/Debug.cpp | 8 | 
2 files changed, 14 insertions, 2 deletions
diff --git a/llvm/include/llvm/Support/Debug.h b/llvm/include/llvm/Support/Debug.h index 0ebed202e4b..489a076dc39 100644 --- a/llvm/include/llvm/Support/Debug.h +++ b/llvm/include/llvm/Support/Debug.h @@ -61,6 +61,11 @@ bool isCurrentDebugType(const char *Type);    do { if (DebugFlag && isCurrentDebugType(DEBUG_TYPE)) { X; } } while (0)  #endif +/// getNullOutputStream - Return a null string that does not output +/// anything.  This hides the static variable from other modules. +/// +OStream &getNullOutputStream(); +  /// getErrorOutputStream - Returns the error output stream (std::cerr). This  /// places the std::c* I/O streams into one .cpp file and relieves the whole  /// program from having to have hundreds of static c'tor/d'tors for them. @@ -68,8 +73,7 @@ bool isCurrentDebugType(const char *Type);  OStream &getErrorOutputStream(const char *DebugType);  #ifdef NDEBUG -static llvm::OStream NullStream(0); -#define DOUT llvm::NullStream +#define DOUT llvm::getNullOutputStream()  #else  #define DOUT llvm::getErrorOutputStream(DEBUG_TYPE)  #endif diff --git a/llvm/lib/Support/Debug.cpp b/llvm/lib/Support/Debug.cpp index a09cddf9022..b6beddb369d 100644 --- a/llvm/lib/Support/Debug.cpp +++ b/llvm/lib/Support/Debug.cpp @@ -64,6 +64,14 @@ bool llvm::isCurrentDebugType(const char *DebugType) {  #endif  } +/// getNullOutputStream - Return a null string that does not output +/// anything.  This hides the static variable from other modules. +/// +OStream &llvm::getNullOutputStream() { +  static llvm::OStream NullStream(0); +  return NullStream; +} +  // getErrorOutputStream - Returns the error output stream (std::cerr). This  // places the std::c* I/O streams into one .cpp file and relieves the whole  // program from having to have hundreds of static c'tor/d'tors for them.  | 

