diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2024-04-12 04:38:23 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-12 04:38:23 +0200 |
| commit | 7f111834ad7219f32b7bdfb4e2fb4c41ca41c24f (patch) | |
| tree | b2a5132784bc19fe0c4d53d6ac9a09a0021c7135 /compiler/rustc_metadata | |
| parent | 3758e2ffa5f14d1cb50ff6d1436489bb3749f627 (diff) | |
| parent | 4ded0b82caf33969d44b47c20afcbde4cf523424 (diff) | |
Rollup merge of #123827 - petrochenkov:searchdirs, r=Nadrieril
linker: Avoid some allocations in search directory iteration This is more a cleanup than actual optimization.
Diffstat (limited to 'compiler/rustc_metadata')
| -rw-r--r-- | compiler/rustc_metadata/src/native_libs.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/compiler/rustc_metadata/src/native_libs.rs b/compiler/rustc_metadata/src/native_libs.rs index baa2e1ff602..c43b730eccf 100644 --- a/compiler/rustc_metadata/src/native_libs.rs +++ b/compiler/rustc_metadata/src/native_libs.rs @@ -17,12 +17,12 @@ use rustc_target::spec::abi::Abi; use crate::errors; -use std::path::PathBuf; +use std::path::{Path, PathBuf}; -pub fn find_native_static_library( +pub fn find_native_static_library<'a>( name: &str, verbatim: bool, - search_paths: &[PathBuf], + search_paths: impl Iterator<Item = &'a Path>, sess: &Session, ) -> PathBuf { let formats = if verbatim { @@ -60,7 +60,7 @@ fn find_bundled_library( && (sess.opts.unstable_opts.packed_bundled_libs || has_cfg || whole_archive == Some(true)) { let verbatim = verbatim.unwrap_or(false); - let search_paths = &sess.target_filesearch(PathKind::Native).search_path_dirs(); + let search_paths = sess.target_filesearch(PathKind::Native).search_path_dirs(); return find_native_static_library(name.as_str(), verbatim, search_paths, sess) .file_name() .and_then(|s| s.to_str()) |
