-
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
HirIdification: kill off NodeId stragglers #59068
Conversation
r? @eddyb (rust_highfive has picked a reviewer for you, use r? to override) |
r? @Zoxc |
@bors r+ |
📌 Commit 584d61a has been approved by |
Where do you get stuck on these? |
With
I can give them another shot and send a WIP PR for further investigation. |
@ljedrz For Feel free to open PRs for the other ones. |
I've tried the generic |
What do you mean by messy?
That will land soon at least. |
There are other objects containing |
How so? I suspect that you can partition most of them into "used during/produced by As an aside, I should reiterate that the Also, things could be slightly nicer by having the HIR represent uses of local variables (including upvars) as a separate |
Hmm, I guess I can give it another shot as soon as #56864 lands 👍. |
#56864 has already landed? EDIT: ah, it landed 3 hours after your post 😛 |
…r=Zoxc HirIdification: kill off NodeId stragglers The final stages of HirIdification (rust-lang#57578). This PR, along with rust-lang#59042, should finalize the HirIdification process (at least the more straightforward bits). - replace `NodeId` with `HirId` in `trait_impls` - remove all `NodeId`s from `borrowck` - remove all `NodeId`s from `typeck` - remove all `NodeId`s from `mir` - remove `trait_auto_impl` (unused) I would be cool to also remove `NodeId` from `hir::def::Def`, `middle::privacy::AccessLevel` and `hir::ItemId`, but I don't know if this is feasible. I'll be happy to do more if I've missed anything.
…r=Zoxc HirIdification: kill off NodeId stragglers The final stages of HirIdification (rust-lang#57578). This PR, along with rust-lang#59042, should finalize the HirIdification process (at least the more straightforward bits). - replace `NodeId` with `HirId` in `trait_impls` - remove all `NodeId`s from `borrowck` - remove all `NodeId`s from `typeck` - remove all `NodeId`s from `mir` - remove `trait_auto_impl` (unused) I would be cool to also remove `NodeId` from `hir::def::Def`, `middle::privacy::AccessLevel` and `hir::ItemId`, but I don't know if this is feasible. I'll be happy to do more if I've missed anything.
⌛ Testing commit 584d61a with merge c3182db4e8af03d6af9504e6a5389d1d4f4e861c... |
☀️ Test successful - checks-travis, status-appveyor |
👀 Test was successful, but fast-forwarding failed: 422 Update is not a fast forward |
@bors retry |
HirIdification: kill off NodeId stragglers The final stages of HirIdification (#57578). This PR, along with #59042, should finalize the HirIdification process (at least the more straightforward bits). - replace `NodeId` with `HirId` in `trait_impls` - remove all `NodeId`s from `borrowck` - remove all `NodeId`s from `typeck` - remove all `NodeId`s from `mir` - remove `trait_auto_impl` (unused) I would be cool to also remove `NodeId` from `hir::def::Def`, `middle::privacy::AccessLevel` and `hir::ItemId`, but I don't know if this is feasible. I'll be happy to do more if I've missed anything.
☀️ Test successful - checks-travis, status-appveyor |
@ljedrz Did you try dealing with |
@ljedrz I made some progress in https://github.com/Zoxc/rust/tree/hiridify_def_id, but I run into issues lowering |
@Zoxc Can't you allocate the |
The final stages of HirIdification (#57578).
This PR, along with #59042, should finalize the HirIdification process (at least the more straightforward bits).
NodeId
withHirId
intrait_impls
NodeId
s fromborrowck
NodeId
s fromtypeck
NodeId
s frommir
trait_auto_impl
(unused)I would be cool to also remove
NodeId
fromhir::def::Def
,middle::privacy::AccessLevel
andhir::ItemId
, but I don't know if this is feasible.I'll be happy to do more if I've missed anything.