Auto merge of #140282 - matthiaskrgr:rollup-g6ze4jj, r=matthiaskrgr
Rollup of 8 pull requests Successful merges: - #137653 (Deprecate the unstable `concat_idents!`) - #138957 (Update the index of Option to make the summary more comprehensive) - #140006 (ensure compiler existance of tools on the dist step) - #140143 (Move `sys::pal::os::Env` into `sys::env`) - #140202 (Make #![feature(let_chains)] bootstrap conditional in compiler/) - #140236 (norm nested aliases before evaluating the parent goal) - #140257 (Some drive-by housecleaning in `rustc_borrowck`) - #140278 (Don't use item name to look up associated item from trait item) r? `@ghost` `@rustbot` modify labels: rollup
This commit is contained in:
commit
8f43b85954
119 changed files with 1408 additions and 1513 deletions
|
|
@ -421,13 +421,13 @@ impl Step for Rustc {
|
|||
builder.install(&rustdoc, &image.join("bin"), FileType::Executable);
|
||||
}
|
||||
|
||||
let ra_proc_macro_srv_compiler =
|
||||
builder.compiler_for(compiler.stage, builder.config.build, compiler.host);
|
||||
builder.ensure(compile::Rustc::new(ra_proc_macro_srv_compiler, compiler.host));
|
||||
|
||||
if let Some(ra_proc_macro_srv) = builder.ensure_if_default(
|
||||
tool::RustAnalyzerProcMacroSrv {
|
||||
compiler: builder.compiler_for(
|
||||
compiler.stage,
|
||||
builder.config.build,
|
||||
compiler.host,
|
||||
),
|
||||
compiler: ra_proc_macro_srv_compiler,
|
||||
target: compiler.host,
|
||||
},
|
||||
builder.kind,
|
||||
|
|
@ -1178,6 +1178,8 @@ impl Step for Cargo {
|
|||
let compiler = self.compiler;
|
||||
let target = self.target;
|
||||
|
||||
builder.ensure(compile::Rustc::new(compiler, target));
|
||||
|
||||
let cargo = builder.ensure(tool::Cargo { compiler, target });
|
||||
let src = builder.src.join("src/tools/cargo");
|
||||
let etc = src.join("src/etc");
|
||||
|
|
@ -1232,6 +1234,8 @@ impl Step for RustAnalyzer {
|
|||
let compiler = self.compiler;
|
||||
let target = self.target;
|
||||
|
||||
builder.ensure(compile::Rustc::new(compiler, target));
|
||||
|
||||
let rust_analyzer = builder.ensure(tool::RustAnalyzer { compiler, target });
|
||||
|
||||
let mut tarball = Tarball::new(builder, "rust-analyzer", &target.triple);
|
||||
|
|
@ -1274,6 +1278,8 @@ impl Step for Clippy {
|
|||
let compiler = self.compiler;
|
||||
let target = self.target;
|
||||
|
||||
builder.ensure(compile::Rustc::new(compiler, target));
|
||||
|
||||
// Prepare the image directory
|
||||
// We expect clippy to build, because we've exited this step above if tool
|
||||
// state for clippy isn't testing.
|
||||
|
|
@ -1324,9 +1330,12 @@ impl Step for Miri {
|
|||
if !builder.build.unstable_features() {
|
||||
return None;
|
||||
}
|
||||
|
||||
let compiler = self.compiler;
|
||||
let target = self.target;
|
||||
|
||||
builder.ensure(compile::Rustc::new(compiler, target));
|
||||
|
||||
let miri = builder.ensure(tool::Miri { compiler, target });
|
||||
let cargomiri = builder.ensure(tool::CargoMiri { compiler, target });
|
||||
|
||||
|
|
@ -1463,6 +1472,8 @@ impl Step for Rustfmt {
|
|||
let compiler = self.compiler;
|
||||
let target = self.target;
|
||||
|
||||
builder.ensure(compile::Rustc::new(compiler, target));
|
||||
|
||||
let rustfmt = builder.ensure(tool::Rustfmt { compiler, target });
|
||||
let cargofmt = builder.ensure(tool::Cargofmt { compiler, target });
|
||||
let mut tarball = Tarball::new(builder, "rustfmt", &target.triple);
|
||||
|
|
@ -2328,6 +2339,8 @@ impl Step for LlvmBitcodeLinker {
|
|||
let compiler = self.compiler;
|
||||
let target = self.target;
|
||||
|
||||
builder.ensure(compile::Rustc::new(compiler, target));
|
||||
|
||||
let llbc_linker =
|
||||
builder.ensure(tool::LlvmBitcodeLinker { compiler, target, extra_features: vec![] });
|
||||
|
||||
|
|
|
|||
|
|
@ -449,6 +449,7 @@ mod dist {
|
|||
use pretty_assertions::assert_eq;
|
||||
|
||||
use super::{Config, TEST_TRIPLE_1, TEST_TRIPLE_2, TEST_TRIPLE_3, first, run_build};
|
||||
use crate::Flags;
|
||||
use crate::core::builder::*;
|
||||
|
||||
fn configure(host: &[&str], target: &[&str]) -> Config {
|
||||
|
|
@ -687,6 +688,37 @@ mod dist {
|
|||
);
|
||||
}
|
||||
|
||||
/// This also serves as an important regression test for <https://github.com/rust-lang/rust/issues/138123>
|
||||
/// and <https://github.com/rust-lang/rust/issues/138004>.
|
||||
#[test]
|
||||
fn dist_all_cross() {
|
||||
let cmd_args =
|
||||
&["dist", "--stage", "2", "--dry-run", "--config=/does/not/exist"].map(str::to_owned);
|
||||
let config_str = r#"
|
||||
[rust]
|
||||
channel = "nightly"
|
||||
|
||||
[build]
|
||||
extended = true
|
||||
|
||||
build = "i686-unknown-haiku"
|
||||
host = ["i686-unknown-netbsd"]
|
||||
target = ["i686-unknown-netbsd"]
|
||||
"#;
|
||||
let config = Config::parse_inner(Flags::parse(cmd_args), |&_| toml::from_str(config_str));
|
||||
let mut cache = run_build(&[], config);
|
||||
|
||||
// Stage 2 `compile::Rustc` should **NEVER** be cached here.
|
||||
assert_eq!(
|
||||
first(cache.all::<compile::Rustc>()),
|
||||
&[
|
||||
rustc!(TEST_TRIPLE_1 => TEST_TRIPLE_1, stage = 0),
|
||||
rustc!(TEST_TRIPLE_1 => TEST_TRIPLE_1, stage = 1),
|
||||
rustc!(TEST_TRIPLE_1 => TEST_TRIPLE_3, stage = 1),
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn build_all() {
|
||||
let build = Build::new(configure(
|
||||
|
|
|
|||
|
|
@ -2,7 +2,10 @@
|
|||
|
||||
The tracking issue for this feature is: [#29599]
|
||||
|
||||
This feature is deprecated, to be replaced by [`macro_metavar_expr_concat`].
|
||||
|
||||
[#29599]: https://github.com/rust-lang/rust/issues/29599
|
||||
[`macro_metavar_expr_concat`]: https://github.com/rust-lang/rust/issues/124225
|
||||
|
||||
------------------------
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue