about summary refs log tree commit diff
path: root/compiler/rustc_session/src
diff options
context:
space:
mode:
authorMads Marquart <mads@marquart.dk>2024-10-10 11:46:11 +0200
committerMads Marquart <mads@marquart.dk>2024-10-10 11:46:11 +0200
commit1edff466e19c4e2e2f8035de5a25d8a2dc2fef96 (patch)
treeb1ddce0dea9ab9ab2e205c8cbdea31ef64fed366 /compiler/rustc_session/src
parentdf1b5d3cc2117f1ee96abca25678bc5f5604d450 (diff)
downloadrust-1edff466e19c4e2e2f8035de5a25d8a2dc2fef96.tar.gz
rust-1edff466e19c4e2e2f8035de5a25d8a2dc2fef96.zip
Avoid redundant additions to PATH when linking
Diffstat (limited to 'compiler/rustc_session/src')
-rw-r--r--compiler/rustc_session/src/session.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler/rustc_session/src/session.rs b/compiler/rustc_session/src/session.rs
index d67e69fe0fb..27879d817b2 100644
--- a/compiler/rustc_session/src/session.rs
+++ b/compiler/rustc_session/src/session.rs
@@ -454,6 +454,8 @@ impl Session {
         let bin_path = filesearch::make_target_bin_path(&self.sysroot, config::host_triple());
         let fallback_sysroot_paths = filesearch::sysroot_candidates()
             .into_iter()
+            // Ignore sysroot candidate if it was the same as the sysroot path we just used.
+            .filter(|sysroot| *sysroot != self.sysroot)
             .map(|sysroot| filesearch::make_target_bin_path(&sysroot, config::host_triple()));
         let search_paths = std::iter::once(bin_path).chain(fallback_sysroot_paths);