diff options
| author | leo60228 <iakornfeld@gmail.com> | 2019-11-21 13:34:31 -0500 |
|---|---|---|
| committer | leo60228 <iakornfeld@gmail.com> | 2019-11-22 12:27:07 -0500 |
| commit | 55fe6d8d5875f1378747ea1681deac64536ef9dc (patch) | |
| tree | 7b1ebd3d8f9291ad7cc03df999f33ef2fa408e56 /src/libstd | |
| parent | e282b2227f4dac70bf805c59fc4c90e5a4e2c0ef (diff) | |
| download | rust-55fe6d8d5875f1378747ea1681deac64536ef9dc.tar.gz rust-55fe6d8d5875f1378747ea1681deac64536ef9dc.zip | |
Add documentation to `std::env::args[_os]`
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/env.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/libstd/env.rs b/src/libstd/env.rs index b8989369269..651010d1366 100644 --- a/src/libstd/env.rs +++ b/src/libstd/env.rs @@ -702,6 +702,11 @@ pub struct ArgsOs { inner: sys::args::Args } /// (such as `*` and `?`). On Windows this is not done, and such arguments are /// passed as-is. /// +/// On glibc Linux, arguments are retrieved by placing a function in .init_array. +/// 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` or `staticlib`, as it does on macOS +/// and Windows. +/// /// # Panics /// /// The returned iterator will panic during iteration if any argument to the @@ -732,6 +737,11 @@ pub fn args() -> Args { /// set to arbitrary text, and it may not even exist, so this property should /// not be relied upon for security purposes. /// +/// On glibc Linux, arguments are retrieved by placing a function in .init_array. +/// 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` or `staticlib`, as it does on macOS +/// and Windows. +/// /// # Examples /// /// ``` |
