40 lines
1.2 KiB
Plaintext
40 lines
1.2 KiB
Plaintext
ANTLR v4 Honey Badger early access
|
|
|
|
Jan 14, 2012
|
|
|
|
* labels on tokens in left-recursive rules caused codegen exception.
|
|
* leave start/stop char index alone in CommonTokenFactory; refers to original text.
|
|
* reuse of -> label on multiple alts in rule caused dup ctx object defs.
|
|
|
|
Jan 11, 2012
|
|
|
|
* -> id labels work now for outermost alternatives, even for left-recursive
|
|
rules; e.g.,
|
|
|
|
| a=e '*' b=e {$v = $a.v * $b.v;} -> mult
|
|
* Fixed a bug where visitTerminal got a NPE
|
|
* in tree views, spaces/newlines were blanks. I converted to \n and middle dot
|
|
for space.
|
|
|
|
Jan 5, 2012
|
|
|
|
* Deleted code to call specific listeners by mistake. added back.
|
|
* Labels allowed in left-recursive rules:
|
|
e returns [int v]
|
|
: a=e '*' b=e {$v = $a.v * $b.v;}
|
|
| a=e '+' b=e {$v = $a.v + $b.v;}
|
|
| INT {$v = $INT.int;}
|
|
| '(' x=e ')' {$v = $x.v;}
|
|
;
|
|
|
|
|
|
Jan 4, 2012
|
|
|
|
* '_' was allowed first in symbol names in grammar
|
|
* fix unit tests
|
|
* Allow labels in left-recursive rules
|
|
* lr rules now gen only 1 rule e->e not e->e_ etc... altered tests to build parse trees.
|
|
* no more -trace, use Parser.setTrace(true)
|
|
* add context rule option; not hooked up
|
|
* 1+2*3 now gives new parse tree: (e (e 1) + (e (e 2) * (e 3)))
|