https://gcc.gnu.org/g:6e4573a34e12980299505644b89818cecc9f78b0
commit 6e4573a34e12980299505644b89818cecc9f78b0 Author: Arthur Cohen <arthur.co...@embecosm.com> Date: Mon Feb 24 12:16:11 2025 +0100 lower: Always crash when lowering macro invocations gcc/rust/ChangeLog: * hir/rust-ast-lower-base.cc (ASTLoweringBase::visit): Add base implementation for visitor. Diff: --- gcc/rust/hir/rust-ast-lower-base.cc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/gcc/rust/hir/rust-ast-lower-base.cc b/gcc/rust/hir/rust-ast-lower-base.cc index 02fac9af7e91..ce8a20e60941 100644 --- a/gcc/rust/hir/rust-ast-lower-base.cc +++ b/gcc/rust/hir/rust-ast-lower-base.cc @@ -30,6 +30,14 @@ namespace Rust { namespace HIR { +// We special case lowering macro invocations as that should NEVER happen +void +ASTLoweringBase::visit (AST::MacroInvocation &invoc) +{ + rust_fatal_error (invoc.get_locus (), "rogue macro detected during lowering"); + rust_unreachable (); +} + void ASTLoweringBase::visit (AST::Token &) {} @@ -373,9 +381,6 @@ void ASTLoweringBase::visit (AST::MacroRulesDefinition &) {} void -ASTLoweringBase::visit (AST::MacroInvocation &) -{} -void ASTLoweringBase::visit (AST::MetaItemPath &) {} void