X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/83cd972a1a7f536a8be5c0e7504768c3fb7298f4..75f5aaea275c480142ed8791e33933cda3a3ac90:/ChangeLog diff --git a/ChangeLog b/ChangeLog index dd54dca4..73264c4b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,93 +1,220 @@ -2001-08-20 Robert Anisko +2001-09-20 Marc Autret - * src/output.c (prepare): Add prefixed names. - (output_parser): Output semantic actions. - (output_parser): Fix bug on '%%line' directives. + * doc/bison.texinfo: Adjust terminologies about prologue and epilogue + sections of Bison. -2001-08-19 Robert Anisko +2001-09-19 Pascal Bart - * src/output.c (output_rule_data): Do not output tables to - the table obstack. + * src/bison.simple: s/%%filename/%%skeleton. + * src/muscle_tab.c (getargs.h): Include it. + (muscle_init): Insert new muscle skeleton. - * src/reader.c (reader): Remove calls to 'output_headers' and - 'output_trailers'. Remove some C output. - (readgram): Disable a piece of code that was writing a default - definition for 'YYSTYPE'. - (reader_output_yylsp): Remove. - (packsymbols): Output token defintions to a macro. - (copy_definition): Disable C output. +2001-09-18 Pascal Bart - * src/output.c (output_headers): Remove. The C code printed by this - function should now be in the skeletons. - (output_trailers): Remove. - (output): Disable call to 'reader_output_yylsp'. + * src/output.c (output_parser): Delete unused variable actions_dumped. -2001-08-18 Robert Anisko +2001-09-07 Pascal Bart - * src/output.c: Remove some C dedicated output. + * src/output.c (output): Delete call to reader_output_yylsp. + * src/reader.c (reader): Likewise. + * src/reader.h: Delete declaration of reader_output_yylsp. + +2001-09-02 Marc Autret -2001-08-18 Robert Anisko + * src/reader.c: Include muscle_tab.h. + (parse_union_decl): Update. + (parse_macro_decl): Rename parse_muscle_decl. + Update to use renamed functions and variable. + (read_declarations, copy_action, read_additionnal_code, : Updated + with correct variables and functions names. + (packsymbols, reader): Likewise. + + * src/reader.h (muscle_obstack): Extern declaration update. + + * src/output.c: Include muscle_tab.h + In all functions using macro_insert, change by using muscle_insert (). + (macro_obstack): Rename muscle_obstack. + Echo modifications in the whole file. + (MACRO_INSERT_INT): Rename MUSCLE_INSERT_INT. + (MACRO_INSERT_STRING): Rename MUSCLE_INSERT_STRING. + (MACRO_INSERT_PREFIX): Rename MUSCLE_INSERT_PREFIX. - * src/output.c (output_defines): Remove. + * src/muscle_tab.h: Update double inclusion macros. + (macro_entry_s): Rename muscle_entry_s. + Update prototypes. + + * src/muscle_tab.c: Include muscle_tab.h. + Rename macro_tabble to muscle_table. + (mhash1, mhash2, mcmp): Use muscle_entry. + (macro_init): Rename muscle_init. Update. + (macro_insert): Rename muscle_insert. Update. + (macro_find): Rename muscle_find. Update. -2001-08-18 Robert Anisko + * src/main.c: Include muscle_tab.h. + (main): Call muscle_init (). + * src/Makefile.am (bison_SOURCES): Echo modifications. - * src/output.c: Improve the use of macro and output obstacks. +2001-09-02 Marc Autret -2001-08-18 Robert Anisko + Now the files macro_tab.[ch] are named muscle_tab.[ch]. + + * src/muscle_tab.c, src/muscle_tab.h: Add files. - * src/output.c (output_token_translations): Associate 'translate' table - with a macro. No output to the table obstack. - (output_gram): Same for 'rhs' and 'prhs'. - (output_stos): Same for 'stos'. - (output_rule_data): Same for 'r1' and 'r2'. - (token_actions): Same for 'defact'. - (goto_actions): Same for 'defgoto'. - (output_base): Same for 'pact' and 'pgoto'. - (output_table): Same for 'table'. - (output_check): Same for 'check'. +2001-09-02 Marc Autret -2001-08-18 Robert Anisko + * src/macrotab.c, src/macrotab.h: Remove. - * src/output.c (output_table_data): New function. - (output_short_table): Remove. - (output_short_or_char_table): Remove. +2001-09-01 Pascal Bart -2001-08-17 Robert Anisko + * src/reader.c (copy_guard): Use muscle to specify the `#line' + filename. - * src/main.c (main): Initialize the macro table. +2001-09-01 Marc Autret -2001-08-17 Robert Anisko + * tests/calc.at (exp): Now, YYERROR_VERBOSE need to be set + to an explicit value to activate the feature. We do it here. - * src/output.c (output_parser): Use the macro table. - * src/macrotab.c: New file. - * src/macrotab.h: New file. +2001-08-31 Pascal Bart -2001-08-17 Robert Anisko + * src/output.c (prepare): Delete the `filename' muscule insertion. + * src/reader.c (copy_action): Use `filename' muscule with `#line'. + (parse_union_decl): Likewise. + * src/macrotab.c (macro_init): Initialize filename by infile. - * lib/xalloc.h (CALLOC, MALLOC, REALLOC): New macros. +2001-08-31 Marc Autret -2001-08-17 Robert Anisko + * src/bison.simple (YYLSP_NEEDED): New definition. + * src/output.c (prepare): Add macro insertion of `locations_flag' - * lib/hash.c: New file. - * lib/hash.h: New file. +2001-08-31 Pascal Bart -2001-08-16 Robert Anisko + * src/output.c (prepare): Delete insertion of previous muscles, + and insert the `prefix' muscles. + * src/macrotab.c (macro_init): Likewise. + (macro_init): Initialization prefix directive by `yy'. + * src/bison.simple: Substitute all %%yylex, %%yychar, %%yylval, + %%yydebug, %%yyerror, %%yynerrs and %%yyparse by yylex, yychar, + yylval, yydebug, yyerror, yynerrs and yyparse. + New directive `#define' to substitute yydebug, ... with option + name_prefix. - * src/reader.c (parse_macro_decl): Read macro identifiers using - copy_identifier rather than lex. +2001-08-31 Pascal Bart -2001-08-16 Robert Anisko + * src/main.c (main): Standardize. + * src/output.c (output_table_data, output_parser): Likewise. + * src/macrotab.h, src/macrotab.c, src/bison.simple: Likewise. - * src/reader.c (copy_identifier): New. +2001-08-31 Pascal Bart , Marc Autret + + * src/reader.c (read_additionnal_code): Rename %%user_code to + %%epilogue. + * src/output.c (output): Rename %%declarations to %%prologue. + * src/bison.simple: Echo modifications. + +2001-08-31 Marc Autret + + * src/reader.c (readgram): CleanUp. + (output_token_defines): Likewise. + (packsymbols): Likewise. + (reader): Likewise. + * src/output.c (output): CPP-out useless code. -2001-08-16 Robert Anisko +2001-08-31 Pascal Bart - * src/reader.c (read_declarations): Add case for macro definition. - * src/lex.c (percent_table): Add tok_define. - * src/lex.h: Add tok_define. + * src/reader.c (reader): Delete obsolete call to function + output_trailers and output_headers. + * src/output.h: Remove obsolete functions prototypes of output_headers + and output_trailers. + +2001-08-30 Pascal Bart + + * src/main.c: Include macrotab.h. + * src/macrotab.h (macro_entry_s): Constify fields. + Adjust functions prototypes. + * src/macrotab.c (macro_insert): Constify key and value. + (macro_find): Constify key. + (macro_insert): Include 'xalloc.h' + (macro_insert): Use XMALLOC. + (macro_find): Constify return value. + * src/output.c (output_table_data): Rename table to table_data. + (output_parser): Constify macro_key, macro_value. + +2001-08-30 Marc Autret + + * src/reader.c (parse_skel_decl): New. + (read_declarations): Add case `tok_skel', call parse_skel_decl (). + * src/lex.h (token_t): New token `tok_skel'. + * src/lex.c (percent_table): Add skeleton option entry. + Standardize. + +2001-08-29 Marc Autret + + * src/bison.simple: Add %%user_code directive at the end. + * src/reader.c (read_additionnal_code): New. + (reader): Use it. + * src/output.c (output_program): Remove. + (output): Update. + +2001-08-28 Marc Autret + + * src/output.c (output_actions): Clean up. + (output_gram): CPP-out useless code. + * src/reader.c (reader): Clean up, CPP-out useless code. + +2001-08-28 Pascal Bart + + * src/output.c (output): Copy attrs_obstack in the '%%definitions' + directive. + * src/bison.simple: Add `%%definitions'. + +2001-08-28 Marc Autret + + * config/depcomp: New file. + +2001-08-27 Paul Eggert + + * src/bison.simple (yyparse): Don't take the address of an + item before the start of an array, as that doesn't conform to + the C Standard. + +2001-08-27 Robert Anisko + + * src/output.c (output): Remove the initialization of the macro + obstack. It was done too late here. + + * src/reader.c (parse_macro_decl): Fix. Use of the macro obstack was + completely wrong. + (reader): Initialize the macro obstack here, since we need it to grow + '%define' directives. + + * src/reader.h: Declare the macro obstack as extern. + +2001-08-27 Robert Anisko -2001-08-16 Robert Anisko + * src/output.c (output_parser): Fix. Store single '%' characters in + the output obstack instead of throwing them away. + +2001-08-27 Akim Demaille + + * Makefile.am (AUTOMAKE_OPTIONS): 1.5. + +2001-08-25 Robert Anisko + + * lib/Makefile.am: Adjust. + +2001-08-25 Robert Anisko + + * src/bison.simple: Update and add '%%' directives. + +2001-08-25 Robert Anisko + + * src/reader.c (reader): Remove calls to 'output_headers' and + 'output_trailers'. Remove some C output. + (readgram): Disable a piece of code that was writing a default + definition for 'YYSTYPE'. + (reader_output_yylsp): Remove. + (packsymbols): Output token defintions to a macro. + (copy_definition): Disable C output. * src/reader.c (parse_macro_decl): New function used to parse macro declarations. @@ -96,13 +223,68 @@ string delimiters or not. (copy_string): Be a simple call to copy_string2 with the last argument bound to true. + (read_declarations): Add case for macro definition. + (copy_identifier): New. + (parse_macro_decl): Read macro identifiers using copy_identifier + rather than lex. + +2001-08-25 Robert Anisko + + * src/output.c (prepare): Add prefixed names. + (output_parser): Output semantic actions. + (output_parser): Fix bug on '%%line' directives. + + * src/output.c (output_headers): Remove. The C code printed by this + function should now be in the skeletons. + (output_trailers): Remove. + (output): Disable call to 'reader_output_yylsp'. + (output_rule_data): Do not output tables to the table obstack. + + * src/output.c: Remove some C dedicated output. + Improve the use of macro and output obstacks. + (output_defines): Remove. -2001-08-15 Robert Anisko + * src/output.c (output_token_translations): Associate 'translate' + table with a macro. No output to the table obstack. + (output_gram): Same for 'rhs' and 'prhs'. + (output_stos): Same for 'stos'. + (output_rule_data): Same for 'r1' and 'r2'. + (token_actions): Same for 'defact'. + (goto_actions): Same for 'defgoto'. + (output_base): Same for 'pact' and 'pgoto'. + (output_table): Same for 'table'. + (output_check): Same for 'check'. + + * src/output.c (output_table_data): New function. + (output_short_table): Remove. + (output_short_or_char_table): Remove. * src/output.c (output_parser): Replace most of the skeleton copy code with something new. Skeletons are now processed character by character rather than line by line, and Bison looks for '%%' macros. This is the first step in making Bison's output process (a lot) more flexible. + (output_parser): Use the macro table. + +2001-08-25 Robert Anisko + + * src/main.c (main): Initialize the macro table. + +2001-08-25 Robert Anisko + + * src/lex.c (percent_table): Add tok_define. + * src/lex.h: Add tok_define. + +2001-08-25 Robert Anisko + + * src/macrotab.c: New file. + * src/macrotab.h: New file. + * src/Makefile.am: Update. + +2001-08-25 Robert Anisko + + * lib/hash.c: New file. + * lib/hash.h: New file. + * lib/Makefile.am: Update. 2001-08-15 Akim Demaille