Hi all,

Groovy parses negative numbers as unary expression. For example, `-1`

is parsed as `-``1`, older parser parses negative numbers twice, so does the

Parrot parser for the identical output...

I suggest to parse negative numbers as REAL numbers instead of unary

expression[1]. It will break the edge case, for example: `-1(a, b, c)` is

parsed as `-(1.call(a, b, c))`, after refining, `-1(a, b, c)` is parsed as

`-1.call(a, b, c)`.

Any thoughts? If no PMC votes -1 on this GEP in 72 hours, I will

work on it.

Cheers,

Daniel.Sun

[1]

https://github.com/danielsun1106/groovy-parser/blob/master/src/main/antlr/GroovyParser.g4#L796--

Sent from:

http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html