]> git.saurik.com Git - bison.git/commit - ChangeLog
Have lalr1.cc catch with Paul Eggert's patch to fix the infinite
authorAkim Demaille <akim@epita.fr>
Mon, 25 Aug 2003 08:06:17 +0000 (08:06 +0000)
committerAkim Demaille <akim@epita.fr>
Mon, 25 Aug 2003 08:06:17 +0000 (08:06 +0000)
commit473013144def14af635adc1c47d3718d41ced23e
treebdb913e069a905bd6784e3908f78abf7ad20f09f
parent1f7a61ff990eb27dfb7902448c98ba9ccbbf9846
Have lalr1.cc catch with Paul Eggert's patch to fix the infinite
error recovery loops.  This patch is based on
<http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00000.html>.
Also, augment the similarity between lalr1.cc and yacc.c.
Note: the locations of error recovery rules are not correct yet.
* data/lalr1.cc: Comment changes to augment the similarity between
lalr1.cc and yacc.c.
(YYERROR): Goto to yyerrorlab, not yyerrlab1.
(yyerrlab1): Remove, but where it used to be (now the bottom part of
yyerrlab), when hitting EOF, pop the whole stack here instead of
merely falling thru the default error handling mechanism.
(yyerrorlab): New label, with the old contents of YYERROR,
plus the following change: pop the stack of rhs corresponding
to the production that invoked YYERROR.  That is how Yacc
behaves (required by POSIX).
* tests/calc.at (AT_CHECK_CALC_LALR1_CC): No longer expected to
fail.
ChangeLog
data/lalr1.cc
tests/calc.at