This is an automated email from the ASF dual-hosted git repository. emilles pushed a commit to branch GROOVY-11601 in repository https://gitbox.apache.org/repos/asf/groovy.git
commit 62375622dbc7629783cb6a8fa872eedd8dea2209 Author: Eric Milles <[email protected]> AuthorDate: Fri Apr 4 15:28:48 2025 -0500 GROOVY-11601: remove support for expression list in `for`-each statement --- src/antlr/GroovyParser.g4 | 1 - .../java/org/apache/groovy/parser/antlr4/AstBuilder.java | 13 ++----------- 2 files changed, 2 insertions(+), 12 deletions(-) diff --git a/src/antlr/GroovyParser.g4 b/src/antlr/GroovyParser.g4 index b41faad333..18c08b5f44 100644 --- a/src/antlr/GroovyParser.g4 +++ b/src/antlr/GroovyParser.g4 @@ -704,7 +704,6 @@ originalForControl forInit : localVariableDeclaration - | expressionList[false] ; forUpdate diff --git a/src/main/java/org/apache/groovy/parser/antlr4/AstBuilder.java b/src/main/java/org/apache/groovy/parser/antlr4/AstBuilder.java index 2bef2bb19e..060fa17773 100644 --- a/src/main/java/org/apache/groovy/parser/antlr4/AstBuilder.java +++ b/src/main/java/org/apache/groovy/parser/antlr4/AstBuilder.java @@ -545,10 +545,6 @@ public class AstBuilder extends GroovyParserBaseVisitor<Object> { } } - if (asBoolean(ctx.expressionList())) { - return this.translateExpressionList(ctx.expressionList()); - } - throw createParsingFailedException("Unsupported for init: " + ctx.getText(), ctx); } @@ -558,14 +554,9 @@ public class AstBuilder extends GroovyParserBaseVisitor<Object> { return EmptyExpression.INSTANCE; } - return this.translateExpressionList(ctx.expressionList()); - } - - private Expression translateExpressionList(final ExpressionListContext ctx) { - List<Expression> expressionList = this.visitExpressionList(ctx); - + var expressionList = this.visitExpressionList(ctx.expressionList()); if (expressionList.size() == 1) { - return configureAST(expressionList.get(0), ctx); + return configureAST(expressionList.get(0), ctx); // one Expression } else { return configureAST(new ClosureListExpression(expressionList), ctx); }
