[antlr-interest] empty alternatives erroneously consume tokens
Michael Brade
brade at informatik.uni-muenchen.de
Thu Mar 2 05:02:51 PST 2006
On Thursday 02 March 2006 11:31, Alexey Demakov wrote:
> 2. _tokenSet_68 contains all tokens that can be after cont() rule.
> So, if it is full grammar, _tokenSet_68 is empty. It causes
> line 7:1: unexpected token: null
>
> 3. Try to add EOF at the end of c_expression() rule:
> c_expression : (c_atom|c_bracket_exp|c_prefix_exp) cont EOF;
> I'm sure it will solve the problem.
Thanks for the answer, it made me realize the problem! EOF did not help, but
the key is indeed the FOLLOW set: if I embed the c_expression rule within
another rule that is not recursive, e.g.
expression: c_expression;
and thus has an empty follow set, then it works :)
Thanks a lot,
--
Michael Brade; KDE Developer, Student of Computer Science
|-mail: echo brade !#|tr -d "c oh"|s\e\d 's/e/\@/2;s/$/.org/;s/bra/k/2'
°--web: http://www.kde.org/people/michaelb.html
KDE 4: Beyond Your Expectations
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://www.antlr.org/pipermail/antlr-interest/attachments/20060302/1046329b/attachment.bin
More information about the antlr-interest
mailing list