Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir/src/semantics/source_to_def.rs')
| -rw-r--r-- | crates/hir/src/semantics/source_to_def.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/crates/hir/src/semantics/source_to_def.rs b/crates/hir/src/semantics/source_to_def.rs index c50ffa4f8b..12257247c8 100644 --- a/crates/hir/src/semantics/source_to_def.rs +++ b/crates/hir/src/semantics/source_to_def.rs @@ -119,7 +119,9 @@ impl SourceToDefCtx<'_, '_> { pub(super) fn file_to_def(&self, file: FileId) -> SmallVec<[ModuleId; 1]> { let _p = profile::span("SourceBinder::to_module_def"); let mut mods = SmallVec::new(); - for &crate_id in self.db.relevant_crates(file).iter() { + // HACK: We iterate in reverse so that dev-dependency duplicated crates appear first in this + // Most code only deals with one module and we want to prefer the test enabled code where possible + for &crate_id in self.db.relevant_crates(file).iter().rev() { // FIXME: inner items let crate_def_map = self.db.crate_def_map(crate_id); mods.extend( |