Related articles |
---|
Shift/reduce conflict in Yacc C grammar hajnal@eik.bme.hu (HAJNAL Akos) (1998-01-11) |
Re: Shift/reduce conflict in Yacc C grammar thetick@magelang.com (Scott Stanchfield) (1998-01-14) |
Re: Shift/reduce conflict in Yacc C grammar clark@quarry.zk3.dec.com (Chris Clark USG) (1998-01-20) |
Re: Shift/reduce conflict in Yacc C grammar Bronikov@inreach.com (Dmitri&Nina Bronnikov) (1998-01-21) |
Re: Shift/reduce conflict in Yacc C grammar corbett@lupa.Eng.Sun.COM (1998-01-23) |
Re: Shift/reduce conflict in Yacc C grammar khays@sequent.com (1998-01-23) |
Re: Shift/reduce conflict in Yacc C grammar cfc@world.std.com (Chris F Clark) (1998-01-24) |
Re: Shift/reduce conflict in Yacc C grammar thetick@magelang.com (Scott Stanchfield) (1998-01-24) |
From: | "Scott Stanchfield" <thetick@magelang.com> |
Newsgroups: | comp.compilers |
Date: | 14 Jan 1998 14:46:54 -0500 |
Organization: | MageLang Institute - http://www.MageLang.com |
References: | 98-01-035 |
Keywords: | C, parse, yacc |
Can't you use the precedence trick?
You know (if I recall properly)
%nonassoc ELSE
%nonassoc LOWER_THEN_ELSE
...
ifStatement
: IF expr THEN statement %prec LOWER_THAN_ELSE
| IF expr THEN statement ELSE statement
;
Or does it still give a problem?
(Or have I been away from yacc that long???)
-- Scott
Scott Stanchfield - http://www.scruz.net/~thetick
MageLang Institute - http://www.MageLang.com
HAJNAL Akos wrote...
>I downloaded the ANSI C grammar from
>The above grammar contains a shift/reduce conflict at
>the definitions if-then, if-then-else.
>For this reason I can not put actions within these rules,
>i.e. for example after parsing the condition part.
[I believe he wants to put in embedded actions, which you can't do because
it forces yacc to look more than one token ahead. -John]
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.