@@ -899,18 +899,7 @@ fn phase_rustc(mut args: env::Args, phase: RustcPhase) {
899899 if verbose > 0 {
900900 eprint ! ( "[cargo-miri rustc] " ) ;
901901 if verbose > 1 {
902- let mut envs = HashMap :: new ( ) ;
903- for ( key, value) in std:: env:: vars ( ) {
904- envs. insert ( key, value) ;
905- }
906- for ( key, value) in cmd. get_envs ( ) {
907- if let Some ( value) = value {
908- envs. insert ( key. to_str ( ) . unwrap ( ) . into ( ) , value. to_str ( ) . unwrap ( ) . to_owned ( ) ) ;
909- } else {
910- envs. remove ( key. to_str ( ) . unwrap ( ) ) ;
911- }
912- }
913- for ( key, value) in envs {
902+ for ( key, value) in env_vars_from_cmd ( & cmd) {
914903 eprintln ! ( "{key}={value:?} \\ " ) ;
915904 }
916905 }
@@ -933,6 +922,23 @@ fn phase_rustc(mut args: env::Args, phase: RustcPhase) {
933922 }
934923}
935924
925+ fn env_vars_from_cmd ( cmd : & Command ) -> Vec < ( String , String ) > {
926+ let mut envs = HashMap :: new ( ) ;
927+ for ( key, value) in std:: env:: vars ( ) {
928+ envs. insert ( key, value) ;
929+ }
930+ for ( key, value) in cmd. get_envs ( ) {
931+ if let Some ( value) = value {
932+ envs. insert ( key. to_str ( ) . unwrap ( ) . into ( ) , value. to_str ( ) . unwrap ( ) . to_owned ( ) ) ;
933+ } else {
934+ envs. remove ( key. to_str ( ) . unwrap ( ) ) ;
935+ }
936+ }
937+ let mut envs: Vec < _ > = envs. into_iter ( ) . collect ( ) ;
938+ envs. sort ( ) ;
939+ envs
940+ }
941+
936942#[ derive( Debug , Copy , Clone , PartialEq ) ]
937943enum RunnerPhase {
938944 /// `cargo` is running a binary
0 commit comments