-
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
[WIP] Rollup of three NLL PR's #54532
Conversation
This allows treating the "fake" match borrows differently from shared borrows.
As we are now creating borrows of places that may not be valid for borrow checking matches, these have to be removed to avoid generating broken code.
This name better reflects the asymmetry of this function.
When dropping a self-borrowing struct we shouldn't add a "values in a scope are dropped in the opposite order they are defined" message, since there is only one value being dropped.
Previously, we would split the drop access into multiple checks for each field of a struct/tuple/closure and through `Box` dereferences. This changes this to check if the borrow is accessed by the drop in places_conflict. This also allows us to handle enums in a simpler way, since we don't have to construct any new places.
… test this PR. DO NOT LAND WITH THIS COMMIT.
r? @davidtwco (rust_highfive has picked a reviewer for you, use r? to override) |
(marking as [WIP] while I run test bulids atop specific targets like WASM, as demonstrated in cd69fb0.) |
The job Click to expand the log.
I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
☔ The latest upstream changes (presumably #54509) made this pull request unmergeable. Please resolve the merge conflicts. |
Rollup of PRs:
(Includes a couple updates to get them workings as follow-on commits.)