| 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.