-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Initial UnsafePinned
implementation [Part 2: Lowering]
#139896
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
base: master
Are you sure you want to change the base?
Conversation
Some changes occurred to MIR optimizations cc @rust-lang/wg-mir-opt |
"always" sounds wrong; a movable coroutine could have an I understand this is consistent with what we do with
This is missing context -- what is the interaction with niche ops? |
f44b09f
to
03ef470
Compare
Updated the trait solving logic to only implement
#129313 Disabled niches in coroutines because of #63818. The planned "Part 3: Codegen" will restore this. |
I'm not sure how to write tests checking impls of |
03ef470
to
661ccd2
Compare
UnsafePinned
impl [Part 2: Lowering]UnsafePinned
implementation [Part 2: Lowering]
This comment has been minimized.
This comment has been minimized.
661ccd2
to
3e1cce7
Compare
The job Click to see the possible cause of the failure (guessed by this bot)
|
☔ The latest upstream changes (presumably #141396) made this pull request unmergeable. Please resolve the merge conflicts. |
Coroutine lowering part of RFC 3467.
Tracking issue: #125735
Part 1: #137043
UnsafeUnpin
for coroutines:UnsafeUnpin
. (movable coros never have pinned fields)UnsafeUnpin
iff none of its fields are pinned.Still TODO (for later PRs):
@rustbot label F-unsafe_pinned F-coroutines A-coroutines
cc @RalfJung @compiler-errors @traviscross