-
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
Recent optimization broke async recursion in release mode #121094
Comments
@rustbot label +T-compiler +A-mir-opt +S-has-mcve -needs-triage |
This fails to compile with either debug or release mode on stable. That means this isn't a regression, but rather an accidental stabilization. Probably still P-critical though |
@JakobDegen - good catch, I updated the example to use the dyn trait as suggested by the stable compiler, which passes both debug and release, but fails with nightly release. |
@JakobDegen: This is not an accidental stabilization. This was stabilized in #117703. This is a legitimate misoptimization. |
cc @cjgillot @tmiasko This revert is based on the following report of a regression caused by this PR: rust-lang#121094 In accordance with the compiler team [revert policy], PRs that cause meaningful regressions should be reverted and re-landed once the regression has been fixed (and a regression test has been added, where appropriate). [revert policy]: https://forge.rust-lang.org/compiler/reviews.html#reverts Fear not! Regressions happen. Please rest assured that this does not represent a negative judgment of your contribution or ability to contribute positively to Rust in the future. We simply want to prioritize keeping existing use cases working, and keep the compiler more stable for everyone. r? compiler
This code compiles in debug mode, but fails in release mode (playground link):
On release mode, it errors with:
I bisected it down to this patch causing the issue: e132cac. cc @cjgillot.
Meta
rustc --version --verbose
:Backtrace
The text was updated successfully, but these errors were encountered: