[antlr-interest] empty rule catches unthrown RecognitionException
Terence Parr
parrt at cs.usfca.edu
Fri Jul 1 15:12:31 PDT 2011
i fixed this in latest beta for 3.4...can you try that?
Ter
On Jul 1, 2011, at 3:10 PM, Trevor John Thompson wrote:
> I have a grammar in which i wish to create an imaginary AST node, and then have an action treat that node. The most straightforward expression i have devised is:
> grammar Empty;
> options {output=AST;}
> tokens {Imaginary;}
> @members {void treat(Object t){}}
>
> parse: empty EOF! {treat($empty.tree);};
> empty: ->^(Imaginary);
>
> However, the generated EmptyParser.java fails to compile because empty() catches RecognitionException, which is never thrown.
>
> I am working around this by:
> empty: ->^(Imaginary)|Imaginary;
> which works because the imaginary token can never be produced by the lexer.
>
> Is there some other way i should be going about this?
> --
> Trevor John Thompson (425) 246-4023
> net: tijet at me.com
> Quidquid Latine scriptum sit, altum videtur.
>
>
> List: http://www.antlr.org/mailman/listinfo/antlr-interest
> Unsubscribe: http://www.antlr.org/mailman/options/antlr-interest/your-email-address
More information about the antlr-interest
mailing list