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.
