Macro definitions should be regular HIR items · Issue #87406 · rust-lang/rust (original) (raw)

Macro definitions are currently handled separately from other item kinds in HIR, either as MacroDef nodes inside hir::Crate::exported_macros or as using the hir::Crate::non_exported_macro_attrs.

They should be transformed into additional variants in the hir::ItemKind enum, and iterated over like any other item.

Instructions:

I recomment waiting on #83723 and #87234 to be merged.

Original idea by @petrochenkov in #83723 (comment)
Should help with #73754