bug-bison
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MAXTABLE & Serious issues with bison 1.30


From: Akim Demaille
Subject: Re: MAXTABLE & Serious issues with bison 1.30
Date: 03 Jan 2002 13:46:26 +0100
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Common Lisp)

>>>>> "Tim" == Tim Van Holder <address@hidden> writes:

Tim> Yes, but now try with 'bison -d'; plain bison did work with 1.30
Tim> as well.  

???

/tmp % ~/src/bison-1.29/tests/bison -d i4gl.y                    nostromo 13:41
i4gl.y contient 31 useless nonterminals et 52 useless rules
i4gl.y contient 1059 shift/reduce conflicts and 617 reduce/reduce conflicts.
i4gl.y:4110: erreur fatale: taille maximale de la table (32767) dépassée
/tmp % ~/src/bison-exp/tests/bison -d i4gl.y                     nostromo Err 1
i4gl.y contient 31 useless nonterminals et 52 useless rules
i4gl.y contient 1059 shift/reduce conflicts and 617 reduce/reduce conflicts.
i4gl.y:4110: erreur fatale: taille maximale de la table (32767) dépassée


Tim> IIRC CVS bison also crashed with -k or -t (not sure which).  It
Tim> seems to be pretty rare (other grammars I tried had no such
Tim> problem), so my guess is that this grammar's utter crappyness is
Tim> somehow triggering rare behavior.

???

/tmp % ~/src/bison-exp/tests/bison -d -v -k -t i4gl.y            nostromo Err 1
i4gl.y contient 31 useless nonterminals et 52 useless rules
i4gl.y contient 1059 shift/reduce conflicts and 617 reduce/reduce conflicts.
i4gl.y:4110: erreur fatale: taille maximale de la table (32767) dépassée
/tmp % ~/src/bison-1.29/tests/bison -d -v -k -t i4gl.y           nostromo Err 1
i4gl.y contient 31 useless nonterminals et 52 useless rules
i4gl.y contient 1059 shift/reduce conflicts and 617 reduce/reduce conflicts.
i4gl.y:4110: erreur fatale: taille maximale de la table (32767) dépassée




Tim> I thought loc was an int (but I could be wrong).  Another option
Tim> would be to make MAXTABLE a variable, and double this (followed
Tim> by a realloc of the two or three relevant arrays) if needed.
Tim> This would allow for (probably rare) grammars that need even more
Tim> than 64K.

The problem is the impact on the other architectures.  We have to
carefully make sure we don't overflow some arch.

>> Are you in a hurry?

Tim> Not particularly; we're only using this grammar (it's from the
Tim> aubit4gl project on sourceforge, it seems) as a starting point
Tim> for writing our own, so getting this one to work isn't a high
Tim> priority.

OK, good.  Thanks!

>> How was this grammar handled before?

Tim> You mean bison flags?  We usually use 'bison -dkvt'

I mean, it appears that Bison doesn't handle this grammar, and that it
never did.  So my question is: what tool was used?  I'd like to see
the code it outputs.

>> ~/src/bison-1.29 % tests/bison /tmp/i4gl.y nostromo 11:17
>> /tmp/i4gl.y contient 31 useless nonterminals et 52 useless rules

Tim> non-terminaux inutils/re`gles inutiles (*)

Yeah, this is atrocious :)

>> /tmp/i4gl.y contient 1059 shift/reduce conflicts and 617
>> reduce/reduce conflicts.

Tim> conflits de shifter/reduire (*)

Tim> (*) Ok, so my French isn't great either :-)

:)

Actually `shift/reduce conflict' is to be said `conflit de
décalage/réduction'.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]