[antlr-interest] Grammar not detecting extraneous input at end

Kirby Bohling kirby.bohling at gmail.com
Thu Jun 3 11:46:14 PDT 2010


Channeling Jim Idle:

Remember to use antlr.markmail.org, this is a very common question,
and has been answered many times.

More then likely you don't require "EOF" at the end of whatever your
start rule is.  The token stream more then likely has a ')' and if you
tried to parse again, you'd get an error.  Use EOF to require all
input to be parsed.

Kirby



On Thu, Jun 3, 2010 at 1:38 PM, Karim Chichakly <karimc17 at gmail.com> wrote:
> Hi,
>
> I have a grammar that does not give an error (in ANTLR 3.2) if there are
> extraneous characters at the end of the input.  For example, I would expect
> "(a+b))" to generate an error, but it does not.  "(a+b)" is parsed fine and
> the extra ")" at the end is just ignored.
>
> I enclose a small sample grammar that demonstrates this problem.  I am using
> the C runtime, but the problem is not there.  The error is not detected in
> ANTLRWorks 1.4 either.
>
> Any help anyone can give me would be greatly appreciated.
>
> Thank you,
>
> Karim
>
>
> 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