|
Change the way unary signs are handled (e.g., "+1e9", "-15"):
- instead of lexer, it is not the job of the parser
- due to how positional arguments chain together, expressions now need
to be grouped using curly brackets in positional arguments list in
order to avoid ambiguous netlists (e.g., `wg1 in out 100e-9 +2`)
- `-` appearing in net names could also pose issue but I think it's ok
now ?
Now:
- `wg1 in out {2 - 1}` → one positional arg (= 2-1 = 1)
- `wg1 in out 2 - 1` → two positional args (2 and -1)
- `wg1 in out-abc + 1` → one positional args (1) (output net name: `out-abc`)
- `wg1 in out - abc + 1` → one positional args (1) (output net name: `out-abc`)
Ultimately this should be revamped in a better way, but the way the parser works,
it was the best minimal change fix. It should hold for now.
|