-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
make ptr::invalid not the same as a regular int2ptr cast #97219
Conversation
Hey! It looks like you've submitted a new PR for the library teams! If this PR contains changes to any Examples of
|
r? @thomcc (rust-highfive has picked a reviewer for you, use r? to override) |
@bors r+ |
📌 Commit 31c3c04 has been approved by |
…laumeGomez Rollup of 7 pull requests Successful merges: - rust-lang#97190 (Add implicit call to from_str via parse in documentation) - rust-lang#97218 (Add eslint checks) - rust-lang#97219 (make ptr::invalid not the same as a regular int2ptr cast) - rust-lang#97223 (Remove quadratic behaviour from -Zunpretty=hir-tree.) - rust-lang#97232 (typo) - rust-lang#97237 (Add some more weird-exprs) - rust-lang#97238 (Bump LLVM fetched from CI to fix run-make) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Rustup In particular, this contains rust-lang/rust#97219. Miri support for actually erroring on misuse of `ptr::invalid` will happen later. Also move some more tests to better locations.
In Miri, we would like to distinguish
ptr::invalid
fromptr::from_exposed_provenance
, so that we can provide better diagnostics issues like rust-lang/miri#2134, and so that we can detect the UB in programs likeTo achieve that, the two functions need to have different implementations. Currently, both are just
as
casts. We could add an intrinsic for this, but it turns outtransmute
already has the right behavior, at least as far as Miri is concerned. So I propose we just use that.Cc @Gankra