[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Useless conflict in bison 2.4.2, while 2.3 is happy
From: |
Joel E. Denny |
Subject: |
Re: Useless conflict in bison 2.4.2, while 2.3 is happy |
Date: |
Thu, 15 Jul 2010 07:56:15 -0400 (EDT) |
User-agent: |
Alpine 1.00 (DEB 882 2007-12-20) |
On Wed, 14 Jul 2010, Wilson Snyder wrote:
> I have a grammar which was working (I thought) for bison
> 2.3. Or, at least it is in production use, and has no bison
> errors :).
>
> When I compile this grammar with bison 2.4.2, I get the
> following:
>
> Rules useless in parser due to conflicts
> 560 senitemEdge: "posedge" expr "iff" expr
> 562 | "negedge" expr "iff" expr
> 564 | "edge" expr "iff" expr
I haven't explored your grammar, but I can tell you that Bison 2.3b
introduced the removal of unreachable states, and that can uncover more
useless rules. See the 2.3b entry in NEWS for a description of this
feature. If you dislike it, you can add the following directive to your
grammar:
%define lr.keep-unreachable-states
However, it's probably worth your time to figure out why those rules are
useless.