Related articles |
---|
too many gotos in bison nic@amadido.co.uk (2004-10-17) |
Re: too many gotos in bison nic@amadido.co.uk (2004-10-21) |
From: | nic@amadido.co.uk (Nick Chapman) |
Newsgroups: | comp.compilers |
Date: | 21 Oct 2004 22:28:04 -0400 |
Organization: | http://groups.google.com |
References: | 04-10-118 |
Keywords: | yacc |
Posted-Date: | 21 Oct 2004 22:28:04 EDT |
> [How many rules does your grammar have? I don't ever recall coming
> close to the goto limit. -John]
The grammar is for the SystemVerilog Hardware Description Language.
The LRM and grammar can be found at:
http://www.eda.org/sv/SystemVerilog_3.1a.pdf
http://www.eda.org/sv/SV3.1a_bnf_no_footnotes.htm
The .y derived directly from this grammar is badly conflicting:
1303 shift/reduce, 2444 reduce/reduce
It has:
2304 rules (from 740 non-terminals),
5382 states,
32010 gotos -just within the goto limit.
We have systematically transformed the grammar to remove all conflicts,
to derive a .y with:
3193 rules (from 878 non-terminals),
7773 states,
45921 gotos.
Nick.
[Three thousand rules is a rather large grammar. I'm not surprised it
runs out of space. -John]
Return to the
comp.compilers page.
Search the
comp.compilers archives again.