-
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 another ICE in point_at_expr_source_of_inferred_type
#108667
Conversation
(rustbot has picked a reviewer for you, use r? to override) |
I'm ok with reverting if there's a better approach (that doesn't slow down the happy-path). Feel free to add @Nilstrieb's requested comment. |
…tebank Fix another ICE in `point_at_expr_source_of_inferred_type` Types coming from method probes must only be investigated *structurally*, since they often contain escaping infer variables from generalization and autoderef. We already have a hack in this PR that erases variables from types, so just use that. Fixes rust-lang#108664 The note attached to this error is pretty bad: ``` here the type of `primes` is inferred to be `[_]` ``` But that's unrelated to the PR. --- Side-note: This is a pretty easy to trigger beta regression, so I've nominated it. Alternatively, I'm slightly inclined to remove this code altogether until it can be reformulated to be more accurate and less ICEy.
Unilaterally beta-approving. (Well, @wesleywiser approved too; is there "duolaterally"/"bilaterally" ...?) @rustbot label: beta-accepted |
I just tried cherry-picking this on beta for #108670, and the test still ICEs (locally, not pushed yet): Test output
Is there perhaps a dependent change that we'll also need to backport? |
Ugh, yes, probably need #107175 as well :/ |
OK, with that it doesn't ICE, but there's some UI diff (which I could bless):
But on zulip it sounds like we'll want some reverts instead... |
…iaskrgr Rollup of 7 pull requests Successful merges: - rust-lang#107981 (new solver: implement canonicalization and region constraints) - rust-lang#108553 (Deny capturing late-bound non-lifetime param in anon const) - rust-lang#108599 (Remove legacy PM leftovers) - rust-lang#108667 (Fix another ICE in `point_at_expr_source_of_inferred_type`) - rust-lang#108674 (Clippy Fix array-size-threshold config deserialization error) - rust-lang#108685 (Match unmatched backticks in compiler/) - rust-lang#108694 (Match unmatched backticks in compiler/ comments) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Types coming from method probes must only be investigated structurally, since they often contain escaping infer variables from generalization and autoderef. We already have a hack in this PR that erases variables from types, so just use that.
Fixes #108664
The note attached to this error is pretty bad:
But that's unrelated to the PR.
Side-note: This is a pretty easy to trigger beta regression, so I've nominated it. Alternatively, I'm slightly inclined to remove this code altogether until it can be reformulated to be more accurate and less ICEy.