Related articles |
---|
Yacc shift/reduce conflicts anumber@compuserve.com (Martyn Weiss) (2004-12-19) |
Re: Yacc shift/reduce conflicts snicol@apk.net (Scott Nicol) (2004-12-22) |
Re: Yacc shift/reduce conflicts casse@irit.fr (=?ISO-8859-1?Q?Hugues_Cass=E9?=) (2004-12-22) |
Re: Yacc shift/reduce conflicts dawidpawlata@wp.pl (Dawid Pawlata) (2004-12-22) |
From: | "Dawid Pawlata" <dawidpawlata@wp.pl> |
Newsgroups: | comp.compilers |
Date: | 22 Dec 2004 01:05:42 -0500 |
Organization: | news.onet.pl |
References: | 04-12-094 |
Keywords: | yacc |
Posted-Date: | 22 Dec 2004 01:05:42 EST |
Martyn Weiss wrote:
> I'm updating a language grammar I wrote a while ago using MKS Yacc,
> which consists of one or more statements separated by semicolons, i.e.
> S1;S2;...SN
>
> One of the things I want to do is to allow for superfluous embedded
> and trailing semicolons, as in S1;;S2;
>
> I had a bit if trouble expressing this in rules without getting
> shift/reduce conflicts. I found that if I simplify the grammar down
> to the following:
>
> program:
> statements
> ;
> statements:
> statement
> | statements semicolon
> | statements semicolon statement
> ;
> statement:
> someterminal
> ;
Hi!
what would you say about:
program:
statements
;
statements:
statement
| statements statement
;
statement:
| semicolon
someterminal_or_nonterminal semicolon
;
best regards
Dawid Pawlata
Return to the
comp.compilers page.
Search the
comp.compilers archives again.