From: Sam McCall Date: Wed, 10 Jun 2020 07:36:58 +0000 (+0200) Subject: [clangd] Disable new errs()-tie behavior, it's racy. X-Git-Tag: llvmorg-12-init~3488 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4e3a44d42eace1924c9cba3b7c1ea9cdbbd6cb48;p=platform%2Fupstream%2Fllvm.git [clangd] Disable new errs()-tie behavior, it's racy. Reviewers: hokein Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D81538 --- diff --git a/clang-tools-extra/clangd/tool/ClangdMain.cpp b/clang-tools-extra/clangd/tool/ClangdMain.cpp index c43f125..331dd11 100644 --- a/clang-tools-extra/clangd/tool/ClangdMain.cpp +++ b/clang-tools-extra/clangd/tool/ClangdMain.cpp @@ -585,6 +585,8 @@ clangd accepts flags on the commandline, and in the CLANGD_FLAGS environment var // Use buffered stream to stderr (we still flush each log message). Unbuffered // stream can cause significant (non-deterministic) latency for the logger. llvm::errs().SetBuffered(); + // Don't flush stdout when logging, this would be both slow and racy! + llvm::errs().tie(nullptr); StreamLogger Logger(llvm::errs(), LogLevel); LoggingSession LoggingSession(Logger); // Write some initial logs before we start doing any real work.