-
Notifications
You must be signed in to change notification settings - Fork 13.9k
AliasRelate: don't discard constraints on overflow #148069
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
base: master
Are you sure you want to change the base?
Conversation
|
☔ The latest upstream changes (presumably #148066) made this pull request unmergeable. Please resolve the merge conflicts. |
| // won't be a breaking change, so this is good enough for now. | ||
| return Ok(self.make_ambiguous_response_no_constraints(cause, opaque_types_jank)); | ||
| match self.current_goal_kind { | ||
| CurrentGoalKind::AliasRelate | CurrentGoalKind::NormalizesTo => {} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
right so here you'd have previously discarded (since AliasRelate got CurrentGoalKind::Misc but now you take this top branch). I'm not 100% sure why you also go here for NormalizesTo. That'd have previously discarded.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That'd have previously discarded.
they wouldn't have, because for NormalizesTo we use the shallow_certainty due to the above match (self.current_goal_kind, shallow_certainty). That's subtle though
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe document it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Or somehow combine the two checks, such that all the ways in which we care about self.current_goal_kind are handled exhaustively. I'm not sure that ends up working though, could also turn out more confusing rather than less
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tried: combining doesn't produce a nice check, maybe just document?
3620c77 to
eaf4dbd
Compare
kinda fixes rust-lang/trait-system-refactor-initiative#246
r? @BoxyUwU