From 7b14e6eecbb961a96cf94d9a0e67ffca7e4a3e8e Mon Sep 17 00:00:00 2001 From: Arthur Cohen Date: Wed, 15 Mar 2023 17:15:39 +0100 Subject: Revert "hir: Add ExportedMacro node and handling." This reverts commit a1f940d193c6cdb13483690a4f4a7d501ad7040e. It is easier and cleaner to store exported macros' NodeIds into our mappings rather than create a new HIR kind of node. gcc/rust/ChangeLog: * backend/rust-compile-item.h: Revert 1c946687239b86a92839d57dfbc928ad7ce35eae. * backend/rust-compile-stmt.h: Likewise. * checks/errors/privacy/rust-privacy-reporter.cc (PrivacyReporter::visit): Likewise. * checks/errors/privacy/rust-privacy-reporter.h: Likewise. * checks/errors/privacy/rust-pub-restricted-visitor.cc (PubRestrictedVisitor::visit): Likewise. * checks/errors/privacy/rust-pub-restricted-visitor.h: Likewise. * checks/errors/privacy/rust-reachability.cc (ReachabilityVisitor::visit): Likewise. * checks/errors/privacy/rust-reachability.h: Likewise. * checks/errors/privacy/rust-visibility-resolver.cc (VisibilityResolver::visit): Likewise. * checks/errors/privacy/rust-visibility-resolver.h: Likewise. * checks/errors/rust-const-checker.cc (ConstChecker::visit): Likewise. * checks/errors/rust-const-checker.h: Likewise. * checks/errors/rust-unsafe-checker.cc (UnsafeChecker::visit): Likewise. * checks/errors/rust-unsafe-checker.h: Likewise. * hir/rust-ast-lower-item.cc (ASTLoweringItem::visit): Likewise. * hir/rust-ast-lower-item.h: Likewise. * hir/rust-hir-dump.cc (Dump::visit): Likewise. * hir/rust-hir-dump.h: Likewise. * hir/tree/rust-hir-full-decls.h (class ExportedMacro): Likewise. * hir/tree/rust-hir-item.h (class ExportedMacro): Likewise. * hir/tree/rust-hir-visitor.h: Likewise. * hir/tree/rust-hir.cc (ExportedMacro::accept_vis): Likewise. (ExportedMacro::get_locus): Likewise. (ExportedMacro::get_item_kind): Likewise. (ExportedMacro::clone_item_impl): Likewise. * hir/tree/rust-hir.h: Likewise. * metadata/rust-export-metadata.cc: Likewise. * typecheck/rust-hir-type-check-item.h: Likewise. * typecheck/rust-hir-type-check-stmt.cc (TypeCheckStmt::visit): Likewise. * typecheck/rust-hir-type-check-stmt.h: Likewise. * typecheck/rust-tycheck-dump.h: Likewise. * util/rust-attributes.cc: Likewise. --- gcc/rust/hir/rust-ast-lower-item.cc | 22 -------------------- gcc/rust/hir/rust-ast-lower-item.h | 1 - gcc/rust/hir/rust-hir-dump.cc | 3 --- gcc/rust/hir/rust-hir-dump.h | 1 - gcc/rust/hir/tree/rust-hir-full-decls.h | 3 --- gcc/rust/hir/tree/rust-hir-item.h | 21 ------------------- gcc/rust/hir/tree/rust-hir-visitor.h | 4 ---- gcc/rust/hir/tree/rust-hir.cc | 36 --------------------------------- gcc/rust/hir/tree/rust-hir.h | 1 - 9 files changed, 92 deletions(-) (limited to 'gcc/rust/hir') diff --git a/gcc/rust/hir/rust-ast-lower-item.cc b/gcc/rust/hir/rust-ast-lower-item.cc index eade1bc..a166b91 100644 --- a/gcc/rust/hir/rust-ast-lower-item.cc +++ b/gcc/rust/hir/rust-ast-lower-item.cc @@ -705,28 +705,6 @@ ASTLoweringItem::visit (AST::ExternBlock &extern_block) translated = lower_extern_block (extern_block); } -void -ASTLoweringItem::visit (AST::MacroRulesDefinition &def) -{ - bool is_export = false; - for (const auto &attr : def.get_outer_attrs ()) - if (attr.get_path ().as_string () == "macro_export") - is_export = true; - - if (is_export) - { - auto crate_num = mappings->get_current_crate (); - Analysis::NodeMapping mapping (crate_num, def.get_node_id (), - mappings->get_next_hir_id (crate_num), - mappings->get_next_localdef_id ( - crate_num)); - auto locus = def.get_locus (); - - translated - = new HIR::ExportedMacro (mapping, def.get_outer_attrs (), locus); - } -} - HIR::SimplePath ASTLoweringSimplePath::translate (const AST::SimplePath &path) { diff --git a/gcc/rust/hir/rust-ast-lower-item.h b/gcc/rust/hir/rust-ast-lower-item.h index 15619c0..3680ed4 100644 --- a/gcc/rust/hir/rust-ast-lower-item.h +++ b/gcc/rust/hir/rust-ast-lower-item.h @@ -44,7 +44,6 @@ public: void visit (AST::Trait &trait) override; void visit (AST::TraitImpl &impl_block) override; void visit (AST::ExternBlock &extern_block) override; - void visit (AST::MacroRulesDefinition ¯o) override; private: ASTLoweringItem () : translated (nullptr) {} diff --git a/gcc/rust/hir/rust-hir-dump.cc b/gcc/rust/hir/rust-hir-dump.cc index 1585df5..bc4ff53 100644 --- a/gcc/rust/hir/rust-hir-dump.cc +++ b/gcc/rust/hir/rust-hir-dump.cc @@ -697,8 +697,5 @@ Dump::visit (InferredType &) void Dump::visit (BareFunctionType &) {} -void -Dump::visit (ExportedMacro &) -{} } // namespace HIR } // namespace Rust diff --git a/gcc/rust/hir/rust-hir-dump.h b/gcc/rust/hir/rust-hir-dump.h index d025634..7b8b54d 100644 --- a/gcc/rust/hir/rust-hir-dump.h +++ b/gcc/rust/hir/rust-hir-dump.h @@ -181,7 +181,6 @@ private: virtual void visit (SliceType &) override; virtual void visit (InferredType &) override; virtual void visit (BareFunctionType &) override; - virtual void visit (ExportedMacro &) override; }; } // namespace HIR diff --git a/gcc/rust/hir/tree/rust-hir-full-decls.h b/gcc/rust/hir/tree/rust-hir-full-decls.h index 76117eb..46abe430 100644 --- a/gcc/rust/hir/tree/rust-hir-full-decls.h +++ b/gcc/rust/hir/tree/rust-hir-full-decls.h @@ -35,9 +35,6 @@ class Lifetime; class GenericParam; class LifetimeParam; -// FIXME: ARTHUR: Move this somewhere else -class ExportedMacro; - class TraitItem; class ImplItem; struct Crate; diff --git a/gcc/rust/hir/tree/rust-hir-item.h b/gcc/rust/hir/tree/rust-hir-item.h index 9ff9732..774f024 100644 --- a/gcc/rust/hir/tree/rust-hir-item.h +++ b/gcc/rust/hir/tree/rust-hir-item.h @@ -3226,27 +3226,6 @@ protected: }*/ }; -class ExportedMacro : public VisItem -{ - Location locus; - -public: - ExportedMacro (Analysis::NodeMapping mapping, AST::AttrVec outer_attrs, - Location locus) - : VisItem (mapping, Visibility (Visibility::PUBLIC), - std::move (outer_attrs)), - locus (locus) - {} - - virtual Location get_locus () const override; - virtual ItemKind get_item_kind () const override; - virtual ExportedMacro *clone_item_impl () const override; - - void accept_vis (HIRFullVisitor &vis) override; - void accept_vis (HIRStmtVisitor &vis) override; - void accept_vis (HIRVisItemVisitor &vis) override; -}; - } // namespace HIR } // namespace Rust diff --git a/gcc/rust/hir/tree/rust-hir-visitor.h b/gcc/rust/hir/tree/rust-hir-visitor.h index 63db0d7..17c9c6d 100644 --- a/gcc/rust/hir/tree/rust-hir-visitor.h +++ b/gcc/rust/hir/tree/rust-hir-visitor.h @@ -153,7 +153,6 @@ public: virtual void visit (SliceType &type) = 0; virtual void visit (InferredType &type) = 0; virtual void visit (BareFunctionType &type) = 0; - virtual void visit (ExportedMacro ¯o) = 0; }; class HIRFullVisitorBase : public HIRFullVisitor @@ -304,7 +303,6 @@ public: virtual void visit (SliceType &) override {} virtual void visit (InferredType &) override {} virtual void visit (BareFunctionType &) override {} - virtual void visit (ExportedMacro &) override {} }; class HIRExternalItemVisitor @@ -339,7 +337,6 @@ public: virtual void visit (Trait &trait) = 0; virtual void visit (ImplBlock &impl) = 0; virtual void visit (ExternBlock &block) = 0; - virtual void visit (ExportedMacro ¯o) = 0; }; class HIRImplVisitor @@ -399,7 +396,6 @@ public: virtual void visit (LetStmt &stmt) = 0; virtual void visit (ExprStmtWithoutBlock &stmt) = 0; virtual void visit (ExprStmtWithBlock &stmt) = 0; - virtual void visit (ExportedMacro ¯o) = 0; }; class HIRExpressionVisitor diff --git a/gcc/rust/hir/tree/rust-hir.cc b/gcc/rust/hir/tree/rust-hir.cc index 92e002c..a6a1736 100644 --- a/gcc/rust/hir/tree/rust-hir.cc +++ b/gcc/rust/hir/tree/rust-hir.cc @@ -5180,41 +5180,5 @@ void ConstGenericParam::accept_vis (HIRFullVisitor &) {} -void -ExportedMacro::accept_vis (HIRVisItemVisitor &vis) -{ - vis.visit (*this); -} - -void -ExportedMacro::accept_vis (HIRFullVisitor &vis) -{ - vis.visit (*this); -} - -void -ExportedMacro::accept_vis (HIRStmtVisitor &vis) -{ - vis.visit (*this); -} - -Location -ExportedMacro::get_locus () const -{ - return locus; -} - -Item::ItemKind -ExportedMacro::get_item_kind () const -{ - return ItemKind::MacroExport; -} - -ExportedMacro * -ExportedMacro::clone_item_impl () const -{ - return new ExportedMacro (*this); -} - } // namespace HIR } // namespace Rust diff --git a/gcc/rust/hir/tree/rust-hir.h b/gcc/rust/hir/tree/rust-hir.h index 6d5b755..6ed7442 100644 --- a/gcc/rust/hir/tree/rust-hir.h +++ b/gcc/rust/hir/tree/rust-hir.h @@ -191,7 +191,6 @@ public: Trait, Impl, Module, - MacroExport, }; virtual ItemKind get_item_kind () const = 0; -- cgit v1.1