-
Notifications
You must be signed in to change notification settings - Fork 12.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 4 pull requests #74987
Rollup of 4 pull requests #74987
Commits on Jul 30, 2020
-
Configuration menu - View commit details
-
Copy full SHA for b9ac3f3 - Browse repository at this point
Copy the full SHA b9ac3f3View commit details
Commits on Jul 31, 2020
-
Configuration menu - View commit details
-
Copy full SHA for f173a4b - Browse repository at this point
Copy the full SHA f173a4bView commit details -
Configuration menu - View commit details
-
Copy full SHA for b316642 - Browse repository at this point
Copy the full SHA b316642View commit details -
Add RUST_STD_FREEBSD_12_ABI env variable
Unfortunately, sanitizers do not support versioned symbols[1], so they break filesystem access via the legacy, pre-ino64 ABI. To use sanitizers on FreeBSD >= 12, we need to build the libc crate with LIBC_CI=1 to use the new ABI -- including the libc used for std. But that removes the st_lspare field std was expecting for the deprecated metadata extension. Add a way to skip that field to allow the build to work. [1]: google/sanitizers#628
Configuration menu - View commit details
-
Copy full SHA for baaf084 - Browse repository at this point
Copy the full SHA baaf084View commit details -
Configuration menu - View commit details
-
Copy full SHA for dc21178 - Browse repository at this point
Copy the full SHA dc21178View commit details -
Rollup merge of rust-lang#74576 - myfreeweb:freebsd-sanitizers, r=oli…
…-obk Add sanitizer support on FreeBSD Restarting rust-lang#47337. Everything is better now, no more weird llvm problems, well not everything: Unfortunately, the sanitizers don't have proper support for versioned symbols (google/sanitizers#628), so `libc`'s usage of `stat@FBSD_1.0` and so on explodes, e.g. in calling `std::fs::metadata`. Building std (now easy thanks to cargo `-Zbuild-std`) and libc with `freebsd12/13` config via the `LIBC_CI=1` env variable is a good workaround… ``` LIBC_CI=1 RUSTFLAGS="-Z sanitizer=address" cargo +san-test -Zbuild-std run --target x86_64-unknown-freebsd --verbose ``` …*except* std won't build because there's no `st_lspare` in the ino64 version of the struct, so an std patch is required: ```diff --- i/src/libstd/os/freebsd/fs.rs +++ w/src/libstd/os/freebsd/fs.rs @@ -66,8 +66,6 @@ pub trait MetadataExt { fn st_flags(&self) -> u32; #[stable(feature = "metadata_ext2", since = "1.8.0")] fn st_gen(&self) -> u32; - #[stable(feature = "metadata_ext2", since = "1.8.0")] - fn st_lspare(&self) -> u32; } #[stable(feature = "metadata_ext", since = "1.1.0")] @@ -136,7 +134,4 @@ impl MetadataExt for Metadata { fn st_flags(&self) -> u32 { self.as_inner().as_inner().st_flags as u32 } - fn st_lspare(&self) -> u32 { - self.as_inner().as_inner().st_lspare as u32 - } } ``` I guess std could like.. detect that `libc` isn't built for the old ABI, and replace the implementation of `st_lspare` with a panic?
Configuration menu - View commit details
-
Copy full SHA for 9fdc807 - Browse repository at this point
Copy the full SHA 9fdc807View commit details -
Rollup merge of rust-lang#74582 - Lezzz:rename-hair, r=nikomatsakis
Rename HAIR to THIR (Typed HIR). r? @nikomatsakis Originally suggested by @eddyb
Configuration menu - View commit details
-
Copy full SHA for 0795348 - Browse repository at this point
Copy the full SHA 0795348View commit details -
Rollup merge of rust-lang#74644 - crlf0710:drop_old_stuff, r=Amanieu
Remove `linked_list_extras` methods. Removing these in favor of the `Cursor` API in rust-lang#58533 . Closes rust-lang#27794. r? @Amanieu
Configuration menu - View commit details
-
Copy full SHA for 1f93021 - Browse repository at this point
Copy the full SHA 1f93021View commit details -
Rollup merge of rust-lang#74982 - jonas-schievink:relnotes-1.45.2, r=…
…Mark-Simulacrum 1.45.2 release notes (for master) cc rust-lang#74958
Configuration menu - View commit details
-
Copy full SHA for c6af255 - Browse repository at this point
Copy the full SHA c6af255View commit details