-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
Disowned the Visitor. #11161
Disowned the Visitor. #11161
Conversation
I've missed the second user of cc @pcwalton this might interfere with your plans to remove |
It's probably easier to just change the borrow checker to not store reference counted expressions in it. |
Closing for now. Sadly we have a very large queue, and I'd like to keep the queue clear of "work in progress" patches that aren't necessarily ready for merging yet. This is some awesome work though, and thanks! |
@pcwalton turns out the node ID is already there, the |
@@ -592,7 +589,9 @@ pub fn pretty_print_input(sess: Session, | |||
} as @pprust::pp_ann | |||
} | |||
PpmTyped => { | |||
let analysis = phase_3_run_analysis_passes(sess, &crate); | |||
// Should be always Some for ppm == PpmTyped. | |||
let ast_map = ast_map.unwrap(); |
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.
change to expect with a msg, to make the eventual ICE less unpleasant
That is curious. I didn't realize |
The primary user of `@T`/`P<T>` references from `Visitor` was `ast_map`, which in turn had two users (phase 3 in rustc and a step in loading items from metadata). Both of them have been rewritten to use `ast_map` as a folder (this might speed up the compilation time of stage2 rustc by 100-200ms just because a fold + a visit are merged together).
[significant_drop_tightening] Fix rust-lang#11160 Fix rust-lang#11160 ``` changelog: [`significant_drop_tightening`]: Ignore literals in function returns ```
The primary user of
@T
/P<T>
references fromVisitor
wasast_map
, which in turn had two users (phase 3 in rustc and a step in loading items from metadata).Both of them have been rewritten to use
ast_map
as a folder (this might speed up the compilation time of stage2 rustc by 100-200ms just because a fold + a visit are merged together).