Skip to content

Conversation

compiler-errors
Copy link
Member

My work-in-progress implementation of async gen blocks has a slightly more involved coroutine desugaring, since the generators must return Poll<Option<T>>, instead of just Poll<T> or Option<T>. This means that the state_adt_ref and state_args for the current coroutine transform TransformVisitor are not sufficient.

This PR inlines the TransformVisitor::coroutine_state_adt_and_variant_idx function into its call-sites, simplifies some logic, and reworks TransformVisitor::make_state to be a bit more clear and easy to read.

@rustbot
Copy link
Collaborator

rustbot commented Nov 28, 2023

r? @cjgillot

(rustbot has picked a reviewer for you, use r? to override)

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Nov 28, 2023
@rustbot
Copy link
Collaborator

rustbot commented Nov 28, 2023

Some changes occurred to MIR optimizations

cc @rust-lang/wg-mir-opt

@bors
Copy link
Collaborator

bors commented Dec 8, 2023

☔ The latest upstream changes (presumably #118420) made this pull request unmergeable. Please resolve the merge conflicts.

@compiler-errors
Copy link
Member Author

This was subsumed by #118420.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants