< prev index next >

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

Print this page

        

*** 4389,4402 **** return new UnaryNode(unaryToken, expr); } appendStatement(new ExpressionStatement(unaryLine, unaryToken, finish, expr)); return LiteralNode.newInstance(unaryToken, finish, true); } case VOID: case TYPEOF: - case ADD: - case SUB: case BIT_NOT: case NOT: next(); final Expression expr = unaryExpression(); return new UnaryNode(unaryToken, expr); --- 4389,4407 ---- 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 BIT_NOT: case NOT: next(); final Expression expr = unaryExpression(); return new UnaryNode(unaryToken, expr);
< prev index next >