-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Rollup of 5 pull requests #68360
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Rollup of 5 pull requests #68360
Conversation
For now, this is all the crate contains, but more attribute logic & types will be moved there over time.
2. invert rustc_session & syntax deps 3. drop rustc_session dep in rustc_hir
2. as a result, drop rustc_errors dep from syntax
It's confusing because it conflicts with ty::Const and just isn't generally useful.
…ef, r=Dylan-DPC [const-prop] Remove useless typedef It's confusing because it conflicts with `ty::Const` and just isn't generally useful.
Slimmer syntax High-level summary of changes: - The `syntax::node_count` pass is moved into `rustc_ast_passes`. This works towards improving rust-lang#65031 by making compiling `syntax` go faster. - The `syntax::{GLOBALS, with_globals, ..}` business is consolidated into `syntax::attr` for cleaner code and future possible improvements. - The pretty printer loses its dependency on `ParseSess`, opting to use `SourceMap` & friends directly instead. - Some drive by cleanup of `syntax::attr::HasAttr` happens. - Builtin attribute logic (`syntax::attr::builtin`) + `syntax::attr::allow_internal_unstable` is moved into a new `rustc_attr` crate. More logic from `syntax::attr` should be moved into that crate over time. This also means that `syntax` loses all mentions of `ParseSess`, which enables the next point. - The pretty printer `syntax::print` is moved into a new crate `rustc_ast_pretty`. - `rustc_session::node_id` is moved back as `syntax::node_id`. As a result, `syntax` gets to drop dependencies on `rustc_session` (and implicitly `rustc_target`), `rustc_error_codes`, and `rustc_errors`. Moreover `rustc_hir` gets to drop its dependency on `rustc_session` as well. At this point, these crates are mostly "pure data crates", which is approaching a desirable end state. - We should consider renaming `syntax` to `rustc_ast` now.
…, r=Mark-Simulacrum Add more BTreeMap/BTreeSet benchmarks regarding iteration Serving rust-lang#67073 or other developments
…r=Dylan-DPC Clean up err codes r? @Dylan-DPC
Make iter::Empty<T> Send and Sync for any T Continuing from rust-lang#57682 It's quite funny, when I initially submitted this pull request, I said "Likely nobody will be using that property of `iter::empty`", but then a year later I got a compilation error because it wasn't `Send` and `Sync`. Unfortunately, `PhantomData<fn() -> T>` still errors out. Oh well. I proposed ` struct PhantomFnWorkaround<T>(fn() -> T);`, but dtolnay did not like it, so using explicit implementations.
@bors r+ rollup=never p=5 |
📌 Commit cfc0f54 has been approved by |
Rollup of 5 pull requests Successful merges: - #67682 ([const-prop] Remove useless typedef) - #68133 (Slimmer syntax) - #68154 (Add more BTreeMap/BTreeSet benchmarks regarding iteration) - #68247 (Clean up err codes) - #68348 (Make iter::Empty<T> Send and Sync for any T) Failed merges: - #68353 (Remove `rustc_error_codes` deps except in `rustc_driver`) r? @ghost
The job Click to expand the log.
I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
💔 Test failed - checks-azure |
Successful merges:
Failed merges:
rustc_error_codes
deps except inrustc_driver
#68353 (Removerustc_error_codes
deps except inrustc_driver
)r? @ghost