diff --git a/cargo-miri/bin.rs b/cargo-miri/bin.rs index c02847dfdd97..8b60d90520ab 100644 --- a/cargo-miri/bin.rs +++ b/cargo-miri/bin.rs @@ -1008,14 +1008,16 @@ fn phase_runner(mut binary_args: impl Iterator, phase: RunnerPhas // Set missing env vars. We prefer build-time env vars over run-time ones; see // for the kind of issue that fixes. for (name, val) in info.env { - if verbose > 0 { - if let Some(old_val) = env::var_os(&name) { - if old_val != val { - eprintln!( - "[cargo-miri runner] Overwriting run-time env var {:?}={:?} with build-time value {:?}", - name, old_val, val - ); - } + if let Some(old_val) = env::var_os(&name) { + if old_val == val { + // This one did not actually change, no need to re-set it. + // (This keeps the `debug_cmd` below more manageable.) + continue; + } else if verbose > 0 { + eprintln!( + "[cargo-miri runner] Overwriting run-time env var {:?}={:?} with build-time value {:?}", + name, old_val, val + ); } } cmd.env(name, val);