< prev index next >

src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/parser/Parser.java

Print this page

        

@@ -4389,14 +4389,19 @@
                 return new UnaryNode(unaryToken, expr);
             }
             appendStatement(new ExpressionStatement(unaryLine, unaryToken, finish, expr));
             return LiteralNode.newInstance(unaryToken, finish, true);
         }
+        case ADD:
+        case SUB: {
+            final TokenType opType = type;
+            next();
+            final Expression expr = unaryExpression();
+            return new UnaryNode(Token.recast(unaryToken, (opType == TokenType.ADD) ? TokenType.POS : TokenType.NEG), expr);
+        }
         case VOID:
         case TYPEOF:
-        case ADD:
-        case SUB:
         case BIT_NOT:
         case NOT:
             next();
             final Expression expr = unaryExpression();
             return new UnaryNode(unaryToken, expr);
< prev index next >