Tweak `commandExpression` rule's semantic predicate
diff --git a/subprojects/parser-antlr4/src/main/java/org/apache/groovy/parser/antlr4/SemanticPredicates.java b/subprojects/parser-antlr4/src/main/java/org/apache/groovy/parser/antlr4/SemanticPredicates.java
index 5eb20a4..508dcd7 100644
--- a/subprojects/parser-antlr4/src/main/java/org/apache/groovy/parser/antlr4/SemanticPredicates.java
+++ b/subprojects/parser-antlr4/src/main/java/org/apache/groovy/parser/antlr4/SemanticPredicates.java
@@ -22,6 +22,7 @@
 import org.antlr.v4.runtime.Token;
 import org.antlr.v4.runtime.TokenStream;
 import org.antlr.v4.runtime.tree.ParseTree;
+import org.codehaus.groovy.GroovyBugError;
 import org.codehaus.groovy.ast.ModifierNode;
 
 import java.util.Arrays;
@@ -116,23 +117,18 @@
         if (context instanceof PostfixExprAltContext) {
             List<ParseTree> peacChildren = ((PostfixExprAltContext) context).children;
 
-            if (1 == peacChildren.size()) {
+            try {
                 ParseTree peacChild = peacChildren.get(0);
+                List<ParseTree>  pecChildren = ((PostfixExpressionContext) peacChild).children;
 
-                if (peacChild instanceof PostfixExpressionContext) {
-                    List<ParseTree>  pecChildren = ((PostfixExpressionContext) peacChild).children;
+                ParseTree pecChild = pecChildren.get(0);
+                PathExpressionContext pec = (PathExpressionContext) pecChild;
 
-                    if (1 == pecChildren.size()) {
-                        ParseTree pecChild = pecChildren.get(0);
+                int t = pec.t;
 
-                        if (pecChild instanceof PathExpressionContext) {
-                            PathExpressionContext pec = (PathExpressionContext) pecChild;
-                            int t = pec.t;
-
-                            return (2 == t || 3 == t);
-                        }
-                    }
-                }
+                return (2 == t || 3 == t);
+            } catch (IndexOutOfBoundsException | ClassCastException e) {
+                throw new GroovyBugError("Unexpected structure of expression context: " + context, e);
             }
         }