Skip to content

Conversation

@lucasly-ba
Copy link
Contributor

@lucasly-ba lucasly-ba commented Nov 20, 2025

This patch refactors all uses of vector patterns since a vector of patterns would be considered as an alt pattern, a vector is considered useless.

Copy link
Member

@CohenArthur CohenArthur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks great!

@lucasly-ba lucasly-ba force-pushed the remove-vector-match-arm-pattern branch 2 times, most recently from cb088e1 to 3c62522 Compare December 17, 2025 12:19
This patch refactors all uses of vector patterns since a vector of
patterns would be considered as an alt pattern, a vector is considered
useless.

gcc/rust/ChangeLog:

	* ast/rust-ast-builder.cc (Builder::match_arm): Moves the vector of patterns
	to a single pattern.
	* ast/rust-ast-collector.cc (TokenCollector::visit):Likewise.
	* ast/rust-ast-pointer-visitor.cc (PointerVisitor::visit):Likewise.
	* ast/rust-ast-visitor.cc (DefaultASTVisitor::visit):Likewise.
	* ast/rust-ast.cc (IfLetExpr::as_string):Likewise.
	(WhileLetLoopExpr::as_string):Likewise.
	(MatchArm::as_string):Likewise.
	* ast/rust-desugar-question-mark.cc (make_match_arm):Likewise.
	* ast/rust-desugar-while-let.cc (DesugarWhileLet::desugar):Likewise.
	* ast/rust-expr.h (class WhileLetLoopExpr):Likewise.
	(class IfLetExpr):Likewise.
	* backend/rust-compile-expr.cc (CompileExpr::visit):Likewise.
	* checks/errors/rust-hir-pattern-analysis.cc (lower_arm):Likewise.
	* expand/rust-cfg-strip.cc (CfgStrip::visit):Likewise.
	* hir/rust-ast-lower.cc (ASTLoweringIfLetBlock::desugar_iflet):Likewise.
	(ASTLoweringExprWithBlock::visit):Likewise.
	* hir/rust-hir-dump.cc (Dump::do_matcharm):Likewise.
	(Dump::visit):Likewise.
	* hir/tree/rust-hir-expr.cc (OperatorExpr::operator=):Likewise.
	(ArithmeticOrLogicalExpr::operator=):Likewise.
	(ComparisonExpr::operator=):Likewise.
	(LazyBooleanExpr::operator=):Likewise.
	(TypeCastExpr::operator=):Likewise.
	(AssignmentExpr::operator=):Likewise.
	(CompoundAssignmentExpr::operator=):Likewise.
	(GroupedExpr::operator=):Likewise.
	(ArrayExpr::operator=):Likewise.
	(ArrayIndexExpr::operator=):Likewise.
	(CallExpr::operator=):Likewise.
	(MethodCallExpr::operator=):Likewise.
	(FieldAccessExpr::operator=):Likewise.
	(BlockExpr::operator=):Likewise.
	(BreakExpr::operator=):Likewise.
	(ReturnExpr::operator=):Likewise.
	(UnsafeBlockExpr::operator=):Likewise.
	(BaseLoopExpr::operator=):Likewise.
	(WhileLetLoopExpr::WhileLetLoopExpr):Likewise.
	(WhileLetLoopExpr::operator=):Likewise.
	(MatchArm::MatchArm):Likewise.
	(MatchArm::operator=):Likewise.
	(MatchExpr::operator=):Likewise.
	* hir/tree/rust-hir-expr.h (class WhileLetLoopExpr):Likewise.
	* hir/tree/rust-hir-visitor.cc (DefaultHIRVisitor::walk):Likewise.
	(DefaultHIRVisitor::visit_match_arm):Likewise.
	* hir/tree/rust-hir.cc (WhileLetLoopExpr::as_string):Likewise.
	(MatchArm::as_string):Likewise.
	* parse/rust-parse-impl-expr.hxx: Likewise.
	* parse/rust-parse-impl.hxx: Likewise.
	* parse/rust-parse.h:Likewise.
	* resolve/rust-default-resolver.cc (DefaultResolver::visit_if_let_patterns):Likewise.
	* resolve/rust-late-name-resolver-2.0.cc (Late::visit):Likewise.
	* typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit):Likewise.

Signed-off-by: Lucas Ly Ba <[email protected]>
@lucasly-ba lucasly-ba force-pushed the remove-vector-match-arm-pattern branch from 3c62522 to e53b25b Compare December 17, 2025 12:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants