Better handing of stdin/stdout for -emit-llvm-bc
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45345 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Driver/ASTConsumers.cpp b/Driver/ASTConsumers.cpp
index b6bd516..df9d2e4 100644
--- a/Driver/ASTConsumers.cpp
+++ b/Driver/ASTConsumers.cpp
@@ -644,14 +644,14 @@
std::string FileName = OutputFile;
std::ostream *Out;
- if (!OutputFile.size()) {
+ if (OutputFile == "-" || InFile == "-")
+ Out = llvm::cout.stream();
+ else if (!OutputFile.size()) {
llvm::sys::Path Path(InFile);
Path.eraseSuffix();
Path.appendSuffix("bc");
FileName = Path.toString();
Out = new std::ofstream(FileName.c_str());
- } else if (OutputFile == "-") {
- Out = llvm::cout.stream();
} else {
Out = new std::ofstream(FileName.c_str());
}