-
Notifications
You must be signed in to change notification settings - Fork 13.2k
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
rustc: remove Ty::{is_self, has_self_ty}. #53677
Conversation
(rust_highfive has picked a reviewer for you, use r? to override) |
@bors try |
rustc: remove Ty::{is_self, has_self_ty}. Fixes #50125 by replacing special-casing of `Self` (and the gensym hack) with getting the type for the `Self` parameter from the trait, and comparing types with that, instead. **NOTE**: this is part of #53661, split out to independently check performance impact.
☀️ Test successful - status-travis |
@rust-timer build 9a46196 |
Success: Queued 9a46196 with parent 61b0072, comparison URL. |
@nikomatsakis I'm surprised this makes a difference, but it's tiny. I'm going to push the next commit from #53661 (adding |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
@bors try |
⌛ Trying commit 79068b7 with merge 8bb91571ea5e75db22742d30e8ccca58b0bda2ee... |
☀️ Test successful - status-travis |
This comment has been minimized.
This comment has been minimized.
@rust-timer build 8bb91571ea5e75db22742d30e8ccca58b0bda2ee |
Success: Queued 8bb91571ea5e75db22742d30e8ccca58b0bda2ee with parent f87d913, comparison URL. |
Ok now perf results are ready :3 |
I wrote up the results in #53661 (comment), I'm closing this PR to keep things simple. |
Fixes #50125 by replacing special-casing of
Self
(and the gensym hack) with getting the type for theSelf
parameter from the trait, and comparing types with that, instead.NOTE: this is part of #53661, split out to independently check performance impact.