Remove attribution from file headers, per discussion on llvmdev.
[oota-llvm.git] / lib / Support / Debug.cpp
index f1713429497fd5635f2b83f0f9a78a4857d4860e..29eda26c6896b6d9ee90527b4b0d0a2e835351fb 100644 (file)
@@ -1,10 +1,10 @@
 //===-- Debug.cpp - An easy way to add debug output to your code ----------===//
-// 
+//
 //                     The LLVM Compiler Infrastructure
 //
-// This file was developed by the LLVM research group and is distributed under
-// the University of Illinois Open Source License. See LICENSE.TXT for details.
-// 
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
 //===----------------------------------------------------------------------===//
 //
 // This file implements a handle way of adding debugging information to your
@@ -23,8 +23,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "Support/Debug.h"
-#include "Support/CommandLine.h"
+#include "llvm/Support/CommandLine.h"
+#include "llvm/Support/Debug.h"
 using namespace llvm;
 
 bool llvm::DebugFlag;  // DebugFlag - Exported boolean set by the -debug option
@@ -63,3 +63,15 @@ bool llvm::isCurrentDebugType(const char *DebugType) {
   return false;
 #endif
 }
+
+// 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.
+// 
+OStream &llvm::getErrorOutputStream(const char *DebugType) {
+  static OStream cnoout(0);
+  if (DebugFlag && isCurrentDebugType(DebugType))
+    return cerr;
+  else
+    return cnoout;
+}