about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMatthias Krüger <matthias.krueger@famsik.de>2023-08-04 09:19:00 +0200
committerGitHub <noreply@github.com>2023-08-04 09:19:00 +0200
commit50f47d907d3470047b29529f694d5a3093604e65 (patch)
treefbbbffae7ec6cbd8c632b2e6c73b7a528c8dc061
parent4fb44e59c4e799de9f58d1d32f862519b76cca69 (diff)
parent31a81a08786826cc6e832bd0b49fb8b934e29648 (diff)
downloadrust-50f47d907d3470047b29529f694d5a3093604e65.tar.gz
rust-50f47d907d3470047b29529f694d5a3093604e65.zip
Rollup merge of #114440 - kaniini:fix/bootstrap-version-compare, r=ozkanonur
bootstrap: config: fix version comparison bug

Rust requires a previous version of Rust to build, such as the current version, or the previous version.  However, the version comparison logic did not take patch releases into consideration when doing the version comparison for the current branch, e.g. Rust 1.71.1 could not be built by Rust 1.71.0 because it is neither an exact version match, or the previous version.

Adjust the version comparison logic to tolerate mismatches in the patch version.
-rw-r--r--src/bootstrap/config.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs
index bec0b11acd0..da60166b84d 100644
--- a/src/bootstrap/config.rs
+++ b/src/bootstrap/config.rs
@@ -2004,7 +2004,8 @@ impl Config {
                 .unwrap();
         if !(source_version == rustc_version
             || (source_version.major == rustc_version.major
-                && source_version.minor == rustc_version.minor + 1))
+                && (source_version.minor == rustc_version.minor
+                    || source_version.minor == rustc_version.minor + 1)))
         {
             let prev_version = format!("{}.{}.x", source_version.major, source_version.minor - 1);
             eprintln!(