Move errs tie to LLVM to include test infrastructure. (#4006)

The lack of flushing can sometimes be observed when streaming test
output, particularly with --dump_output. My thought is moving it into
our LLVM init is probably reasonable, given the driver's already doing
this for similar reasons; this means it's used in tests through our
gtest_main.cpp in addition to the driver.
This commit is contained in:
Jon Ross-Perkins
2024-05-30 21:08:44 +00:00
committed by GitHub
parent 28cefe98df
commit 16942e4d07
2 changed files with 5 additions and 4 deletions
+5
View File
@@ -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;