diff --git a/common/init_llvm.cpp b/common/init_llvm.cpp index 4d798bdde954..55baf0eec447 100644 --- a/common/init_llvm.cpp +++ b/common/init_llvm.cpp @@ -5,6 +5,7 @@ #include "common/init_llvm.h" #include "llvm/Support/TargetSelect.h" +#include "llvm/Support/raw_ostream.h" namespace Carbon { @@ -32,6 +33,10 @@ InitLLVM::InitLLVM(int& argc, char**& argv) if (InitializeTargets) { InitializeTargets(); } + + // Printing to stderr should flush stdout. This is most noticeable when stderr + // is piped to stdout. + llvm::errs().tie(&llvm::outs()); } InitLLVM::InitializeTargetsFn* InitLLVM::InitializeTargets = nullptr; diff --git a/toolchain/driver/driver_main.cpp b/toolchain/driver/driver_main.cpp index 042357568547..5aad5eeb9c06 100644 --- a/toolchain/driver/driver_main.cpp +++ b/toolchain/driver/driver_main.cpp @@ -23,10 +23,6 @@ auto main(int argc, char** argv) -> int { Carbon::SetWorkingDirForBazel(); - // Printing to stderr should flush stdout. This is most noticeable when stderr - // is piped to stdout. - llvm::errs().tie(&llvm::outs()); - llvm::SmallVector args(argv + 1, argv + argc); auto fs = llvm::vfs::getRealFileSystem();