-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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 writes_through_immutable_pointer a hard error #129199
make writes_through_immutable_pointer a hard error #129199
Conversation
@bors try |
…inter, r=<try> make writes_through_immutable_pointer a hard error This turns the lint added in rust-lang#118324 into a hard error. This has been reported in cargo's future-compat reports since Rust 1.76 (released in February). Given that const_mut_refs is still unstable, it should be impossible to even hit this error on stable: we did accidentally stabilize some functions that can cause this error, but that got reverted in rust-lang#117905. Still, let's do a crater run just to be sure. Given that this should only affect unstable code, I don't think it needs an FCP, but let's Cc `@rust-lang/lang` anyway -- any objection to making this unambiguous UB into a hard error during const-eval? This can be viewed as part of rust-lang#129195 which is already nominated for discussion.
☀️ Try build successful - checks-actions |
@craterbot check |
👌 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i'm happy to approve this if crater results are unremarkable. I agree that if the lint is truly unreachable on stable, then it doesn't need to be FCP'd.
🚧 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
🎉 Experiment
|
We have one
That's on them for adding `deny(renamed_and_removed_lints), they are basically asking to have breaking changes. 🤷 The rest seems spurious. :) @bors r=compiler-errors |
Let's try rerunning crater to see if the strange spurious errors reproduce. @craterbot run mode=check-only crates=https://crater-reports.s3.amazonaws.com/pr-129199/retry-regressed-list.txt p=1 |
👌 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
🚧 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
🎉 Experiment
|
…pointer, r=compiler-errors make writes_through_immutable_pointer a hard error This turns the lint added in rust-lang#118324 into a hard error. This has been reported in cargo's future-compat reports since Rust 1.76 (released in February). Given that const_mut_refs is still unstable, it should be impossible to even hit this error on stable: we did accidentally stabilize some functions that can cause this error, but that got reverted in rust-lang#117905. Still, let's do a crater run just to be sure. Given that this should only affect unstable code, I don't think it needs an FCP, but let's Cc `@rust-lang/lang` anyway -- any objection to making this unambiguous UB into a hard error during const-eval? This can be viewed as part of rust-lang#129195 which is already nominated for discussion.
…iaskrgr Rollup of 10 pull requests Successful merges: - rust-lang#128596 (stabilize const_fn_floating_point_arithmetic) - rust-lang#129199 (make writes_through_immutable_pointer a hard error) - rust-lang#129246 (Retroactively feature gate `ConstArgKind::Path`) - rust-lang#129290 (Pin `cc` to 1.0.105) - rust-lang#129323 (Implement `ptr::fn_addr_eq`) - rust-lang#129500 (remove invalid `TyCompat` relation for effects) - rust-lang#129501 (panicking: improve hint for Miri's RUST_BACKTRACE behavior) - rust-lang#129505 (interpret: ImmTy: tighten sanity checks in offset logic) - rust-lang#129509 (Add a hack to workaround MSVC CI issues) - rust-lang#129510 (Fix `elided_named_lifetimes` in code) r? `@ghost` `@rustbot` modify labels: rollup
…iaskrgr Rollup of 9 pull requests Successful merges: - rust-lang#128596 (stabilize const_fn_floating_point_arithmetic) - rust-lang#129199 (make writes_through_immutable_pointer a hard error) - rust-lang#129246 (Retroactively feature gate `ConstArgKind::Path`) - rust-lang#129290 (Pin `cc` to 1.0.105) - rust-lang#129323 (Implement `ptr::fn_addr_eq`) - rust-lang#129500 (remove invalid `TyCompat` relation for effects) - rust-lang#129501 (panicking: improve hint for Miri's RUST_BACKTRACE behavior) - rust-lang#129505 (interpret: ImmTy: tighten sanity checks in offset logic) - rust-lang#129510 (Fix `elided_named_lifetimes` in code) r? `@ghost` `@rustbot` modify labels: rollup
…iaskrgr Rollup of 9 pull requests Successful merges: - rust-lang#128596 (stabilize const_fn_floating_point_arithmetic) - rust-lang#129199 (make writes_through_immutable_pointer a hard error) - rust-lang#129246 (Retroactively feature gate `ConstArgKind::Path`) - rust-lang#129290 (Pin `cc` to 1.0.105) - rust-lang#129323 (Implement `ptr::fn_addr_eq`) - rust-lang#129500 (remove invalid `TyCompat` relation for effects) - rust-lang#129501 (panicking: improve hint for Miri's RUST_BACKTRACE behavior) - rust-lang#129505 (interpret: ImmTy: tighten sanity checks in offset logic) - rust-lang#129510 (Fix `elided_named_lifetimes` in code) r? `@ghost` `@rustbot` modify labels: rollup
…iaskrgr Rollup of 9 pull requests Successful merges: - rust-lang#128596 (stabilize const_fn_floating_point_arithmetic) - rust-lang#129199 (make writes_through_immutable_pointer a hard error) - rust-lang#129246 (Retroactively feature gate `ConstArgKind::Path`) - rust-lang#129290 (Pin `cc` to 1.0.105) - rust-lang#129323 (Implement `ptr::fn_addr_eq`) - rust-lang#129500 (remove invalid `TyCompat` relation for effects) - rust-lang#129501 (panicking: improve hint for Miri's RUST_BACKTRACE behavior) - rust-lang#129505 (interpret: ImmTy: tighten sanity checks in offset logic) - rust-lang#129510 (Fix `elided_named_lifetimes` in code) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#129199 - RalfJung:writes_through_immutable_pointer, r=compiler-errors make writes_through_immutable_pointer a hard error This turns the lint added in rust-lang#118324 into a hard error. This has been reported in cargo's future-compat reports since Rust 1.76 (released in February). Given that const_mut_refs is still unstable, it should be impossible to even hit this error on stable: we did accidentally stabilize some functions that can cause this error, but that got reverted in rust-lang#117905. Still, let's do a crater run just to be sure. Given that this should only affect unstable code, I don't think it needs an FCP, but let's Cc ``@rust-lang/lang`` anyway -- any objection to making this unambiguous UB into a hard error during const-eval? This can be viewed as part of rust-lang#129195 which is already nominated for discussion.
https://crater-reports.s3.amazonaws.com/pr-129199-1/full.html shows there were 24 crates tested... so probably just a bug in the queue display? |
After completion we clean up the database entries, so 0/0 is expected. |
This turns the lint added in #118324 into a hard error. This has been reported in cargo's future-compat reports since Rust 1.76 (released in February). Given that const_mut_refs is still unstable, it should be impossible to even hit this error on stable: we did accidentally stabilize some functions that can cause this error, but that got reverted in #117905. Still, let's do a crater run just to be sure.
Given that this should only affect unstable code, I don't think it needs an FCP, but let's Cc @rust-lang/lang anyway -- any objection to making this unambiguous UB into a hard error during const-eval? This can be viewed as part of #129195 which is already nominated for discussion.