eliminate the ostream version of CheckBitcodeOutputToConsole,
change the raw_ostream one to take the raw_ostream byref instead
of byptr.  Prune #includes, eliminate a use of Streams.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79863 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/llvm/Support/SystemUtils.h b/include/llvm/Support/SystemUtils.h
index 69afd07..b3d83fc 100644
--- a/include/llvm/Support/SystemUtils.h
+++ b/include/llvm/Support/SystemUtils.h
@@ -15,19 +15,11 @@
 #ifndef LLVM_SUPPORT_SYSTEMUTILS_H
 #define LLVM_SUPPORT_SYSTEMUTILS_H
 
-#include "llvm/System/Program.h"
+#include <string>
 
 namespace llvm {
-
-/// Determine if the ostream provided is connected to the std::cout and
-/// displayed or not (to a console window). If so, generate a warning message
-/// advising against display of bitcode and return true. Otherwise just return
-/// false
-/// @brief Check for output written to a console
-bool CheckBitcodeOutputToConsole(
-  std::ostream* stream_to_check, ///< The stream to be checked
-  bool print_warning = true ///< Control whether warnings are printed
-);
+  class raw_ostream;
+  namespace sys { class Path; }
 
 /// Determine if the raw_ostream provided is connected to the outs() and
 /// displayed or not (to a console window). If so, generate a warning message
@@ -35,8 +27,8 @@
 /// false
 /// @brief Check for output written to a console
 bool CheckBitcodeOutputToConsole(
-  raw_ostream* stream_to_check, ///< The stream to be checked
-  bool print_warning = true ///< Control whether warnings are printed
+  raw_ostream &stream_to_check, ///< The stream to be checked
+  bool print_warning = true     ///< Control whether warnings are printed
 );
 
 /// FindExecutable - Find a named executable, giving the argv[0] of program
diff --git a/lib/Support/SystemUtils.cpp b/lib/Support/SystemUtils.cpp
index 09c0b19..7756e03 100644
--- a/lib/Support/SystemUtils.cpp
+++ b/lib/Support/SystemUtils.cpp
@@ -12,37 +12,20 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "llvm/Support/Streams.h"
 #include "llvm/Support/SystemUtils.h"
 #include "llvm/System/Process.h"
 #include "llvm/System/Program.h"
-#include <ostream>
 using namespace llvm;
 
-bool llvm::CheckBitcodeOutputToConsole(raw_ostream* stream_to_check,
+bool llvm::CheckBitcodeOutputToConsole(raw_ostream &stream_to_check,
                                        bool print_warning) {
-  if (stream_to_check == &outs() &&
+  if (&stream_to_check == &outs() &&
       sys::Process::StandardOutIsDisplayed()) {
     if (print_warning) {
-      cerr << "WARNING: You're attempting to print out a bitcode file.\n"
-           << "This is inadvisable as it may cause display problems. If\n"
-           << "you REALLY want to taste LLVM bitcode first-hand, you\n"
-           << "can force output with the `-f' option.\n\n";
-    }
-    return true;
-  }
-  return false;
-}
-
-bool llvm::CheckBitcodeOutputToConsole(std::ostream* stream_to_check,
-                                       bool print_warning) {
-  if (stream_to_check == cout.stream() &&
-      sys::Process::StandardOutIsDisplayed()) {
-    if (print_warning) {
-      cerr << "WARNING: You're attempting to print out a bitcode file.\n"
-           << "This is inadvisable as it may cause display problems. If\n"
-           << "you REALLY want to taste LLVM bitcode first-hand, you\n"
-           << "can force output with the `-f' option.\n\n";
+      errs() << "WARNING: You're attempting to print out a bitcode file.\n"
+             << "This is inadvisable as it may cause display problems. If\n"
+             << "you REALLY want to taste LLVM bitcode first-hand, you\n"
+             << "can force output with the `-f' option.\n\n";
     }
     return true;
   }
diff --git a/tools/bugpoint/ToolRunner.h b/tools/bugpoint/ToolRunner.h
index 3e3d7d5..39b0bbf 100644
--- a/tools/bugpoint/ToolRunner.h
+++ b/tools/bugpoint/ToolRunner.h
@@ -20,6 +20,7 @@
 #include "llvm/ADT/Triple.h"
 #include "llvm/Support/CommandLine.h"
 #include "llvm/Support/SystemUtils.h"
+#include "llvm/System/Path.h"
 #include <exception>
 #include <vector>
 
diff --git a/tools/llvm-as/llvm-as.cpp b/tools/llvm-as/llvm-as.cpp
index 06b3ad2..487e904 100644
--- a/tools/llvm-as/llvm-as.cpp
+++ b/tools/llvm-as/llvm-as.cpp
@@ -114,7 +114,7 @@
     sys::RemoveFileOnSignal(sys::Path(OutputFilename));
 
   if (!DisableOutput)
-    if (Force || !CheckBitcodeOutputToConsole(Out.get(), true))
+    if (Force || !CheckBitcodeOutputToConsole(*Out, true))
       WriteBitcodeToFile(M.get(), *Out);
   return 0;
 }
diff --git a/tools/lto/LTOCodeGenerator.cpp b/tools/lto/LTOCodeGenerator.cpp
index f47eb49..e868ee3 100644
--- a/tools/lto/LTOCodeGenerator.cpp
+++ b/tools/lto/LTOCodeGenerator.cpp
@@ -36,6 +36,7 @@
 #include "llvm/Support/StandardPasses.h"
 #include "llvm/Support/SystemUtils.h"
 #include "llvm/System/Host.h"
+#include "llvm/System/Program.h"
 #include "llvm/System/Signals.h"
 #include "llvm/Target/SubtargetFeature.h"
 #include "llvm/Target/TargetOptions.h"
diff --git a/tools/opt/opt.cpp b/tools/opt/opt.cpp
index ffe53d5..64c5e92 100644
--- a/tools/opt/opt.cpp
+++ b/tools/opt/opt.cpp
@@ -395,9 +395,8 @@
     // If the output is set to be emitted to standard out, and standard out is a
     // console, print out a warning message and refuse to do it.  We don't
     // impress anyone by spewing tons of binary goo to a terminal.
-    if (!Force && !NoOutput && CheckBitcodeOutputToConsole(Out,!Quiet)) {
+    if (!Force && !NoOutput && CheckBitcodeOutputToConsole(*Out, !Quiet))
       NoOutput = true;
-    }
 
     // Create a PassManager to hold and optimize the collection of passes we are
     // about to build...