Skip to content

Commit d5bd5db

Browse files
committed
extract helper fn
1 parent 232bd4c commit d5bd5db

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

src/librustc_resolve/lib.rs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1964,9 +1964,7 @@ impl<'a, 'crateloader: 'a> Resolver<'a, 'crateloader> {
19641964
"access to extern crates through prelude is experimental").emit();
19651965
}
19661966

1967-
let crate_id = self.crate_loader.process_path_extern(ident.name, ident.span);
1968-
let crate_root = self.get_module(DefId { krate: crate_id, index: CRATE_DEF_INDEX });
1969-
self.populate_module_if_necessary(crate_root);
1967+
let crate_root = self.load_extern_prelude_crate_if_needed(ident);
19701968

19711969
let binding = (crate_root, ty::Visibility::Public,
19721970
ident.span, Mark::root()).to_name_binding(self.arenas);
@@ -1994,6 +1992,13 @@ impl<'a, 'crateloader: 'a> Resolver<'a, 'crateloader> {
19941992
None
19951993
}
19961994

1995+
fn load_extern_prelude_crate_if_needed(&mut self, ident: Ident) -> Module<'a> {
1996+
let crate_id = self.crate_loader.process_path_extern(ident.name, ident.span);
1997+
let crate_root = self.get_module(DefId { krate: crate_id, index: CRATE_DEF_INDEX });
1998+
self.populate_module_if_necessary(&crate_root);
1999+
crate_root
2000+
}
2001+
19972002
fn hygienic_lexical_parent(&mut self, module: Module<'a>, span: &mut Span)
19982003
-> Option<Module<'a>> {
19992004
if !module.expansion.is_descendant_of(span.ctxt().outer()) {

0 commit comments

Comments
 (0)