X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/c732d2c6dc97b3c9fc66295469105bd294e88d75..1ae728637603d1e87ab247bbfe902cd91338000d:/ChangeLog diff --git a/ChangeLog b/ChangeLog index 0422816f..644548c9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,112 @@ +2002-06-20 Akim Demaille + + * data/bison.simple (b4_symbol_actions): New, replaces... + (b4_symbol_destructor, b4_symbol_printer): these. + (yysymprint): Be sure to call YYPRINT only for tokens, and using + user token numbers. + +2002-06-20 Akim Demaille + + * data/bison.simple (yydestructor): Rename as... + (yydestruct): this. + +2002-06-20 Akim Demaille + + * src/symtab.h, src/symtab.c (symbol_type_set) + (symbol_destructor_set, symbol_precedence_set): The location is + the last argument. + Adjust all callers. + +2002-06-20 Akim Demaille + + * src/parse-gram.y (YYPRINT, yyprint): Don't mess with the parser + internals. + * src/reader.h, src/reader.c (grammar_current_rule_prec_set): + Takes a location. + * src/symtab.h, src/symtab.c (symbol_class_set) + (symbol_user_token_number_set): Likewise. + Adjust all callers. + Promote complain_at. + * tests/input.at (Type Clashes): Adjust. + +2002-06-20 Akim Demaille + + * data/bison.simple (YYLEX): Fix the declaration when + %pure-parser. + +2002-06-20 Akim Demaille + + * data/bison.simple (yysymprint): Don't print the token number, + just its name. + * tests/actions.at (Destructors): Rename as... + (Printers and Destructors): this. + Also exercise %printer. + +2002-06-20 Akim Demaille + + * data/bison.simple (YYDSYMPRINT): New. + Use it to remove many of the #if YYDEBUG/if (yydebug). + +2002-06-20 Akim Demaille + + * src/symtab.h, src/symtab.c (symbol_t): printer and + printer_location are new members. + (symbol_printer_set): New. + * src/parse-gram.y (PERCENT_PRINTER): New token. + Handle its associated rule. + * src/scan-gram.l: Adjust. + (handle_destructor_at, handle_destructor_dollar): Rename as... + (handle_symbol_code_at, handle_symbol_code_dollar): these. + * src/output.c (symbol_printers_output): New. + (output_skeleton): Call it. + * data/bison.simple (yysymprint): New. Cannot be named yyprint + since there are already many grammar files with a user `yyprint'. + Replace the calls to YYPRINT to calls to yysymprint. + * tests/calc.at: Adjust. + * tests/torture.at (AT_DATA_STACK_TORTURE): Remove YYPRINT: it was + taking advantage of parser very internal details (stack size!). + +2002-06-20 Akim Demaille + + * src/scan-gram.l: Complete the scanner with the missing patterns + to pacify Flex. + Use `quote' and `symbol_tag_get' where appropriate. + +2002-06-19 Akim Demaille + + * tests/actions.at (Destructors): Augment to test locations. + * data/bison.simple (yydestructor): Pass it the current location + if locations are enabled. + Prototype only when __STDC__ or C++. + Change the argument names to move into the yy name space: there is + user code here. + +2002-06-19 Akim Demaille + + * data/bison.simple (b4_pure_if): New. + Use it instead of #ifdef YYPURE. + +2002-06-19 Akim Demaille + + * data/bison.simple (b4_location_if): New. + Use it instead of #ifdef YYLSP_NEEDED. + +2002-06-19 Akim Demaille + + Prepare @$ in %destructor, but currently don't bind it in the + skeleton, as %location use is not cleaned up yet. + + * src/scan-gram.l (handle_dollar, handle_destructor_at) + (handle_action_at): New. + (handle_at, handle_action_dollar, handle_destructor_dollar): Take + a braced_code_t and a location as additional arguments. + (handle_destructor_dollar): Instead of requiring `b4_eval', just + unquote one when outputting `b4_dollar_dollar'. + Adjust callers. + * data/bison.simple (b4_eval): Remove. + (b4_symbol_destructor): Adjust. + * tests/input.at (Invalid @n): Adjust. + 2002-06-19 Zack Weinberg * doc/bison.texinfo: Document ability to have multiple