From 15e49699cab6d00fe626bff14c32e90860b99d21 Mon Sep 17 00:00:00 2001 From: Jieyou Xu Date: Thu, 11 Dec 2025 20:57:34 +0800 Subject: [PATCH] bootstrap: skip r-a main tests against 32-bit targets We don't really have a good way to get the target pointer width in bootstrap (yet), so I had to resort to hacky target tuple substring matches. This commit currently only gates on `i686-*` targets, which are 32-bits, and does not try to gate on `i586-*` targets (I need to run try jobs to check if r-a tests actually get run.) --- src/bootstrap/src/core/build_steps/test.rs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/bootstrap/src/core/build_steps/test.rs b/src/bootstrap/src/core/build_steps/test.rs index 59fcf761d9fc..6e2718f9f835 100644 --- a/src/bootstrap/src/core/build_steps/test.rs +++ b/src/bootstrap/src/core/build_steps/test.rs @@ -468,6 +468,19 @@ impl Step for RustAnalyzer { let build_compiler = self.compilers.build_compiler(); let target = self.compilers.target(); + // NOTE: rust-analyzer repo currently (as of 2025-12-11) does not run tests against 32-bit + // targets, so we also don't run them in rust-lang/rust CI (because that will just mean that + // subtree syncs will keep getting 32-bit-specific failures that are not observed in + // rust-analyzer repo CI). + // + // Some 32-bit specific failures include e.g. target pointer width specific hashes. + + // FIXME: eventually, we should probably reduce the amount of target tuple substring + // matching in bootstrap. + if target.starts_with("i686") { + return; + } + let mut cargo = tool::prepare_tool_cargo( builder, build_compiler,