-
Notifications
You must be signed in to change notification settings - Fork 22
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
Add Self
implsource
#372
Add Self
implsource
#372
Conversation
47cb709
to
aea38f2
Compare
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.
lgtm with a few nits
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.
Cancelling for now, looks like there's a merge conflict and ci failing
68b5719
to
4a4249d
Compare
4a4249d
to
9272888
Compare
Re-introduce `try_normalize_erasing_regions`, but only when we compare two predicate for equality: Rust consider two instance to be overlapping if they differ only in terms of lifetime, thus while trait resolution, this information is useless. Worse, in some situation, two predicates can end up different solely because of lifetimes.
9272888
to
a7463f7
Compare
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.
Lets get this in.
Fixes #370
This PR:
Self
kind forImplSource
. This is useful for generic information within a trait.impl
on function calls.Fixes #20
Note: this PR failing is blocking for @cmester0's #349 and #348.
Since this is a bit urgent, my plan is to make failure silent for now: any backend that relies on this feature will then possibly generate bad code if we hit the edge case that currently makes this PR fails.