Negative number is not lexed as integer instead is lexed as negative operator and integer.
Demo
/AParser ─╯
>>> -1
libc++abi: terminating due to uncaught exception of type UnexpectedTokenParsedException: Unexpected Operator: 'Operator( Value: '-' )' is not allowed
[1] 17509 abort ./AParser
and
./AParser ─╯
>>> set a = -1
libc++abi: terminating due to uncaught exception of type UnexpectedTokenParsedException: Unexpected Operator: 'Operator( Value: '-' )' is not allowed
[1] 17512 abort ./AParser
Problem
Demo
and