diff options
author | Philip Herron <philip.herron@embecosm.com> | 2021-01-19 15:48:51 +0000 |
---|---|---|
committer | Philip Herron <herron.philip@googlemail.com> | 2021-01-20 10:15:56 +0000 |
commit | e2b761b13e6ccd3a7af4100183bb13e32b5b0da0 (patch) | |
tree | 19df974672d967ed79ab9674c379a9f0484cded5 /gcc/rust/resolve | |
parent | 85d8754632d597fe3d94404406082bcbb2f5ff94 (diff) | |
download | gcc-e2b761b13e6ccd3a7af4100183bb13e32b5b0da0.zip gcc-e2b761b13e6ccd3a7af4100183bb13e32b5b0da0.tar.gz gcc-e2b761b13e6ccd3a7af4100183bb13e32b5b0da0.tar.bz2 |
Implement CompoundAssignmentExpressions
This expands the AST::CompoundAssignmentExpr into and HIR::AssignmentExpr
with the asignee being referenced for lhs and a new artificial
HIR::ArithmeticOrLogicalExpression with lhs asignee and rhs the rhs
of the original CompoundAssignment expr.
Diffstat (limited to 'gcc/rust/resolve')
-rw-r--r-- | gcc/rust/resolve/rust-ast-resolve-expr.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/rust/resolve/rust-ast-resolve-expr.h b/gcc/rust/resolve/rust-ast-resolve-expr.h index 03b3496..229b26a 100644 --- a/gcc/rust/resolve/rust-ast-resolve-expr.h +++ b/gcc/rust/resolve/rust-ast-resolve-expr.h @@ -116,6 +116,12 @@ public: ResolveExpr::go (expr.get_right_expr ().get (), expr.get_node_id ()); } + void visit (AST::CompoundAssignmentExpr &expr) + { + ResolveExpr::go (expr.get_left_expr ().get (), expr.get_node_id ()); + ResolveExpr::go (expr.get_right_expr ().get (), expr.get_node_id ()); + } + void visit (AST::ComparisonExpr &expr) { ResolveExpr::go (expr.get_left_expr ().get (), expr.get_node_id ()); |