ANTLR 3.5 Release Notes
Improvements
Add Gokulakannan Somasundaram's C++ target based upon C target. Use language=Cpp in options. It's a header-only library, runtime/Cpp/include, so installation is not required.
Python 3.3 target added by Benjamin Wolf based upon Python 2 target https://github.com/antlr/antlr3/pull/23
GUnit improvements https://github.com/antlr/antlr3/pull/27
ANTLR3 update of ObjC runtime to go with latest ST4-ObjC https://github.com/antlr/antlr3/pull/17
Provide Lexer get end of file method so people can override it.
Bug Fixes
Improve error reporting and recovery for STRAY_BRACKET, fixes antlr/antlr3#42
Do not write output files if errors were reported, fixes antlr/antlr3#61
Fix AST operator on labeled set of terminals e.g. x=(A|B)^
Fix labeled set of terminals with rewrite e.g. x=(A|B) -> $x
Added error msg for .. in parser
LookaheadStream bug fixes; https://github.com/antlr/antlr3/pull/21
Pulled "Fix Python handling of syntactic predicates" https://github.com/antlr/antlr3/pull/33
stderr not test correctly in gunit examineExecResult
Dieter Habelitz reported bug in java code gen with synpreds. labels were being carried from grammar into synpreds but weren't typed properly (they were "void x=null;" for x=ruleref labels)
(Sam) Rule.setOption didn't do memoize option right.
(Sam) Fix labels in synpreds
(Sam) Fix input index for NoViableAltException during inline prediction
(Sam) Fix label aliasing errors in cases like (x=y|x=z)
(Sam) fix stack overflow in semantic context analysis
added range check to BaseTree.insertChild()