-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
Formalize defining_use_anchor #99383
Conversation
Can you please add a UI test for #99363 since you said that was fixed by this PR? 😸 |
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 don't understand the reasoning behind most of the Bubble
calls you added, please document all of them or remove them to keep them as an error
There was already a test like that but just added new one with |
This comment has been minimized.
This comment has been minimized.
@bors r+ |
📌 Commit 8267ad738660c32f50343ccecbee5bf13519c371 has been approved by It is now in the queue for this repository. |
☔ The latest upstream changes (presumably #99451) made this pull request unmergeable. Please resolve the merge conflicts. |
@bors r+ |
Rollup of 7 pull requests Successful merges: - rust-lang#98101 (stdlib support for Apple WatchOS) - rust-lang#99345 (Do not allow typeck children items to constrain outer RPITs) - rust-lang#99383 (Formalize defining_use_anchor) - rust-lang#99436 (Add flag to configure `noalias` on `Box<T>`) - rust-lang#99483 (Fix a numerical underflow in tuple wrap suggestion) - rust-lang#99485 (Stop injecting `#[allow(unused_qualifications)]` in generated `derive` implementations) - rust-lang#99486 (Refactor: remove a string comparison between types in `check_str_addition`) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Fix regression introduced with rust-lang#99383 Fixes rust-lang#99642
Fix regression introduced with rust-lang#99383 Fixes rust-lang#99642
Rollup of 5 pull requests Successful merges: - rust-lang#99714 (Fix regression introduced with rust-lang#99383) - rust-lang#99723 (Allow using stable os::fd::raw items through unstable os::wasi module) - rust-lang#99810 (Fix settings slider on small width screens) - rust-lang#99837 (Avoid `Symbol` to `String` conversions) - rust-lang#99846 (Refactor `UnresolvedImportError`) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
I think this caused a regression in Miri, introducing a new ICE -- see rust-lang/miri#2433. I don't have any idea what goes on here so not sure about any of the details.^^ |
InferCtxtBuilder { tcx: self, defining_use_anchor: None, fresh_typeck_results: None } | ||
InferCtxtBuilder { | ||
tcx: self, | ||
defining_use_anchor: DefiningAnchor::Error, |
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.
This used to be the equivalent to DefiningAnchor::Bubble
. I don't see any other behavior changes.
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.
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.
Ah sorry, I totally forgot about this I will look into this asap.
Because of a previous report, I already had a branch where I reverted changes made here, I built
|
@ouz-a discussion in closed MRs tends to get lost, let's discuss in rust-lang/miri#2433. |
This tackles issue #57961
Introduces new enum called
DefiningAnchor
that replacesOption<LocalDefId>
ofdefining_use_anchor
. Now every use of it is explicit and exhaustively matched, catching errors like one in the linked issue. This is not a perfect fix but it's a step in the right direction.r? @oli-obk