-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
Fix type-inference regression in #112225 #112266
Conversation
This comment has been minimized.
This comment has been minimized.
The type inference of argument-position closures and async blocks regressed in 1.70 as the evaluation order of async blocks changed, as they are not implicitly wrapped in an identity-function anymore. Fixes rust-lang#112225 by making sure the evaluation order stays the same as it used to.
19b4f7d
to
75b557a
Compare
@bors r+ |
☀️ Test successful - checks-actions |
Finished benchmarking commit (dcf3571): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 646.397s -> 646.008s (-0.06%) |
stable-nominating because this was injected in 1.70 and seems like it has somewhat unknown scope of impact @rustbot label: +stable-nominated |
…k-Simulacrum [beta] backport This PR backports: - rust-lang#112684: Disable alignment checks on i686-pc-windows-msvc - rust-lang#112581: [rustdoc] Fix URL encoding of % sign - rust-lang#112312: Update to LLVM 16.0.5 - rust-lang#112266: Fix type-inference regression in rust-lang#112225 - rust-lang#112062: Make struct layout not depend on unsizeable tail r? `@Mark-Simulacrum`
The type inference of argument-position closures and async blocks regressed in 1.70 as the evaluation order of async blocks changed, as they are not implicitly wrapped in an identity-function anymore.
Fixes #112225 by making sure the evaluation order stays the same as it used to.
r? @compiler-errors
As this was a stable-to-stable regression, it might be worth to consider backporting. Although the workaround for this is trivial as well: Just wrap the async block in another block.