diff --git a/src/libstd/sys/unix/args.rs b/src/libstd/sys/unix/args.rs index 15dafb1bcf964..2ed1585395e22 100644 --- a/src/libstd/sys/unix/args.rs +++ b/src/libstd/sys/unix/args.rs @@ -80,7 +80,13 @@ mod imp { #[inline(always)] pub unsafe fn init(_argc: isize, _argv: *const *const u8) { - #[cfg(not(all(target_os = "linux", target_env = "gnu")))] + // On Linux-GNU, we rely on `ARGV_INIT_ARRAY` below to initialize + // `ARGC` and `ARGV`. But in Miri that does not actually happen so we + // still initialize here. + #[cfg(any( + miri, + not(all(target_os = "linux", target_env = "gnu")) + ))] really_init(_argc, _argv); }