Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-def/src/nameres.rs')
-rw-r--r--crates/hir-def/src/nameres.rs7
1 files changed, 5 insertions, 2 deletions
diff --git a/crates/hir-def/src/nameres.rs b/crates/hir-def/src/nameres.rs
index 3b6e3c5916..5b3d75c4ee 100644
--- a/crates/hir-def/src/nameres.rs
+++ b/crates/hir-def/src/nameres.rs
@@ -295,9 +295,12 @@ impl ModuleOrigin {
/// That is, a file or a `mod foo {}` with items.
pub fn definition_source(&self, db: &dyn DefDatabase) -> InFile<ModuleSource> {
match self {
- &ModuleOrigin::File { definition, .. } | &ModuleOrigin::CrateRoot { definition } => {
+ &ModuleOrigin::File { definition: editioned_file_id, .. }
+ | &ModuleOrigin::CrateRoot { definition: editioned_file_id } => {
+ let definition = base_db::EditionedFileId::new(db, editioned_file_id);
+
let sf = db.parse(definition).tree();
- InFile::new(definition.into(), ModuleSource::SourceFile(sf))
+ InFile::new(editioned_file_id.into(), ModuleSource::SourceFile(sf))
}
&ModuleOrigin::Inline { definition, definition_tree_id } => InFile::new(
definition_tree_id.file_id(),