diff options
Diffstat (limited to 'crates/ra_hir_def/src/resolver.rs')
-rw-r--r-- | crates/ra_hir_def/src/resolver.rs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/crates/ra_hir_def/src/resolver.rs b/crates/ra_hir_def/src/resolver.rs index b57dcf635..950bf6c79 100644 --- a/crates/ra_hir_def/src/resolver.rs +++ b/crates/ra_hir_def/src/resolver.rs | |||
@@ -466,10 +466,16 @@ impl Scope { | |||
466 | f(name.clone(), ScopeDef::PerNs(def)); | 466 | f(name.clone(), ScopeDef::PerNs(def)); |
467 | }); | 467 | }); |
468 | m.crate_def_map[m.module_id].scope.legacy_macros().for_each(|(name, macro_)| { | 468 | m.crate_def_map[m.module_id].scope.legacy_macros().for_each(|(name, macro_)| { |
469 | f(name.clone(), ScopeDef::PerNs(PerNs::macros(macro_))); | 469 | f( |
470 | name.clone(), | ||
471 | ScopeDef::PerNs(PerNs::macros(macro_, ResolvedVisibility::Public)), | ||
472 | ); | ||
470 | }); | 473 | }); |
471 | m.crate_def_map.extern_prelude.iter().for_each(|(name, &def)| { | 474 | m.crate_def_map.extern_prelude.iter().for_each(|(name, &def)| { |
472 | f(name.clone(), ScopeDef::PerNs(PerNs::types(def.into()))); | 475 | f( |
476 | name.clone(), | ||
477 | ScopeDef::PerNs(PerNs::types(def.into(), ResolvedVisibility::Public)), | ||
478 | ); | ||
473 | }); | 479 | }); |
474 | if let Some(prelude) = m.crate_def_map.prelude { | 480 | if let Some(prelude) = m.crate_def_map.prelude { |
475 | let prelude_def_map = db.crate_def_map(prelude.krate); | 481 | let prelude_def_map = db.crate_def_map(prelude.krate); |