James Kuszmaul | b13e13f | 2023-11-22 20:44:04 -0800 | [diff] [blame^] | 1 | From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 |
James Kuszmaul | cf32412 | 2023-01-14 14:07:17 -0800 | [diff] [blame] | 2 | From: PJ Reiniger <pj.reiniger@gmail.com> |
| 3 | Date: Thu, 19 May 2022 00:58:36 -0400 |
James Kuszmaul | b13e13f | 2023-11-22 20:44:04 -0800 | [diff] [blame^] | 4 | Subject: [PATCH 24/31] Prefer to use static pointers in raw_ostream |
James Kuszmaul | cf32412 | 2023-01-14 14:07:17 -0800 | [diff] [blame] | 5 | |
| 6 | See #1401 |
| 7 | --- |
| 8 | llvm/lib/Support/raw_ostream.cpp | 8 ++++---- |
| 9 | 1 file changed, 4 insertions(+), 4 deletions(-) |
| 10 | |
| 11 | diff --git a/llvm/lib/Support/raw_ostream.cpp b/llvm/lib/Support/raw_ostream.cpp |
James Kuszmaul | b13e13f | 2023-11-22 20:44:04 -0800 | [diff] [blame^] | 12 | index f9928ac969932b6baea60a80750477d78b6a5b02..1de34976844d500970b833fca35324e2948733b7 100644 |
James Kuszmaul | cf32412 | 2023-01-14 14:07:17 -0800 | [diff] [blame] | 13 | --- a/llvm/lib/Support/raw_ostream.cpp |
| 14 | +++ b/llvm/lib/Support/raw_ostream.cpp |
James Kuszmaul | b13e13f | 2023-11-22 20:44:04 -0800 | [diff] [blame^] | 15 | @@ -613,15 +613,15 @@ void raw_fd_ostream::anchor() {} |
James Kuszmaul | cf32412 | 2023-01-14 14:07:17 -0800 | [diff] [blame] | 16 | raw_fd_ostream &llvm::outs() { |
| 17 | // Set buffer settings to model stdout behavior. |
| 18 | std::error_code EC; |
| 19 | - static raw_fd_ostream S("-", EC, sys::fs::OF_None); |
| 20 | + static raw_fd_ostream* S = new raw_fd_ostream("-", EC, sys::fs::OF_None); |
| 21 | assert(!EC); |
| 22 | - return S; |
| 23 | + return *S; |
| 24 | } |
| 25 | |
| 26 | raw_fd_ostream &llvm::errs() { |
| 27 | // Set standard error to be unbuffered and tied to outs() by default. |
| 28 | - static raw_fd_ostream S(STDERR_FILENO, false, true); |
| 29 | - return S; |
| 30 | + static raw_fd_ostream* S = new raw_fd_ostream(STDERR_FILENO, false, true); |
| 31 | + return *S; |
| 32 | } |
| 33 | |
| 34 | /// nulls() - This returns a reference to a raw_ostream which discards output. |