about summary refs log tree commit diff
path: root/compiler/rustc_resolve/src/errors.rs
diff options
context:
space:
mode:
authorJacob Pratt <jacob@jhpratt.dev>2025-08-21 01:12:17 -0400
committerGitHub <noreply@github.com>2025-08-21 01:12:17 -0400
commit62582eb78ed097cfaee941faef36c2de4a41ca41 (patch)
treeb5deef3e887a5585e4679467615be37a406d9731 /compiler/rustc_resolve/src/errors.rs
parent537d5f40a6d45c3531df85555952e277977fbaaf (diff)
parent2ea7e7da0074d4b7fa69008f5f7c5c995f39eec3 (diff)
downloadrust-62582eb78ed097cfaee941faef36c2de4a41ca41.tar.gz
rust-62582eb78ed097cfaee941faef36c2de4a41ca41.zip
Rollup merge of #145390 - joshtriplett:rustc-diag-value-earlier, r=lcnr
Shorten some dependency chains in the compiler

(I recommend reviewing this commit by commit.)

One of the long dependency chains in the compiler is:
- Many things depend on `rustc_errors`.
- `rustc_errors` depended on many things prior to this PR, including `rustc_target`, `rustc_type_ir`, `rustc_hir`, and `rustc_lint_defs`.
- `rustc_lint_defs` depended on `rustc_hir` prior to this PR.
- `rustc_hir` depends on `rustc_target`.
- `rustc_target` is large and takes a while.

This PR breaks that chain, through a few steps:
- The `IntoDiagArgs` trait, from `rustc_errors`, moves earlier in the dependency chain. This allows `rustc_errors` to stop depending on a pile of crates just to implement `IntoDiagArgs` for their types.
- Split `rustc_hir_id` out of `rustc_hir`, so crates that just need `HirId` and similar don't depend on all of `rust_hir` (and thus `rustc_target`).
- Make `rustc_lint_defs` stop depending on `rustc_hir`.
Diffstat (limited to 'compiler/rustc_resolve/src/errors.rs')
0 files changed, 0 insertions, 0 deletions