https://gcc.gnu.org/g:75677b21ed557cd9cd5f9aa569c0b42d7df8230f

commit r16-4897-g75677b21ed557cd9cd5f9aa569c0b42d7df8230f
Author: Owen Avery <[email protected]>
Date:   Thu Oct 2 18:21:46 2025 -0400

    gccrs: Improve ErrorPropagationExpr handling
    
    gcc/rust/ChangeLog:
    
            * ast/rust-ast-pointer-visitor.cc (PointerVisitor::visit):
            Handle the expression contained in an ErrorPropagationExpr.
            * ast/rust-ast-visitor.cc (DefaultASTVisitor::visit): Likewise.
    
    Signed-off-by: Owen Avery <[email protected]>

Diff:
---
 gcc/rust/ast/rust-ast-pointer-visitor.cc | 1 +
 gcc/rust/ast/rust-ast-visitor.cc         | 1 +
 2 files changed, 2 insertions(+)

diff --git a/gcc/rust/ast/rust-ast-pointer-visitor.cc 
b/gcc/rust/ast/rust-ast-pointer-visitor.cc
index 66aec80e6fa7..ee1f001e1972 100644
--- a/gcc/rust/ast/rust-ast-pointer-visitor.cc
+++ b/gcc/rust/ast/rust-ast-pointer-visitor.cc
@@ -220,6 +220,7 @@ void
 PointerVisitor::visit (AST::ErrorPropagationExpr &expr)
 {
   visit_outer_attrs (expr);
+  reseat (expr.get_propagating_expr_ptr ());
 }
 
 void
diff --git a/gcc/rust/ast/rust-ast-visitor.cc b/gcc/rust/ast/rust-ast-visitor.cc
index e1bd08689cbc..afdd2b19dac4 100644
--- a/gcc/rust/ast/rust-ast-visitor.cc
+++ b/gcc/rust/ast/rust-ast-visitor.cc
@@ -248,6 +248,7 @@ void
 DefaultASTVisitor::visit (AST::ErrorPropagationExpr &expr)
 {
   visit_outer_attrs (expr);
+  visit (expr.get_propagating_expr ());
 }
 
 void

Reply via email to