You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by em...@apache.org on 2022/02/24 20:18:00 UTC

[groovy] 02/02: fix for JDK7

This is an automated email from the ASF dual-hosted git repository.

emilles pushed a commit to branch GROOVY_2_5_X
in repository https://gitbox.apache.org/repos/asf/groovy.git

commit 5411b2e312dc46c6cf571534531799ae8a96bd1d
Author: Eric Milles <er...@thomsonreuters.com>
AuthorDate: Thu Feb 24 14:05:38 2022 -0600

    fix for JDK7
---
 .../groovy/transform/stc/StaticTypeCheckingVisitor.java | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

diff --git a/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java b/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java
index 18efda4..6d69498 100644
--- a/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java
+++ b/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java
@@ -125,7 +125,6 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
-import java.util.Optional;
 import java.util.Set;
 import java.util.concurrent.atomic.AtomicLong;
 import java.util.concurrent.atomic.AtomicReference;
@@ -2032,18 +2031,18 @@ public class StaticTypeCheckingVisitor extends ClassCodeVisitorSupport {
         visitPrefixOrPostifExpression(expression, inner, type);
     }
 
-    private static Optional<Token> asAssignment(final int op) {
+    private static Token asAssignment(final int op) {
         switch (op) {
             case Types.PLUS_PLUS:
             case Types.PREFIX_PLUS_PLUS:
             case Types.POSTFIX_PLUS_PLUS:
-                return Optional.of(Token.newSymbol(Types.PLUS_EQUAL, -1, -1));
+                return Token.newSymbol(Types.PLUS_EQUAL, -1, -1);
             case Types.MINUS_MINUS:
             case Types.PREFIX_MINUS_MINUS:
             case Types.POSTFIX_MINUS_MINUS:
-                return Optional.of(Token.newSymbol(Types.MINUS_EQUAL, -1, -1));
+                return Token.newSymbol(Types.MINUS_EQUAL, -1, -1);
         }
-        return Optional.empty();
+        return null;
     }
 
     private static ClassNode getMathWideningClassNode(final ClassNode type) {
@@ -2059,9 +2058,9 @@ public class StaticTypeCheckingVisitor extends ClassCodeVisitorSupport {
     }
 
     private void visitPrefixOrPostifExpression(final Expression origin, final Expression operand, final int operator) {
-        Optional<Token> token = asAssignment(operator);
-        if (token.isPresent()) { // push "operand += 1" or "operand -= 1" onto stack for LHS checks
-            typeCheckingContext.pushEnclosingBinaryExpression(binX(operand, token.get(), constX(1)));
+        Token token = asAssignment(operator);
+        if (token != null) { // push "operand += 1" or "operand -= 1" onto stack for LHS checks
+            typeCheckingContext.pushEnclosingBinaryExpression(binX(operand, token, constX(1)));
         }
         try {
             operand.visit(this);
@@ -2110,7 +2109,7 @@ public class StaticTypeCheckingVisitor extends ClassCodeVisitorSupport {
                 storeType(origin, isPostfix ? operandType : inferReturnTypeGenerics(operandType, node, ArgumentListExpression.EMPTY_ARGUMENTS));
             }
         } finally {
-            if (token.isPresent()) typeCheckingContext.popEnclosingBinaryExpression();
+            if (token != null) typeCheckingContext.popEnclosingBinaryExpression();
         }
     }