-
Notifications
You must be signed in to change notification settings - Fork 13.1k
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
Refactored ast_map and friends, mainly to have Paths without storing them. #12162
Conversation
Could you also add rationale for why this was done and the direction it's going in? I'm mostly just curious, I'm not really sure what the impetus for this was. |
I wanted to remove all the cloning associated with In the process of adapting the codebase to that model, I've come across the inefficient and deprecated methods on |
FWIW, it's much easier to review when things are not just a single monolithic 4500 line commit, so it's generally good practice to avoid the temptation to do too many things at once (which I'm not very good at either...). In any case, a longer commit message describing what's changing and why (so that it's possible to deduce it from the git history/git blame) is something that should be possible now. |
This seems like a fairly large change to the code base, and I just wanna make sure that you've talked it over with others first (it's certainly fine if you have already). |
cc me (I want to read over) |
I've been skimming at a high-level. This mostly makes sense, I think, but I'm not a fan of the Anyway, my biggest concern is that I fear the interaction with #12158 -- in particular, lazy iterators often cause borrow checker conflicts, since their closures claim the data they touch for the entirety of the iteration. This means that if you have But i'd request that PR #12158 land first, since I think closing up soundness holes takes higher precedence and I have no desire to undo work this PR does. |
|
I was wondering whether we could remove the |
I've renamed @cmr has been nice enough to send my branch to try, yielding this interesting test failure. |
|
||
// See comment in `encode_side_tables_for_ii` in astencode | ||
let ecx_ptr : *int = unsafe { cast::transmute(ecx) }; | ||
let ecx_ptr: *int = unsafe { cast::transmute(ecx) }; |
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.
Pre-existing, but this is ... goofy! We should be able to remove this by now.
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.
Thought so myself, then forgot about it.
blocks_in_conditions: do not warn if condition comes from macro changelog: [`blocks_in_conditions`]: do not warn if condition comes from macro Fix rust-lang#12162
No description provided.