mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 12:23:04 +00:00
Support %destructor and merge error locations in lalr1.cc.
* data/lalr1.cc (b4_cxx_destruct_def): New macro. (Parser::stos_): Define unconditionally. (Parser::destruct_): New method. Generate its body with b4_yydestruct_generate. (Parser::error_start_): New attribute. (Parser::parse) <yyerrlab, yyerrlab1>: Call destruct_ on erroneous token which are discarded. (Parser::parse) <yyerrlab, yyerrorlab, yyerrlab1>: Update error_start_ when erroneous token are discarded. (Parser::parse) <yyerrlab1>: Compute the location of the error token so that it covers all the discarded tokens. * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Adjust so it can be called with `%skeleton "lalr1.cc"', and do that.
This commit is contained in:
18
ChangeLog
18
ChangeLog
@@ -1,3 +1,21 @@
|
||||
2004-02-09 Alexandre Duret-Lutz <adl@gnu.org>
|
||||
|
||||
Support %destructor and merge error locations in lalr1.cc.
|
||||
|
||||
* data/lalr1.cc (b4_cxx_destruct_def): New macro.
|
||||
(Parser::stos_): Define unconditionally.
|
||||
(Parser::destruct_): New method. Generate its body with
|
||||
b4_yydestruct_generate.
|
||||
(Parser::error_start_): New attribute.
|
||||
(Parser::parse) <yyerrlab, yyerrlab1>: Call destruct_ on erroneous
|
||||
token which are discarded.
|
||||
(Parser::parse) <yyerrlab, yyerrorlab, yyerrlab1>: Update
|
||||
error_start_ when erroneous token are discarded.
|
||||
(Parser::parse) <yyerrlab1>: Compute the location of the error
|
||||
token so that it covers all the discarded tokens.
|
||||
* tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Adjust so
|
||||
it can be called with `%skeleton "lalr1.cc"', and do that.
|
||||
|
||||
2004-02-02 Paul Eggert <eggert@twinsun.com>
|
||||
|
||||
* src/Makefile.am (AM_CPPFLAGS): New macro. It mentions
|
||||
|
||||
Reference in New Issue
Block a user