diff options
author | Owen Avery <powerboat9.gamer@gmail.com> | 2023-03-15 23:30:19 -0400 |
---|---|---|
committer | CohenArthur <arthur.cohen@embecosm.com> | 2023-04-14 12:35:57 +0000 |
commit | 2608859a394d28ddf6dc0f31954e252c7a562318 (patch) | |
tree | 281579c4f987defd300b313df0e557839ded225f /gcc/rust/resolve | |
parent | ac79c65365bdbcee00916e3785fd6bb8aeee0ba2 (diff) | |
download | gcc-2608859a394d28ddf6dc0f31954e252c7a562318.zip gcc-2608859a394d28ddf6dc0f31954e252c7a562318.tar.gz gcc-2608859a394d28ddf6dc0f31954e252c7a562318.tar.bz2 |
Unify AST::IfLetExprConseqIf{,Let} into AST::IfLetExprConseqElse
This simplifies the AST's representation of if-let-statements
to match the HIR.
gcc/rust/ChangeLog:
* ast/rust-expr.h
(class IfLetExprConseqElse): Make else_block ExprWithBlock.
(class IfLetExprConseqIf): Remove.
(class IfLetExprConseqIfLet): Remove.
* ast/rust-ast-full-decls.h
(class IfLetExprConseqIf): Remove.
(class IfLetExprConseqIfLet): Remove.
* ast/rust-ast.cc
(IfLetExprConseqElse::as_string): Adjust output.
(IfLetExprConseqIf::as_string): Remove.
(IfLetExprConseqIfLet::as_string): Remove.
(IfLetExprConseqIf::accept_vis): Remove.
(IfLetExprConseqIfLet::accept_vis): Remove.
* ast/rust-ast-visitor.h
(ASTVisitor::visit): Remove IfLetExprConseqIf{,Let} visitors.
* ast/rust-ast-dump.cc
(Dump::visit): Likewise.
* ast/rust-ast-dump.h:
(Dump::visit): Likewise.
* ast/rust-ast-tokenstream.cc
(TokenStream::visit): Likewise.
* ast/rust-ast-tokenstream.h
(TokenStream::visit): Likewise.
* util/rust-attributes.cc
(AttributeChecker::visit): Likewise.
* util/rust-attributes.h:
(AttributeChecker::visit): Likewise.
* resolve/rust-early-name-resolver.cc
(EarlyNameResolver::visit): Likewise.
* resolve/rust-early-name-resolver.h
(EarlyNameResolver::visit): Likewise.
* resolve/rust-ast-resolve-base.h
(ResolverBase::visit): Likewise.
* resolve/rust-ast-resolve-base.cc
(ResolverBase::visit): Likewise.
* checks/errors/rust-feature-gate.h
(FeatureGate::visit): Likewise.
* expand/rust-cfg-strip.cc
(CfgStrip::visit): Likewise.
* expand/rust-cfg-strip.h:
(CfgStrip::visit): Likewise.
* expand/rust-expand-visitor.cc
(ExpandVisitor::visit): Likewise.
* expand/rust-expand-visitor.h
(ExpandVisitor::visit): Likewise.
* hir/rust-ast-lower-base.cc
(ASTLoweringBase::visit): Likewise.
* hir/rust-ast-lower-base.h:
(ASTLoweringBase::visit): Likewise.
* parse/rust-parse-impl.h
(Parser::parse_if_let_expr): Replace IfLetExprConseqIf{,Let} with IfLetExprConseqElse.
Signed-off-by: Owen Avery <powerboat9.gamer@gmail.com>
Diffstat (limited to 'gcc/rust/resolve')
-rw-r--r-- | gcc/rust/resolve/rust-ast-resolve-base.cc | 8 | ||||
-rw-r--r-- | gcc/rust/resolve/rust-ast-resolve-base.h | 2 | ||||
-rw-r--r-- | gcc/rust/resolve/rust-early-name-resolver.cc | 16 | ||||
-rw-r--r-- | gcc/rust/resolve/rust-early-name-resolver.h | 2 |
4 files changed, 0 insertions, 28 deletions
diff --git a/gcc/rust/resolve/rust-ast-resolve-base.cc b/gcc/rust/resolve/rust-ast-resolve-base.cc index 928e5ca..55883e9 100644 --- a/gcc/rust/resolve/rust-ast-resolve-base.cc +++ b/gcc/rust/resolve/rust-ast-resolve-base.cc @@ -303,14 +303,6 @@ ResolverBase::visit (AST::IfLetExprConseqElse &) {} void -ResolverBase::visit (AST::IfLetExprConseqIf &) -{} - -void -ResolverBase::visit (AST::IfLetExprConseqIfLet &) -{} - -void ResolverBase::visit (AST::MatchExpr &) {} diff --git a/gcc/rust/resolve/rust-ast-resolve-base.h b/gcc/rust/resolve/rust-ast-resolve-base.h index 54f4232..20e3be1 100644 --- a/gcc/rust/resolve/rust-ast-resolve-base.h +++ b/gcc/rust/resolve/rust-ast-resolve-base.h @@ -97,8 +97,6 @@ public: void visit (AST::IfExprConseqElse &); void visit (AST::IfLetExpr &); void visit (AST::IfLetExprConseqElse &); - void visit (AST::IfLetExprConseqIf &); - void visit (AST::IfLetExprConseqIfLet &); void visit (AST::MatchExpr &); void visit (AST::AwaitExpr &); diff --git a/gcc/rust/resolve/rust-early-name-resolver.cc b/gcc/rust/resolve/rust-early-name-resolver.cc index b1f10d8..d32f2dc 100644 --- a/gcc/rust/resolve/rust-early-name-resolver.cc +++ b/gcc/rust/resolve/rust-early-name-resolver.cc @@ -474,22 +474,6 @@ EarlyNameResolver::visit (AST::IfLetExprConseqElse &expr) } void -EarlyNameResolver::visit (AST::IfLetExprConseqIf &expr) -{ - expr.get_value_expr ()->accept_vis (*this); - expr.get_if_block ()->accept_vis (*this); - expr.get_conseq_if_expr ()->accept_vis (*this); -} - -void -EarlyNameResolver::visit (AST::IfLetExprConseqIfLet &expr) -{ - expr.get_value_expr ()->accept_vis (*this); - expr.get_if_block ()->accept_vis (*this); - expr.get_conseq_if_let_expr ()->accept_vis (*this); -} - -void EarlyNameResolver::visit (AST::MatchExpr &expr) { expr.get_scrutinee_expr ()->accept_vis (*this); diff --git a/gcc/rust/resolve/rust-early-name-resolver.h b/gcc/rust/resolve/rust-early-name-resolver.h index 7bedbaa..97b2a11 100644 --- a/gcc/rust/resolve/rust-early-name-resolver.h +++ b/gcc/rust/resolve/rust-early-name-resolver.h @@ -179,8 +179,6 @@ private: virtual void visit (AST::IfExprConseqElse &expr); virtual void visit (AST::IfLetExpr &expr); virtual void visit (AST::IfLetExprConseqElse &expr); - virtual void visit (AST::IfLetExprConseqIf &expr); - virtual void visit (AST::IfLetExprConseqIfLet &expr); virtual void visit (AST::MatchExpr &expr); virtual void visit (AST::AwaitExpr &expr); virtual void visit (AST::AsyncBlockExpr &expr); |