-
Notifications
You must be signed in to change notification settings - Fork 13k
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
Link impl items to corresponding trait items in late resolver. #92441
Conversation
@bors try @rust-timer queue |
Awaiting bors try build completion. @rustbot label: +S-waiting-on-perf |
⌛ Trying commit 12d0895e72706e7e04f56436086e311b92004dee with merge 6eefde53ba5a5fd9bfcac37431aafdd496f5aa62... |
☀️ Try build successful - checks-actions |
Queued 6eefde53ba5a5fd9bfcac37431aafdd496f5aa62 with parent f8d4ee7, future comparison URL. |
Finished benchmarking commit (6eefde53ba5a5fd9bfcac37431aafdd496f5aa62): comparison url. Summary: This benchmark run did not return any relevant changes. If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. While you can manually mark this PR as fit for rollup, we strongly recommend not doing so since this PR led to changes in compiler perf. @bors rollup=never |
12d0895
to
554aceb
Compare
This comment has been minimized.
This comment has been minimized.
The `record_used` parameter changes the result, so we must pass the same value for initial and module resolution.
@bors r+ |
📌 Commit 441c1a6 has been approved by |
☀️ Test successful - checks-actions |
Finished benchmarking commit (ec4bcaa): comparison url. Summary: This benchmark run did not return any relevant changes. If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. @rustbot label: -perf-regression |
Hygienically linking trait impl items to declarations in the trait can be done directly by the late resolver. In fact, it is already done to diagnose unknown items.
This PR uses this resolution work and stores the
DefId
of the trait item in the HIR. This avoids having to do this resolution manually later.r? @matthewjasper
Related to #90639. The added
trait_item_id
field can be moved toImplItemRef
to be used directly by your PR.