This patch checks negative number literals (like -1) at the parser stage, so that invalid values are caught at compile time.
Currently this is only done for negative integers at the normalizestatementmodifiers stage.
This is also important for
BOO-1, so that literal processor macros receive sign information ("-" at the beginning of the literal)..
print(-1.0)
print(-1)
print(-1h)
print(- 1.0)
print(-0xAA)
x = 2147483648 //error, value one too big for an int:
xlong = 9223372036854775807L //ok, max value allowed for long