From: Owen Avery <[email protected]>

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]>
---
 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 66aec80e6fa..ee1f001e197 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 e1bd08689cb..afdd2b19dac 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
-- 
2.50.1

Reply via email to