about summary refs log tree commit diff
path: root/compiler/rustc_pattern_analysis/src/errors.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2024-04-12 06:38:26 +0000
committerbors <bors@rust-lang.org>2024-04-12 06:38:26 +0000
commit6bc9dcd7ecf2cff2b6ef2243e7aeaded8d0d4c0f (patch)
tree83ba10232a574d56ffaab7e346735afed9943761 /compiler/rustc_pattern_analysis/src/errors.rs
parent6475796a813f2153d3bfc92c6089ed0f0c1c5b46 (diff)
parentf63d5d1dcd441eb781c396a869dd8c8990dfe1f3 (diff)
downloadrust-6bc9dcd7ecf2cff2b6ef2243e7aeaded8d0d4c0f.tar.gz
rust-6bc9dcd7ecf2cff2b6ef2243e7aeaded8d0d4c0f.zip
Auto merge of #123490 - niluxv:strict_prov_unwind_seh, r=Amanieu
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.
Diffstat (limited to 'compiler/rustc_pattern_analysis/src/errors.rs')
0 files changed, 0 insertions, 0 deletions