From e282b2227f4dac70bf805c59fc4c90e5a4e2c0ef Mon Sep 17 00:00:00 2001 From: leo60228 Date: Thu, 21 Nov 2019 11:47:01 -0500 Subject: Document ARGV_INIT_ARRAY --- src/libstd/sys/unix/args.rs | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/libstd/sys') diff --git a/src/libstd/sys/unix/args.rs b/src/libstd/sys/unix/args.rs index 209c5c542bc..58fa305a819 100644 --- a/src/libstd/sys/unix/args.rs +++ b/src/libstd/sys/unix/args.rs @@ -78,6 +78,8 @@ mod imp { ARGV = argv; } + /// glibc passes argc, argv, and envp to functions in .init_array, as a non-standard extension. + /// This allows `std::env::args` to work even in a `cdylib`, as it does on macOS and Windows. #[cfg(all(target_os = "linux", target_env = "gnu"))] #[used] #[link_section = ".init_array.00099"] -- cgit 1.4.1-3-g733a5