about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLeón Orell Valerian Liehr <me@fmease.dev>2024-05-22 23:41:12 +0200
committerGitHub <noreply@github.com>2024-05-22 23:41:12 +0200
commitc7d4c54cc81955d7423a7da1b27c499b5de2f218 (patch)
treebbec2c9199a83997a3478a266b7010a830b11bef
parentd2f0df7713588dfe7ea54163ac5c93a0e8e38002 (diff)
parent8f11f48a027888b71efbb1769b432606e824e577 (diff)
downloadrust-c7d4c54cc81955d7423a7da1b27c499b5de2f218.tar.gz
rust-c7d4c54cc81955d7423a7da1b27c499b5de2f218.zip
Rollup merge of #125355 - michaelwoerister:rust_log_force_capture, r=nnethercote
Use Backtrace::force_capture instead of Backtrace::capture in rustc_log

After https://github.com/rust-lang/rust/pull/125063, the compiler and custom drivers won't automatically set the RUST_BACKTRACE environment variable anymore, so we have to call `Backtrace::force_capture` instead of `Backtrace::capture` to unconditionally capture a backtrace.

rustc_log handles enabling backtraces via env vars itself, so we don't want RUST_BACKTRACE to make a difference.
-rw-r--r--compiler/rustc_log/src/lib.rs4
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/rustc_log/src/lib.rs b/compiler/rustc_log/src/lib.rs
index 81257f9be88..e11c45b66e6 100644
--- a/compiler/rustc_log/src/lib.rs
+++ b/compiler/rustc_log/src/lib.rs
@@ -159,7 +159,9 @@ where
         if !target.contains(&self.backtrace_target) {
             return Ok(());
         }
-        let backtrace = std::backtrace::Backtrace::capture();
+        // Use Backtrace::force_capture because we don't want to depend on the
+        // RUST_BACKTRACE environment variable being set.
+        let backtrace = std::backtrace::Backtrace::force_capture();
         writeln!(writer, "stack backtrace: \n{backtrace:?}")
     }
 }