[Top][All Lists]

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

Re: [GNU bison 1.75b] testsuite.log: 14 failures

From: Akim Demaille
Subject: Re: [GNU bison 1.75b] testsuite.log: 14 failures
Date: Thu, 09 Jan 2003 18:51:20 +0100
User-agent: Gnus/5.090008 (Oort Gnus v0.08) Emacs/21.2 (i386-pc-linux-gnu)

 >> I see no incompatibility with Bison 1.35 (the last "old" version of
 >> Bison), since any grammar that works with Bison 1.35 must lack
 >> %parse-param, so Bison 1.50 and later will still generate C code that
 >> invokes yyerror with just one argument.

 Bruce> Certainly 1.33 and IIRC earlier versions had the ability to generate
 Bruce> reentrant parsers (though with a mechanism different than a %-option)
 Bruce> with additional parameters but with no change to the yyerror calling
 Bruce> convention.  Indeed, the mechanisms used in those versions still appear
 Bruce> to work with 1.75b in lieu of %parse-param (which is incompatible with
 Bruce> earlier versions of bison).

Hi Bruce,

Yes, indeed, one can use #define macros to have a pseudo reentrant
parser by adding new arguements to yyparse, and new argument to
yylex.  But this was far from being satisfying and led to many people
#defining yyerror to steal internal variables.  So a new scheme had to
be found, into which _real_ reentrancy could be acheived, whatever the
programming language, whatever the type of parser.  This is lex-param
and parse-param.

Now, as far as error-param is concerned, parse-param was sufficient
for the cases I and others faced.  I'm not inclined to add yet another

reply via email to

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