about summary refs log tree commit diff
path: root/compiler/rustc_trait_selection/src
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2025-02-23 05:03:26 +0000
committerbors <bors@rust-lang.org>2025-02-23 05:03:26 +0000
commitbb2cc59a2172d6e35c89b409a4e6b5058d9039d7 (patch)
tree45d56646c580fe943bbe71432c20cdd370ac6075 /compiler/rustc_trait_selection/src
parentbca5f37cbded0db8d37414bb08c4b101a5f26d36 (diff)
parent76063a683f2ef7530d07301127027488f1ecec8d (diff)
downloadrust-bb2cc59a2172d6e35c89b409a4e6b5058d9039d7.tar.gz
rust-bb2cc59a2172d6e35c89b409a4e6b5058d9039d7.zip
Auto merge of #137215 - onur-ozkan:rustc-tool-build-stages, r=jieyouxu,Kobzol
stabilize stage management for rustc tools

https://github.com/rust-lang/rust/pull/135990 got out of control due to excessive complexity. This PR aims to achieve the same goal with a simpler approach, likely through multiple smaller PRs. I will keep the other one read-only and open as a reference for future work.

This work stabilizes the staging logic for `ToolRustc` programs, so you no longer need to handle build and target compilers separately in steps. Previously, most tools didn't do this correctly, which was causing the compiler to be built twice (e.g., `x test cargo --stage 1` would compile the stage 2 compiler before, but now it only compiles the stage 1 compiler).

I also tried to document how we should write `ToolRustc` steps as they are quite different and require more attention than other tools.

Next goal is to stabilize how stages are handled for the rustc itself. Currently, `x build --stage 1` builds the stage 1 compiler which is fine, but `x build compiler --stage 1` builds stage 2 compiler.

~~for now, r? ghost~~
Diffstat (limited to 'compiler/rustc_trait_selection/src')
0 files changed, 0 insertions, 0 deletions