mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-03 17:35:28 +03:00
6bc9dcd7ec
Refactor `panic_unwind/seh.rs` pointer use * `x86` now conforms to strict-provenance * `x86_64` now uses the expose API (instead of `as` casts) * changed `ptr_t` from a type alias to a `repr(transparent)` struct for some extra type-safety * replaced the `ptr!` macro by methods on `ptr_t`, as there is now no reason (as far as I can see) anymore to use a macro On `x86_64` pointers in SEH are represented by 32-bit offsets from `__ImageBase`, so we can't use a pointer type. It might be possible to leak the provenance into the FFI by using a `MaybeUninit<u32>` instead of a `u32`, but that is a bit more involved than using expose, and I'm not sure that would be worth it.