summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2006-11-17 09:52:49 +0000
committerBill Wendling <isanbard@gmail.com>2006-11-17 09:52:49 +0000
commit52883e7a9a637c0d6dea091917090a8ac63e7736 (patch)
treed013a0dd10422e717047ce4fbd7b20e00c890569
parente562ed1c92d2d0845632c0f7d9f294fa7c4103ba (diff)
downloadllvm-52883e7a9a637c0d6dea091917090a8ac63e7736.tar.gz
llvm-52883e7a9a637c0d6dea091917090a8ac63e7736.tar.bz2
llvm-52883e7a9a637c0d6dea091917090a8ac63e7736.tar.xz
Used llvm_ostream instead of std::ostream objects. This will reduce use
of the icky <iostream> class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31818 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/Support/Casting.h6
-rw-r--r--include/llvm/Support/Debug.h20
-rw-r--r--include/llvm/Support/GraphWriter.h14
-rw-r--r--include/llvm/Support/PassNameParser.h4
4 files changed, 13 insertions, 31 deletions
diff --git a/include/llvm/Support/Casting.h b/include/llvm/Support/Casting.h
index 6630fa955d..fff44f6e64 100644
--- a/include/llvm/Support/Casting.h
+++ b/include/llvm/Support/Casting.h
@@ -235,7 +235,7 @@ inline typename cast_retty<X, Y>::ret_type dyn_cast_or_null(Y Val) {
#ifdef DEBUG_CAST_OPERATORS
-#include <iostream>
+#include "llvm/Support/Debug.h"
struct bar {
bar() {}
@@ -245,13 +245,13 @@ private:
struct foo {
void ext() const;
/* static bool classof(const bar *X) {
- cerr << "Classof: " << X << "\n";
+ llvm_cerr << "Classof: " << X << "\n";
return true;
}*/
};
template <> inline bool isa_impl<foo,bar>(const bar &Val) {
- cerr << "Classof: " << &Val << "\n";
+ llvm_cerr << "Classof: " << &Val << "\n";
return true;
}
diff --git a/include/llvm/Support/Debug.h b/include/llvm/Support/Debug.h
index cedb50dcd2..9f0f1611d7 100644
--- a/include/llvm/Support/Debug.h
+++ b/include/llvm/Support/Debug.h
@@ -26,7 +26,7 @@
#ifndef LLVM_SUPPORT_DEBUG_H
#define LLVM_SUPPORT_DEBUG_H
-#include <ostream> // Doesn't have static d'tors!!
+#include "llvm/Support/Streams.h"
namespace llvm {
@@ -61,24 +61,6 @@ bool isCurrentDebugType(const char *Type);
do { if (DebugFlag && isCurrentDebugType(DEBUG_TYPE)) { X; } } while (0)
#endif
-/// llvm_ostream - Acts like an ostream. However, it doesn't print things out if
-/// an ostream isn't specified.
-///
-class llvm_ostream {
- std::ostream* Stream;
-public:
- llvm_ostream() : Stream(0) {}
- llvm_ostream(std::ostream& OStream) : Stream(&OStream) {}
-
- template <typename Ty>
- llvm_ostream& operator << (const Ty& Thing) {
-#ifndef NDEBUG
- if (Stream) *Stream << Thing;
-#endif
- return *this;
- }
-};
-
/// 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.
diff --git a/include/llvm/Support/GraphWriter.h b/include/llvm/Support/GraphWriter.h
index b4e6d845e6..8602e74c14 100644
--- a/include/llvm/Support/GraphWriter.h
+++ b/include/llvm/Support/GraphWriter.h
@@ -23,12 +23,12 @@
#ifndef LLVM_SUPPORT_GRAPHWRITER_H
#define LLVM_SUPPORT_GRAPHWRITER_H
+#include "llvm/Support/Debug.h"
#include "llvm/Support/DOTGraphTraits.h"
#include "llvm/ADT/GraphTraits.h"
#include "llvm/System/Path.h"
-#include <vector>
-#include <iostream>
#include <fstream>
+#include <vector>
namespace llvm {
@@ -247,16 +247,16 @@ sys::Path WriteGraph(const GraphType &G,
std::string ErrMsg;
sys::Path Filename = sys::Path::GetTemporaryDirectory(&ErrMsg);
if (Filename.isEmpty()) {
- std::cerr << "Error: " << ErrMsg << "\n";
+ llvm_cerr << "Error: " << ErrMsg << "\n";
return Filename;
}
Filename.appendComponent(Name + ".dot");
if (Filename.makeUnique(true,&ErrMsg)) {
- std::cerr << "Error: " << ErrMsg << "\n";
+ llvm_cerr << "Error: " << ErrMsg << "\n";
return sys::Path();
}
- std::cerr << "Writing '" << Filename << "'... ";
+ llvm_cerr << "Writing '" << Filename << "'... ";
std::ofstream O(Filename.c_str());
@@ -275,12 +275,12 @@ sys::Path WriteGraph(const GraphType &G,
// Output the end of the graph
W.writeFooter();
- std::cerr << " done. \n";
+ llvm_cerr << " done. \n";
O.close();
} else {
- std::cerr << "error opening file for writing!\n";
+ llvm_cerr << "error opening file for writing!\n";
Filename.clear();
}
diff --git a/include/llvm/Support/PassNameParser.h b/include/llvm/Support/PassNameParser.h
index 5fa67d362c..c3d4901700 100644
--- a/include/llvm/Support/PassNameParser.h
+++ b/include/llvm/Support/PassNameParser.h
@@ -24,9 +24,9 @@
#define LLVM_SUPPORT_PASS_NAME_PARSER_H
#include "llvm/Support/CommandLine.h"
+#include "llvm/Support/Debug.h"
#include "llvm/Pass.h"
#include <algorithm>
-#include <iostream>
namespace llvm {
@@ -66,7 +66,7 @@ public:
virtual void passRegistered(const PassInfo *P) {
if (ignorablePass(P) || !Opt) return;
if (findOption(P->getPassArgument()) != getNumOptions()) {
- std::cerr << "Two passes with the same argument (-"
+ llvm_cerr << "Two passes with the same argument (-"
<< P->getPassArgument() << ") attempted to be registered!\n";
abort();
}