/
ANTLR 3.1.1 Release Notes
ANTLR 3.1.1 Release Notes
ANTLR v3.1.1
October 1, 2008
Terence Parr
ANTLR project lead and supreme dictator for life
University of San Francisco
Credits
ANTLR v3.1.1 is a bug fix release (and a few tweaks to the examples-v3 directory).
From bug tracking system
- ANTLR-4 Imaginary ttoken rewrite requires 8 bit characters - needs STRING type
- ANTLR-314 rule return aggregate type must be same for all += labels
- ANTLR-320 FOLLOW of rule element not computed properly
- ANTLR-326 Users sees small memory leak at the termination of tree producing parser
- ANTLR-334 Check index 0 vs -1 changes
Also fixed a few minor bugs such as:
- a missing attribute definition in error template.
- pushFollow in BaseRecognizer was incorrect; it altered cache values instead of duplicating.
- Made a REV static variable in Tool so that we can change the rev for daily builds.
- Labels on tokens, rules carry into synpreds now so semantic predicates work. This didn't work since labels were stripped in the synpred and they weren't defined in the generated method.
a : x=A z=a {$x.text.equals($z.text)}? A | y=A a A A ;
- Made \uFFFF a valid character. Token types are 32-bit clean using -1 not 0x0000FFFF as -1 so it should be okay. Label.java:
public static final int MIN_CHAR_VALUE = '\u0000'; public static final int MAX_CHAR_VALUE = '\uFFFF';
Incompatibilities
The runtime library names changed from antlr-runtime-3.1 (old version) to antlr-3.1.1-runtime.