diff options
Diffstat (limited to 'src/processors')
-rw-r--r-- | src/processors/resolver.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/processors/resolver.rs b/src/processors/resolver.rs index 969b817..b4bcc80 100644 --- a/src/processors/resolver.rs +++ b/src/processors/resolver.rs @@ -187,7 +187,7 @@ impl Resolver { for symbol in symbols { if let SymbolRole::Definition(_) = symbol.role { for unresolved in &self.unresolved { - if unresolved.symbol.name == symbol.name { + if symbol.defines(&unresolved.symbol) { return Some(unresolved.source_id); } } @@ -206,7 +206,7 @@ impl Resolver { } // Populate the .parent_ids field of every source unit. for reference in &self.resolved { - let predicate = |d: &&TrackedDefinition| d.tracked.symbol.name == reference.tracked.symbol.name; + let predicate = |d: &&TrackedDefinition| d.tracked.symbol.defines(&reference.tracked.symbol); if let Some(definition) = self.definitions.iter().find(predicate) { // A unit cannot be its own parent. let is_self = reference.tracked.source_id == definition.tracked.source_id; |