Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-def/src/data.rs')
| -rw-r--r-- | crates/hir-def/src/data.rs | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/crates/hir-def/src/data.rs b/crates/hir-def/src/data.rs index 4fb4794d4a..91db68058b 100644 --- a/crates/hir-def/src/data.rs +++ b/crates/hir-def/src/data.rs @@ -468,7 +468,7 @@ pub struct ExternCrateDeclData { pub name: Name, pub alias: Option<ImportAlias>, pub visibility: RawVisibility, - pub crate_id: CrateId, + pub crate_id: Option<CrateId>, } impl ExternCrateDeclData { @@ -482,15 +482,12 @@ impl ExternCrateDeclData { let name = extern_crate.name.clone(); let crate_id = if name == hir_expand::name![self] { - loc.container.krate() + Some(loc.container.krate()) } else { db.crate_def_map(loc.container.krate()) .extern_prelude() .find(|&(prelude_name, ..)| *prelude_name == name) - // FIXME: Suspicious unwrap - .unwrap() - .1 - .krate() + .map(|(_, root)| root.krate()) }; Arc::new(Self { |