bison ./ChangeLog data/lalr1.cc tests/calc.at
Akim Demaille <[email protected]>
| Newsgroups | gmane.comp.parsers.bison.cvs |
|---|---|
| Message-ID | <[email protected]> |
CVSROOT: /cvsroot/bison Module name: bison Branch: Changes by: Akim Demaille <[email protected]> 03/08/25 04:06:17 Modified files: . : ChangeLog data : lalr1.cc tests : calc.at Log message: 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. CVSWeb URLs: http://savannah.gnu.org/cgi-bin/viewcvs/bison/bison/ChangeLog.diff?tr1=1.1063&tr2=1.1064&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/bison/bison/data/lalr1.cc.diff?tr1=1.36&tr2=1.37&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/bison/bison/tests/calc.at.diff?tr1=1.58&tr2=1.59&r1=text&r2=text