-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
Remove identity_future
indirection/hack
#104826
Comments
@Swatinem, if the E0720 is your only blocker, I can look into fixing it -- ping me if so. That's only triggered on code that's unstable currently -- it might get fixed by some changes I have in #106527, or I'd probably be able to find an alternative fix 🤔 Side-note: Currently your branch in #104833 ICEs because it's not using HIR ids correctly, I think? Could you look into that? It would be really great if we could get rid of this hack (it would help me be able to finish a fix for #106527, for example). |
Ah I see, looks like when I touched clippy at all, it means I need to fix it completely. But it looks like that would even improve on some clippy issues as well, hurray.
Do you mean to say the PRs are mutually dependent? Either way, fixing all the tools will take me some time. I will jump on zulip if I am stuck anywhere and reach out for help. |
…rors Remove `identity_future` indirection This was previously needed because the indirection used to hide some unexplained lifetime errors, which it turned out were related to the `min_choice` algorithm. Removing the indirection also solves a couple of cycle errors, large moves and makes async blocks support the `#[track_caller]`annotation. Fixes rust-lang/rust#104826.
…rors Remove `identity_future` indirection This was previously needed because the indirection used to hide some unexplained lifetime errors, which it turned out were related to the `min_choice` algorithm. Removing the indirection also solves a couple of cycle errors, large moves and makes async blocks support the `#[track_caller]`annotation. Fixes rust-lang/rust#104826.
…rors Remove `identity_future` indirection This was previously needed because the indirection used to hide some unexplained lifetime errors, which it turned out were related to the `min_choice` algorithm. Removing the indirection also solves a couple of cycle errors, large moves and makes async blocks support the `#[track_caller]`annotation. Fixes rust-lang/rust#104826.
…rors Remove `identity_future` indirection This was previously needed because the indirection used to hide some unexplained lifetime errors, which it turned out were related to the `min_choice` algorithm. Removing the indirection also solves a couple of cycle errors, large moves and makes async blocks support the `#[track_caller]`annotation. Fixes rust-lang/rust#104826.
…rors Remove `identity_future` indirection This was previously needed because the indirection used to hide some unexplained lifetime errors, which it turned out were related to the `min_choice` algorithm. Removing the indirection also solves a couple of cycle errors, large moves and makes async blocks support the `#[track_caller]`annotation. Fixes rust-lang/rust#104826.
While working on #104321, creating an async generator directly lead to E0720 and E0700 errors.
The "solution" was to put the async generator through an identity function:
This "magically" solves / hides those errors, but should ideally not be necessary.
Full Error output
The text was updated successfully, but these errors were encountered: