-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
ICE: Normalizing Binder without wrapping in a Binder #95421
Comments
output from bisect:
|
@Dylan-DPC, I got the same bisection as you, but then realized it was because #88563 added support for I don't think this code ever worked. Before 1.56 (when @jackh726 added the wonderful #85499), rustc ICEs with failure to relate late-bound and placeholder regions, and after 1.56, we fail with this binder variable issue. The library example provided above only newly begins to fail between 1.41 and 1.42 because someone added a check related to const prop that caused the predicate to be evaluated eagerly, but the binary version has always ICEd in some form. The bugThis is probably a bug because we overwrite the late-bound regions we collect here in the where-clause (which we attach to the HIR id of the type in the LHS of Not exactly sure what the best way to fix this bug is. I'll play around with solutions, but don't want to claim the issue because I think it's a bit above my pay-grade, so to speak, since I know very little about |
Heh this is weird. I was actually confused for a bit, because it looked like |
Assigning priority as discussed in the Zulip thread of the Prioritization Working Group. @rustbot label -I-prioritize +P-medium |
Ah, sorry for not catching that -- I probably wouldn't have filed it as a regression if I had (though I guess it is still technically one). |
Code
Library version (choose "Build" from the pulldown):
Binary version:
The two have (slightly) differing output. Note: If you compile as a binary but don't call the problematic function, compilation succeeds. Compiling as a library ICEs even when the function is private.
Meta
Error output
Library version
Binary version
Backtrace (Library version)
Backtrace (Binary version)
Version it worked on
Works on
1.41.0
. Works on versions prior to this down to1.7.0
(spot checked). (Version1.6.0
gives obsoleted errorE0193
.)Versions with regression
Versions
1.42.0
and up (spot checked). The error changes between1.54.0
and1.55.0
.@rustbot modify labels: +regression-from-stable-to-stable -regression-untriaged
The text was updated successfully, but these errors were encountered: