From: Pierre-Emmanuel Patry <[email protected]>

HIR map is getting bigger and harder to use. This commit regroup all
proc macro related operations under one subclass.

gcc/rust/ChangeLog:

        * expand/rust-macro-expand.h (struct MacroExpander): Use new macro
        category.
        * resolve/rust-early-name-resolver-2.0.cc 
(Early::visit_derive_attribute):
        Likewise.
        (Early::visit_non_builtin_attribute): Likewise.
        * resolve/rust-toplevel-name-resolver-2.0.cc 
(TopLevel::visit_extern_crate):
        Likewise.
        * rust-session-manager.cc (Session::load_extern_crate): Likewise.
        * util/rust-hir-map.cc (Mappings::insert_derive_proc_macros): Move to
        specialized macro class declartion.
        (Mappings::insert_bang_proc_macros): Move from here...
        (ProcMacroMappings::insert_bang_proc_macros): ... to here.
        (Mappings::insert_attribute_proc_macros): Likewise.
        (Mappings::lookup_derive_proc_macros): Likewise.
        (ProcMacroMappings::lookup_derive_proc_macros): Likewise.
        (Mappings::lookup_bang_proc_macros): Likewise.
        (ProcMacroMappings::lookup_bang_proc_macros): Likewise.
        (Mappings::lookup_attribute_proc_macros): Likewise.
        (ProcMacroMappings::lookup_attribute_proc_macros): Likewise.
        (Mappings::insert_derive_proc_macro_def): Likewise.
        (ProcMacroMappings::insert_derive_proc_macro_def): Likewise.
        (Mappings::insert_bang_proc_macro_def): Likewise.
        (ProcMacroMappings::insert_bang_proc_macro_def): Likewise.
        (Mappings::insert_attribute_proc_macro_def): Likewise.
        (ProcMacroMappings::insert_attribute_proc_macro_def): Likewise.
        (Mappings::lookup_derive_proc_macro_def): Likewise.
        (ProcMacroMappings::lookup_derive_proc_macro_def): Likewise.
        (Mappings::lookup_bang_proc_macro_def): Likewise.
        (ProcMacroMappings::lookup_bang_proc_macro_def): Likewise.
        (Mappings::lookup_attribute_proc_macro_def): Likewise.
        (ProcMacroMappings::lookup_attribute_proc_macro_def): Likewise.
        (Mappings::insert_derive_proc_macro_invocation): Likewise.
        (Mappings::lookup_derive_proc_macro_invocation): Likewise.
        (ProcMacroMappings::lookup_derive_proc_macro_invocation): Likewise.
        (Mappings::insert_bang_proc_macro_invocation): Likewise.
        (Mappings::lookup_bang_proc_macro_invocation): Likewise.
        (Mappings::insert_attribute_proc_macro_invocation): Likewise.
        (Mappings::lookup_attribute_proc_macro_invocation): Likewise.
        * util/rust-hir-map.h (class ProcMacroMappings): Add specialized class
        for macro mappings.

Signed-off-by: Pierre-Emmanuel Patry <[email protected]>
---
This change was merged into the gccrs repository and is posted here for
upstream visibility and potential drive-by review, as requested by GCC
release managers.
Each commit email contains a link to its details on github from where you can
find the Pull-Request and associated discussions.


Commit on github: 
https://github.com/Rust-GCC/gccrs/commit/ca171ca99083f03300e14eefca957c2e93f81078

The commit has NOT been mentioned in any issue.

The commit has been mentioned in the following pull-request(s):
 - https://github.com/Rust-GCC/gccrs/pull/4878

 gcc/rust/expand/rust-macro-expand.h           |   6 +-
 .../resolve/rust-early-name-resolver-2.0.cc   |  11 +-
 .../rust-toplevel-name-resolver-2.0.cc        |  13 ++-
 gcc/rust/rust-session-manager.cc              |   7 +-
 gcc/rust/util/rust-hir-map.cc                 |  50 +++++----
 gcc/rust/util/rust-hir-map.h                  | 106 +++++++++---------
 6 files changed, 101 insertions(+), 92 deletions(-)

diff --git a/gcc/rust/expand/rust-macro-expand.h 
b/gcc/rust/expand/rust-macro-expand.h
index 23e98e071..ddd433c39 100644
--- a/gcc/rust/expand/rust-macro-expand.h
+++ b/gcc/rust/expand/rust-macro-expand.h
@@ -412,7 +412,7 @@ struct MacroExpander
   AST::Fragment expand_derive_proc_macro (T &item, AST::SimplePath &path)
   {
     tl::optional<CustomDeriveProcMacro &> macro
-      = mappings.lookup_derive_proc_macro_invocation (path);
+      = mappings.pmacro_mappings.lookup_derive_proc_macro_invocation (path);
     if (!macro.has_value ())
       {
        rust_error_at (path.get_locus (), "macro not found");
@@ -435,7 +435,7 @@ struct MacroExpander
                                        AST::MacroInvocation &invocation)
   {
     tl::optional<BangProcMacro &> macro
-      = mappings.lookup_bang_proc_macro_invocation (invocation);
+      = mappings.pmacro_mappings.lookup_bang_proc_macro_invocation 
(invocation);
     if (!macro.has_value ())
       {
        rust_error_at (invocation.get_locus (), "macro not found");
@@ -457,7 +457,7 @@ struct MacroExpander
   AST::Fragment expand_attribute_proc_macro (T &item, AST::SimplePath &path)
   {
     tl::optional<AttributeProcMacro &> macro
-      = mappings.lookup_attribute_proc_macro_invocation (path);
+      = mappings.pmacro_mappings.lookup_attribute_proc_macro_invocation (path);
     if (!macro.has_value ())
       {
        rust_error_at (path.get_locus (), "macro not found");
diff --git a/gcc/rust/resolve/rust-early-name-resolver-2.0.cc 
b/gcc/rust/resolve/rust-early-name-resolver-2.0.cc
index aae601e92..d4d0cb8e1 100644
--- a/gcc/rust/resolve/rust-early-name-resolver-2.0.cc
+++ b/gcc/rust/resolve/rust-early-name-resolver-2.0.cc
@@ -402,11 +402,12 @@ Early::visit_derive_attribute (AST::Attribute &attr,
          continue;
        }
 
-      auto pm_def = mappings.lookup_derive_proc_macro_def (
+      auto pm_def = mappings.pmacro_mappings.lookup_derive_proc_macro_def (
        ns_def->definition.get_node_id ());
 
       if (pm_def.has_value ())
-       mappings.insert_derive_proc_macro_invocation (trait, pm_def.value ());
+       mappings.pmacro_mappings.insert_derive_proc_macro_invocation (
+         trait, pm_def.value ());
     }
 }
 
@@ -424,14 +425,14 @@ Early::visit_non_builtin_attribute (AST::Attribute &attr,
                            name.c_str ()));
       return;
     }
-  auto pm_def = mappings.lookup_attribute_proc_macro_def (
+  auto pm_def = mappings.pmacro_mappings.lookup_attribute_proc_macro_def (
     ns_def->definition.get_node_id ());
 
   if (!pm_def.has_value ())
     return;
 
-  mappings.insert_attribute_proc_macro_invocation (attr.get_path (),
-                                                  pm_def.value ());
+  mappings.pmacro_mappings.insert_attribute_proc_macro_invocation (
+    attr.get_path (), pm_def.value ());
 }
 
 void
diff --git a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc 
b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc
index c7f35b628..88b946649 100644
--- a/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc
+++ b/gcc/rust/resolve/rust-toplevel-name-resolver-2.0.cc
@@ -187,30 +187,31 @@ TopLevel::visit_extern_crate (AST::ExternCrate 
&extern_crate, AST::Crate &crate,
 {
   auto &mappings = Analysis::Mappings::get ();
 
-  auto attribute_macros = mappings.lookup_attribute_proc_macros (num);
+  auto attribute_macros
+    = mappings.pmacro_mappings.lookup_attribute_proc_macros (num);
 
-  auto bang_macros = mappings.lookup_bang_proc_macros (num);
+  auto bang_macros = mappings.pmacro_mappings.lookup_bang_proc_macros (num);
 
-  auto derive_macros = mappings.lookup_derive_proc_macros (num);
+  auto derive_macros = mappings.pmacro_mappings.lookup_derive_proc_macros 
(num);
 
   // TODO: Find a way to keep this part clean without the double dispatch.
   if (derive_macros.has_value ())
     {
       insert_macros (derive_macros.value (), ctx);
       for (auto &macro : derive_macros.value ())
-       mappings.insert_derive_proc_macro_def (macro);
+       mappings.pmacro_mappings.insert_derive_proc_macro_def (macro);
     }
   if (attribute_macros.has_value ())
     {
       insert_macros (attribute_macros.value (), ctx);
       for (auto &macro : attribute_macros.value ())
-       mappings.insert_attribute_proc_macro_def (macro);
+       mappings.pmacro_mappings.insert_attribute_proc_macro_def (macro);
     }
   if (bang_macros.has_value ())
     {
       insert_macros (bang_macros.value (), ctx);
       for (auto &macro : bang_macros.value ())
-       mappings.insert_bang_proc_macro_def (macro);
+       mappings.pmacro_mappings.insert_bang_proc_macro_def (macro);
     }
 
   // We do *NOT* visit the crate because loaded crates are resolved
diff --git a/gcc/rust/rust-session-manager.cc b/gcc/rust/rust-session-manager.cc
index f65b09264..868216024 100644
--- a/gcc/rust/rust-session-manager.cc
+++ b/gcc/rust/rust-session-manager.cc
@@ -1366,9 +1366,10 @@ Session::load_extern_crate (const std::string 
&crate_name, location_t locus)
        }
     }
 
-  mappings.insert_attribute_proc_macros (crate_num, attribute_macros);
-  mappings.insert_bang_proc_macros (crate_num, bang_macros);
-  mappings.insert_derive_proc_macros (crate_num, derive_macros);
+  mappings.pmacro_mappings.insert_attribute_proc_macros (crate_num,
+                                                        attribute_macros);
+  mappings.pmacro_mappings.insert_bang_proc_macros (crate_num, bang_macros);
+  mappings.pmacro_mappings.insert_derive_proc_macros (crate_num, 
derive_macros);
 
   // always restore the crate_num
   crate_mapping.set_current_crate (saved_crate_num);
diff --git a/gcc/rust/util/rust-hir-map.cc b/gcc/rust/util/rust-hir-map.cc
index 6a96102ca..af3d6f222 100644
--- a/gcc/rust/util/rust-hir-map.cc
+++ b/gcc/rust/util/rust-hir-map.cc
@@ -1134,8 +1134,8 @@ Mappings::get_exported_macros ()
 }
 
 void
-Mappings::insert_derive_proc_macros (CrateNum num,
-                                    std::vector<CustomDeriveProcMacro> macros)
+ProcMacroMappings::insert_derive_proc_macros (
+  CrateNum num, std::vector<CustomDeriveProcMacro> macros)
 {
   auto it = procmacrosDeriveMappings.find (num);
   rust_assert (it == procmacrosDeriveMappings.end ());
@@ -1144,8 +1144,8 @@ Mappings::insert_derive_proc_macros (CrateNum num,
 }
 
 void
-Mappings::insert_bang_proc_macros (CrateNum num,
-                                  std::vector<BangProcMacro> macros)
+ProcMacroMappings::insert_bang_proc_macros (CrateNum num,
+                                           std::vector<BangProcMacro> macros)
 {
   auto it = procmacrosBangMappings.find (num);
   rust_assert (it == procmacrosBangMappings.end ());
@@ -1154,8 +1154,8 @@ Mappings::insert_bang_proc_macros (CrateNum num,
 }
 
 void
-Mappings::insert_attribute_proc_macros (CrateNum num,
-                                       std::vector<AttributeProcMacro> macros)
+ProcMacroMappings::insert_attribute_proc_macros (
+  CrateNum num, std::vector<AttributeProcMacro> macros)
 {
   auto it = procmacrosAttributeMappings.find (num);
   rust_assert (it == procmacrosAttributeMappings.end ());
@@ -1164,7 +1164,7 @@ Mappings::insert_attribute_proc_macros (CrateNum num,
 }
 
 tl::optional<std::vector<CustomDeriveProcMacro> &>
-Mappings::lookup_derive_proc_macros (CrateNum num)
+ProcMacroMappings::lookup_derive_proc_macros (CrateNum num)
 {
   auto it = procmacrosDeriveMappings.find (num);
   if (it == procmacrosDeriveMappings.end ())
@@ -1174,7 +1174,7 @@ Mappings::lookup_derive_proc_macros (CrateNum num)
 }
 
 tl::optional<std::vector<BangProcMacro> &>
-Mappings::lookup_bang_proc_macros (CrateNum num)
+ProcMacroMappings::lookup_bang_proc_macros (CrateNum num)
 {
   auto it = procmacrosBangMappings.find (num);
   if (it == procmacrosBangMappings.end ())
@@ -1184,7 +1184,7 @@ Mappings::lookup_bang_proc_macros (CrateNum num)
 }
 
 tl::optional<std::vector<AttributeProcMacro> &>
-Mappings::lookup_attribute_proc_macros (CrateNum num)
+ProcMacroMappings::lookup_attribute_proc_macros (CrateNum num)
 {
   auto it = procmacrosAttributeMappings.find (num);
   if (it == procmacrosAttributeMappings.end ())
@@ -1194,7 +1194,7 @@ Mappings::lookup_attribute_proc_macros (CrateNum num)
 }
 
 void
-Mappings::insert_derive_proc_macro_def (CustomDeriveProcMacro macro)
+ProcMacroMappings::insert_derive_proc_macro_def (CustomDeriveProcMacro macro)
 {
   auto it = procmacroDeriveMappings.find (macro.get_node_id ());
   rust_assert (it == procmacroDeriveMappings.end ());
@@ -1203,7 +1203,7 @@ Mappings::insert_derive_proc_macro_def 
(CustomDeriveProcMacro macro)
 }
 
 void
-Mappings::insert_bang_proc_macro_def (BangProcMacro macro)
+ProcMacroMappings::insert_bang_proc_macro_def (BangProcMacro macro)
 {
   auto it = procmacroBangMappings.find (macro.get_node_id ());
   rust_assert (it == procmacroBangMappings.end ());
@@ -1212,7 +1212,7 @@ Mappings::insert_bang_proc_macro_def (BangProcMacro macro)
 }
 
 void
-Mappings::insert_attribute_proc_macro_def (AttributeProcMacro macro)
+ProcMacroMappings::insert_attribute_proc_macro_def (AttributeProcMacro macro)
 {
   auto it = procmacroAttributeMappings.find (macro.get_node_id ());
   rust_assert (it == procmacroAttributeMappings.end ());
@@ -1221,7 +1221,7 @@ Mappings::insert_attribute_proc_macro_def 
(AttributeProcMacro macro)
 }
 
 tl::optional<CustomDeriveProcMacro &>
-Mappings::lookup_derive_proc_macro_def (NodeId id)
+ProcMacroMappings::lookup_derive_proc_macro_def (NodeId id)
 {
   auto it = procmacroDeriveMappings.find (id);
   if (it == procmacroDeriveMappings.end ())
@@ -1231,7 +1231,7 @@ Mappings::lookup_derive_proc_macro_def (NodeId id)
 }
 
 tl::optional<BangProcMacro &>
-Mappings::lookup_bang_proc_macro_def (NodeId id)
+ProcMacroMappings::lookup_bang_proc_macro_def (NodeId id)
 {
   auto it = procmacroBangMappings.find (id);
   if (it == procmacroBangMappings.end ())
@@ -1241,7 +1241,7 @@ Mappings::lookup_bang_proc_macro_def (NodeId id)
 }
 
 tl::optional<AttributeProcMacro &>
-Mappings::lookup_attribute_proc_macro_def (NodeId id)
+ProcMacroMappings::lookup_attribute_proc_macro_def (NodeId id)
 {
   auto it = procmacroAttributeMappings.find (id);
   if (it == procmacroAttributeMappings.end ())
@@ -1251,8 +1251,8 @@ Mappings::lookup_attribute_proc_macro_def (NodeId id)
 }
 
 void
-Mappings::insert_derive_proc_macro_invocation (AST::SimplePath &invoc,
-                                              CustomDeriveProcMacro def)
+ProcMacroMappings::insert_derive_proc_macro_invocation (
+  AST::SimplePath &invoc, CustomDeriveProcMacro def)
 {
   auto it = procmacroDeriveInvocations.find (invoc.get_node_id ());
   rust_assert (it == procmacroDeriveInvocations.end ());
@@ -1261,7 +1261,7 @@ Mappings::insert_derive_proc_macro_invocation 
(AST::SimplePath &invoc,
 }
 
 tl::optional<CustomDeriveProcMacro &>
-Mappings::lookup_derive_proc_macro_invocation (AST::SimplePath &invoc)
+ProcMacroMappings::lookup_derive_proc_macro_invocation (AST::SimplePath &invoc)
 {
   auto it = procmacroDeriveInvocations.find (invoc.get_node_id ());
   if (it == procmacroDeriveInvocations.end ())
@@ -1271,8 +1271,8 @@ Mappings::lookup_derive_proc_macro_invocation 
(AST::SimplePath &invoc)
 }
 
 void
-Mappings::insert_bang_proc_macro_invocation (AST::MacroInvocation &invoc,
-                                            BangProcMacro def)
+ProcMacroMappings::insert_bang_proc_macro_invocation (
+  AST::MacroInvocation &invoc, BangProcMacro def)
 {
   auto it = procmacroBangInvocations.find (invoc.get_node_id ());
   rust_assert (it == procmacroBangInvocations.end ());
@@ -1281,7 +1281,8 @@ Mappings::insert_bang_proc_macro_invocation 
(AST::MacroInvocation &invoc,
 }
 
 tl::optional<BangProcMacro &>
-Mappings::lookup_bang_proc_macro_invocation (AST::MacroInvocation &invoc)
+ProcMacroMappings::lookup_bang_proc_macro_invocation (
+  AST::MacroInvocation &invoc)
 {
   auto it = procmacroBangInvocations.find (invoc.get_node_id ());
   if (it == procmacroBangInvocations.end ())
@@ -1291,8 +1292,8 @@ Mappings::lookup_bang_proc_macro_invocation 
(AST::MacroInvocation &invoc)
 }
 
 void
-Mappings::insert_attribute_proc_macro_invocation (AST::SimplePath &invoc,
-                                                 AttributeProcMacro def)
+ProcMacroMappings::insert_attribute_proc_macro_invocation (
+  AST::SimplePath &invoc, AttributeProcMacro def)
 {
   auto it = procmacroAttributeInvocations.find (invoc.get_node_id ());
   rust_assert (it == procmacroAttributeInvocations.end ());
@@ -1301,7 +1302,8 @@ Mappings::insert_attribute_proc_macro_invocation 
(AST::SimplePath &invoc,
 }
 
 tl::optional<AttributeProcMacro &>
-Mappings::lookup_attribute_proc_macro_invocation (AST::SimplePath &invoc)
+ProcMacroMappings::lookup_attribute_proc_macro_invocation (
+  AST::SimplePath &invoc)
 {
   auto it = procmacroAttributeInvocations.find (invoc.get_node_id ());
   if (it == procmacroAttributeInvocations.end ())
diff --git a/gcc/rust/util/rust-hir-map.h b/gcc/rust/util/rust-hir-map.h
index d92f0e0f1..a7f631608 100644
--- a/gcc/rust/util/rust-hir-map.h
+++ b/gcc/rust/util/rust-hir-map.h
@@ -108,6 +108,60 @@ public:
   AST::Crate *get_ast_crate_by_node_id_raw (NodeId id);
 };
 
+class ProcMacroMappings
+{
+  std::map<CrateNum, std::vector<CustomDeriveProcMacro>>
+    procmacrosDeriveMappings;
+  std::map<CrateNum, std::vector<BangProcMacro>> procmacrosBangMappings;
+  std::map<CrateNum, std::vector<AttributeProcMacro>>
+    procmacrosAttributeMappings;
+
+  std::map<NodeId, CustomDeriveProcMacro> procmacroDeriveMappings;
+  std::map<NodeId, BangProcMacro> procmacroBangMappings;
+  std::map<NodeId, AttributeProcMacro> procmacroAttributeMappings;
+  std::map<NodeId, CustomDeriveProcMacro> procmacroDeriveInvocations;
+  std::map<NodeId, BangProcMacro> procmacroBangInvocations;
+  std::map<NodeId, AttributeProcMacro> procmacroAttributeInvocations;
+
+public:
+  void insert_derive_proc_macros (CrateNum num,
+                                 std::vector<CustomDeriveProcMacro> macros);
+  void insert_bang_proc_macros (CrateNum num,
+                               std::vector<BangProcMacro> macros);
+  void insert_attribute_proc_macros (CrateNum num,
+                                    std::vector<AttributeProcMacro> macros);
+
+  tl::optional<std::vector<CustomDeriveProcMacro> &>
+  lookup_derive_proc_macros (CrateNum num);
+  tl::optional<std::vector<BangProcMacro> &>
+  lookup_bang_proc_macros (CrateNum num);
+  tl::optional<std::vector<AttributeProcMacro> &>
+  lookup_attribute_proc_macros (CrateNum num);
+
+  void insert_derive_proc_macro_def (CustomDeriveProcMacro macro);
+  void insert_bang_proc_macro_def (BangProcMacro macro);
+  void insert_attribute_proc_macro_def (AttributeProcMacro macro);
+
+  tl::optional<CustomDeriveProcMacro &>
+  lookup_derive_proc_macro_def (NodeId id);
+  tl::optional<BangProcMacro &> lookup_bang_proc_macro_def (NodeId id);
+  tl::optional<AttributeProcMacro &>
+  lookup_attribute_proc_macro_def (NodeId id);
+
+  tl::optional<CustomDeriveProcMacro &>
+  lookup_derive_proc_macro_invocation (AST::SimplePath &invoc);
+  tl::optional<BangProcMacro &>
+  lookup_bang_proc_macro_invocation (AST::MacroInvocation &invoc_id);
+  tl::optional<AttributeProcMacro &>
+  lookup_attribute_proc_macro_invocation (AST::SimplePath &invoc);
+  void insert_derive_proc_macro_invocation (AST::SimplePath &invoc,
+                                           CustomDeriveProcMacro def);
+  void insert_bang_proc_macro_invocation (AST::MacroInvocation &invoc,
+                                         BangProcMacro def);
+  void insert_attribute_proc_macro_invocation (AST::SimplePath &invoc,
+                                              AttributeProcMacro def);
+};
+
 class Mappings
 {
 public:
@@ -115,6 +169,7 @@ public:
   ~Mappings ();
 
   CrateMappings crate_mapping;
+  ProcMacroMappings pmacro_mappings;
 
   NodeId get_next_node_id ();
   HirId get_next_hir_id ()
@@ -344,43 +399,6 @@ public:
   void insert_exported_macro (AST::MacroRulesDefinition &def);
   std::vector<AST::MacroRulesDefinition> get_exported_macros ();
 
-  void insert_derive_proc_macros (CrateNum num,
-                                 std::vector<CustomDeriveProcMacro> macros);
-  void insert_bang_proc_macros (CrateNum num,
-                               std::vector<BangProcMacro> macros);
-  void insert_attribute_proc_macros (CrateNum num,
-                                    std::vector<AttributeProcMacro> macros);
-
-  tl::optional<std::vector<CustomDeriveProcMacro> &>
-  lookup_derive_proc_macros (CrateNum num);
-  tl::optional<std::vector<BangProcMacro> &>
-  lookup_bang_proc_macros (CrateNum num);
-  tl::optional<std::vector<AttributeProcMacro> &>
-  lookup_attribute_proc_macros (CrateNum num);
-
-  void insert_derive_proc_macro_def (CustomDeriveProcMacro macro);
-  void insert_bang_proc_macro_def (BangProcMacro macro);
-  void insert_attribute_proc_macro_def (AttributeProcMacro macro);
-
-  tl::optional<CustomDeriveProcMacro &>
-  lookup_derive_proc_macro_def (NodeId id);
-  tl::optional<BangProcMacro &> lookup_bang_proc_macro_def (NodeId id);
-  tl::optional<AttributeProcMacro &>
-  lookup_attribute_proc_macro_def (NodeId id);
-
-  tl::optional<CustomDeriveProcMacro &>
-  lookup_derive_proc_macro_invocation (AST::SimplePath &invoc);
-  tl::optional<BangProcMacro &>
-  lookup_bang_proc_macro_invocation (AST::MacroInvocation &invoc_id);
-  tl::optional<AttributeProcMacro &>
-  lookup_attribute_proc_macro_invocation (AST::SimplePath &invoc);
-  void insert_derive_proc_macro_invocation (AST::SimplePath &invoc,
-                                           CustomDeriveProcMacro def);
-  void insert_bang_proc_macro_invocation (AST::MacroInvocation &invoc,
-                                         BangProcMacro def);
-  void insert_attribute_proc_macro_invocation (AST::SimplePath &invoc,
-                                              AttributeProcMacro def);
-
   void insert_visibility (NodeId id, Privacy::ModuleVisibility visibility);
   tl::optional<Privacy::ModuleVisibility &> lookup_visibility (NodeId id);
 
@@ -491,20 +509,6 @@ private:
   std::map<NodeId, AST::MacroRulesDefinition *> macroInvocations;
   std::vector<AST::MacroRulesDefinition> exportedMacros;
 
-  // Procedural macros
-  std::map<CrateNum, std::vector<CustomDeriveProcMacro>>
-    procmacrosDeriveMappings;
-  std::map<CrateNum, std::vector<BangProcMacro>> procmacrosBangMappings;
-  std::map<CrateNum, std::vector<AttributeProcMacro>>
-    procmacrosAttributeMappings;
-
-  std::map<NodeId, CustomDeriveProcMacro> procmacroDeriveMappings;
-  std::map<NodeId, BangProcMacro> procmacroBangMappings;
-  std::map<NodeId, AttributeProcMacro> procmacroAttributeMappings;
-  std::map<NodeId, CustomDeriveProcMacro> procmacroDeriveInvocations;
-  std::map<NodeId, BangProcMacro> procmacroBangInvocations;
-  std::map<NodeId, AttributeProcMacro> procmacroAttributeInvocations;
-
   // Low level visibility map for each DefId
   std::map<NodeId, Privacy::ModuleVisibility> visibility_map;
 
-- 
2.55.0

Reply via email to