aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_def/src/nameres/collector.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_hir_def/src/nameres/collector.rs')
-rw-r--r--crates/ra_hir_def/src/nameres/collector.rs11
1 files changed, 6 insertions, 5 deletions
diff --git a/crates/ra_hir_def/src/nameres/collector.rs b/crates/ra_hir_def/src/nameres/collector.rs
index 7e6083961..6db9937a4 100644
--- a/crates/ra_hir_def/src/nameres/collector.rs
+++ b/crates/ra_hir_def/src/nameres/collector.rs
@@ -36,11 +36,12 @@ pub(super) fn collect_defs(db: &impl DefDatabase2, mut def_map: CrateDefMap) ->
36 ); 36 );
37 37
38 // look for the prelude 38 // look for the prelude
39 if def_map.prelude.is_none() { 39 // If the dependency defines a prelude, we overwrite an already defined
40 let map = db.crate_def_map(dep.crate_id); 40 // prelude. This is necessary to import the "std" prelude if a crate
41 if map.prelude.is_some() { 41 // depends on both "core" and "std".
42 def_map.prelude = map.prelude; 42 let dep_def_map = db.crate_def_map(dep.crate_id);
43 } 43 if dep_def_map.prelude.is_some() {
44 def_map.prelude = dep_def_map.prelude;
44 } 45 }
45 } 46 }
46 47