From d5fddb55d343362a7fe8e059e5d7d14e4b1f8923 Mon Sep 17 00:00:00 2001 From: Owen Avery Date: Sat, 3 Jun 2023 19:57:33 -0400 Subject: Handle crate metavariable gcc/rust/ChangeLog: * expand/rust-macro-substitute-ctx.cc (SubstituteCtx::substitute_metavar): Substitute crate metavar. Signed-off-by: Owen Avery --- gcc/rust/expand/rust-macro-substitute-ctx.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'gcc/rust') diff --git a/gcc/rust/expand/rust-macro-substitute-ctx.cc b/gcc/rust/expand/rust-macro-substitute-ctx.cc index ed7cf1b..60e9b63 100644 --- a/gcc/rust/expand/rust-macro-substitute-ctx.cc +++ b/gcc/rust/expand/rust-macro-substitute-ctx.cc @@ -31,7 +31,13 @@ SubstituteCtx::substitute_metavar ( if (it == fragments.end ()) { // fail to substitute - return false; + + // HACK: substitute ($ crate) => (crate) + if (metavar->get_id () != CRATE) + return false; + + expanded.push_back (metavar->clone_token ()); + return true; } else { -- cgit v1.1