From 2f054b8db9fa548443560a1187c998945fc9634a Mon Sep 17 00:00:00 2001 From: Owen Avery Date: Fri, 1 Aug 2025 21:27:28 -0400 Subject: [PATCH] gccrs: Catch parse failure in parse_path_meta_item gcc/rust/ChangeLog: * ast/rust-ast.cc (AttributeParser::parse_path_meta_item): Catch parse_expr returning nullptr and remove defunct comment. Signed-off-by: Owen Avery --- gcc/rust/ast/rust-ast.cc | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gcc/rust/ast/rust-ast.cc b/gcc/rust/ast/rust-ast.cc index 8918ef8a007..fd371ea0cd9 100644 --- a/gcc/rust/ast/rust-ast.cc +++ b/gcc/rust/ast/rust-ast.cc @@ -3713,9 +3713,12 @@ AttributeParser::parse_path_meta_item () skip_token (); std::unique_ptr expr = parser->parse_expr (); - // stream_pos++; - /* shouldn't be required anymore due to parsing literal actually - * skipping the token */ + + // handle error + // parse_expr should already emit an error and return nullptr + if (!expr) + return nullptr; + return std::unique_ptr ( new MetaItemPathExpr (std::move (path), std::move (expr))); } -- 2.47.2