[antlr-interest] Infinite Recursion
mzukowski at yci.com
mzukowski at yci.com
Tue Jan 27 10:42:29 PST 2004
Seems to me it's
dimentia: ("BAR")* ("FOO")* ;
Perhaps with an action to ensure that at least one matched.
Monty
Also see http://javadude.com/articles/lalrtoll.html
Monty
-----Original Message-----
From: Jason [mailto:jasonriz at yahoo.com]
Sent: Tuesday, January 27, 2004 10:29 AM
To: antlr-interest at yahoogroups.com
Subject: [antlr-interest] Infinite Recursion
Hello,
I'm just run antlr agains a yacc grammar and it
generated hundreds of 'infinite recursion' errors.
I've spent quite a bit of time on the ANTLR site
(which is excellent by the way) and I'm trying to wrap
my head around all of this stuff. I understand that
the errors are generated because ANTLR parses top down
so can't handle the Left Hand Recursion which is
common in YACC grammars. I can convert the LHR for
the simple case which only involves one rule but am at
a bit of a loss to handle the following which is a
much simplified version of a piece of my grammar:
startRule:
dimentia;
dimentia:
gentle | "FOO";
gentle:
"BAR" | dimentia;
which produces 3 infinite recursion errors. I
understand the problem but it's not clear to me how to
fix it :)
On a related note - I've noticed that ANTLR doesn't
complain about the following grammar:
startRule:
dimentia;
dimentia:
gentle;
gentle:
dimentia;
Though when I look at the generated parser it seems as
though it would obviously be infinitely recursive.
Just wondering. Thanks in advance for any replies!
-jason
__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free web site building tool. Try it!
http://webhosting.yahoo.com/ps/sb/
Yahoo! Groups Links
To visit your group on the web, go to:
http://groups.yahoo.com/group/antlr-interest/
To unsubscribe from this group, send an email to:
antlr-interest-unsubscribe at yahoogroups.com
Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
Yahoo! Groups Links
To visit your group on the web, go to:
http://groups.yahoo.com/group/antlr-interest/
To unsubscribe from this group, send an email to:
antlr-interest-unsubscribe at yahoogroups.com
Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
More information about the antlr-interest
mailing list