diff options
Diffstat (limited to 'crates/hir_def/src/nameres/collector.rs')
-rw-r--r-- | crates/hir_def/src/nameres/collector.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/crates/hir_def/src/nameres/collector.rs b/crates/hir_def/src/nameres/collector.rs index be645a25d..02ceb8d50 100644 --- a/crates/hir_def/src/nameres/collector.rs +++ b/crates/hir_def/src/nameres/collector.rs | |||
@@ -246,7 +246,7 @@ struct DefCollector<'a> { | |||
246 | proc_macros: Vec<(Name, ProcMacroExpander)>, | 246 | proc_macros: Vec<(Name, ProcMacroExpander)>, |
247 | exports_proc_macros: bool, | 247 | exports_proc_macros: bool, |
248 | from_glob_import: PerNsGlobImports, | 248 | from_glob_import: PerNsGlobImports, |
249 | ignore_attrs_on: FxHashSet<ModItem>, | 249 | ignore_attrs_on: FxHashSet<InFile<ModItem>>, |
250 | } | 250 | } |
251 | 251 | ||
252 | impl DefCollector<'_> { | 252 | impl DefCollector<'_> { |
@@ -372,9 +372,9 @@ impl DefCollector<'_> { | |||
372 | let mut added_items = false; | 372 | let mut added_items = false; |
373 | let unexpanded_macros = std::mem::replace(&mut self.unexpanded_macros, Vec::new()); | 373 | let unexpanded_macros = std::mem::replace(&mut self.unexpanded_macros, Vec::new()); |
374 | for directive in &unexpanded_macros { | 374 | for directive in &unexpanded_macros { |
375 | if let MacroDirectiveKind::Attr { mod_item, .. } = &directive.kind { | 375 | if let MacroDirectiveKind::Attr { ast_id, mod_item, .. } = &directive.kind { |
376 | // Make sure to only add such items once. | 376 | // Make sure to only add such items once. |
377 | if !self.ignore_attrs_on.insert(*mod_item) { | 377 | if !self.ignore_attrs_on.insert(ast_id.ast_id.with_value(*mod_item)) { |
378 | continue; | 378 | continue; |
379 | } | 379 | } |
380 | 380 | ||
@@ -1463,7 +1463,7 @@ impl ModCollector<'_, '_> { | |||
1463 | 1463 | ||
1464 | // We failed to resolve an attribute on this item earlier, and are falling back to treating | 1464 | // We failed to resolve an attribute on this item earlier, and are falling back to treating |
1465 | // the item as-is. | 1465 | // the item as-is. |
1466 | if self.def_collector.ignore_attrs_on.contains(&mod_item) { | 1466 | if self.def_collector.ignore_attrs_on.contains(&InFile::new(self.file_id, mod_item)) { |
1467 | return Ok(()); | 1467 | return Ok(()); |
1468 | } | 1468 | } |
1469 | 1469 | ||