// to ensure that -0 keeps its proper value.
// unary expressions are right associative
if (nextToken == Token.OPERATOR_PLUSPLUS) {
readToken(Token.OPERATOR_PLUSPLUS);
return new IncrementExpression(parseUnaryExpression(), 1, false);
} else if (nextToken == Token.OPERATOR_MINUSMINUS) {
readToken(Token.OPERATOR_MINUSMINUS);
return new IncrementExpression(parseUnaryExpression(), -1, false);
} else if (nextToken == Token.OPERATOR_PLUS
|| nextToken == Token.OPERATOR_MINUS
|| nextToken == Token.OPERATOR_BITWISENOT
|| nextToken == Token.OPERATOR_LOGICALNOT
|| nextToken == Token.KEYWORD_VOID