Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-def/src/lang_item.rs')
-rw-r--r--crates/hir-def/src/lang_item.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/crates/hir-def/src/lang_item.rs b/crates/hir-def/src/lang_item.rs
index 04acb8b712..9fdfb5f5b3 100644
--- a/crates/hir-def/src/lang_item.rs
+++ b/crates/hir-def/src/lang_item.rs
@@ -111,11 +111,12 @@ pub fn lang_items(db: &dyn DefDatabase, start_crate: Crate) -> LangItems {
// while nameres.
//
// See https://github.com/rust-lang/rust-analyzer/pull/20475 for details.
- for (_, (krate, _)) in crate_local_def_map(db, start_crate).local(db).extern_prelude() {
+ for (_, (module, _)) in crate_local_def_map(db, start_crate).local(db).extern_prelude() {
// Some crates declares themselves as extern crate like `extern crate self as core`.
// Ignore these to prevent cycles.
- if krate.krate != start_crate {
- result.merge_prefer_self(lang_items(db, krate.krate));
+ let krate = module.krate(db);
+ if krate != start_crate {
+ result.merge_prefer_self(lang_items(db, krate));
}
}