Skip to content
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

Update Rust nightly. #729

Merged
merged 1 commit into from
Apr 24, 2022
Merged

Update Rust nightly. #729

merged 1 commit into from
Apr 24, 2022

Conversation

Dirbaio
Copy link
Member

@Dirbaio Dirbaio commented Apr 24, 2022

Fixes a new opaque type error in the task macro.
Full error is "opaque type's hidden type cannot be another opaque type from the same scope".
This got disallwed by the lazy-TAIT PR: rust-lang/rust#94081

Sadly there's now some weird type inference errors with pre-lazy-TAIT
nightlies, so support for those is dropped.

@Dirbaio Dirbaio marked this pull request as draft April 24, 2022 02:13
@Dirbaio
Copy link
Member Author

Dirbaio commented Apr 24, 2022

WIP, investigating why it now fails in older nightlies...???

Fixes a new opaque type error in the task macro.
Full error is "opaque type's hidden type cannot be another opaque type from the same scope".
This got disallwed by the lazy-TAIT PR: rust-lang/rust#94081

Sadly there's now some weird type inference errors with pre-lazy-TAIT
nightlies, so support for those is dropped.
@Dirbaio Dirbaio changed the title macros: fix opaque type errors in recent nightlies. Update Rust nightly. Apr 24, 2022
@Dirbaio
Copy link
Member Author

Dirbaio commented Apr 24, 2022

it seems a type inference bug in pre-lazy-tait Rust. Can be fixed with yet another wrapper fn, but I'd rather not do it because it's more opportunities for the optimizer to fail to inline stuff. Let's drop support for old nightlies instead.

@Dirbaio Dirbaio marked this pull request as ready for review April 24, 2022 02:34
@Dirbaio Dirbaio merged commit b578e06 into master Apr 24, 2022
@bors bors bot deleted the update-nightly branch April 24, 2022 02:34
bors bot added a commit that referenced this pull request Apr 26, 2022
732: macros: simplify task macro using "TAIT laundering". r=Dirbaio a=Dirbaio

This brings the macro to the state before the nightly update #729 #730, with a much cleaner workaround for the opaque type error, from rust-lang/rust#96406

Co-authored-by: Dario Nieuwenhuis <dirbaio@dirbaio.net>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant