X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/55a30bda173145b0c18e9b36129284b2bfbdd364..f02e2948bdeda9d48089a79a9bd364b8a1b23b3a:/ChangeLog diff --git a/ChangeLog b/ChangeLog index b47fd8d5..d0c2e9f4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,97 @@ +2006-12-13 Joel E. Denny + + * configure.ac (AC_PREREQ): Require Autoconf 2.61 because of our + strange test case titles. Reported by Bob Rossi. + +2006-12-13 Paul Eggert + + * TODO: Add pointer to Sylvain Schmitz's work on static detection + of potential ambiguities in GLR grammers. + +2006-12-12 Joel E. Denny + + * tests/testsuite.at (AT_CHECK): When checking if $1 starts with + `bison ', use m4_index instead of m4_substr since chopping up a string + containing M4-special characters causes problems here. + + Fix a couple of bugs related to special characters in user-specified + file names, and make it easier for skeletons to compute output file + names with the same file name prefix as Bison-computed output file + names. + * data/glr.cc, data/push.c, data/yacc.c: In @output, use + b4_parser_file_name and b4_spec_defines_file instead of + @output_parser_name@ and @output_header_name@, which are now redundant. + * data/glr.c, data/lalr1.cc: Likewise. Also, in header #include's, use + b4_parser_file_name, b4_spec_defines_file, and the new + @basename(FILENAME@) instead of @output_parser_name@ and + @output_header_name@, which inappropriately escaped the file names as + C string literals. + * src/files.c (all_but_ext): Remove static qualifier. + (compute_output_file_names): Move `free (all_but_ext)' to... + (output_file_names_free): ... here since all_but_ext is needed later. + * src/files.h (all_but_ext): Extern. + * src/muscle_tab.h (MUSCLE_INSERT_STRING_RAW): New macro that does + exactly what MUSCLE_INSERT_STRING used to do. + (MUSCLE_INSERT_STRING): Use MUSCLE_OBSTACK_SGROW so that M4-special + characters are escaped properly. + * src/output.c (prepare): Define muscle file_name_all_but_ext as + all_but_ext. + For pkgdatadir muscle, maintain previous functionality by using + MUSCLE_INSERT_STRING_RAW instead of MUSCLE_INSERT_STRING. The problem + is that b4_pkgdatadir is used inside m4_include in the skeletons, so + digraphs would never be expanded. Hopefully no one has M4-special + characters in his Bison installation path. + * src/scan-skel.l: Don't parse @output_header_name@ and + @output_parser_name@ anymore since they're now redundant. + In @output, use decode_at_digraphs. + Parse a new @basename command that invokes last_component. + (decode_at_digraphs): New. + (BASE_QPUTS): Remove unused. + * tests/output.at (AT_CHECK_OUTPUT_FILE_NAME): New macro. + (Output file name): New tests. + +2006-12-09 Joel E. Denny + + Warn about output files that are generated by the skeletons and that + conflict with other output files. + * data/glr.c: Don't generate the header file here when glr.cc does. + * src/files.c (file_names, file_names_count): New static globals. + (compute_output_file_names): Invoke output_file_name_check for files + not generated by the skeletons and remove existing checks. + (output_file_name_check): New function that warns about conflicting + output file names. + (output_file_names_free): Free file_names. + * src/files.h (output_file_name_check): Declare. + * src/scan-skel.l: Invoke output_file_name_check for files generated by + the skeletons. + * tests/output.at (AT_CHECK_CONFLICTING_OUTPUT): New. + (Conflicting output files): New tests. + +2006-12-09 Ralf Wildenhues + + * doc/bison.texinfo: Fix a couple of typos. + +2006-12-08 Bob Rossi + + * data/push.c: (yypvarsinit, yypvars, struct yypvars, yypushparse): + Rename to... + (yypstate_init, yypstate, struct yypstate, yypush_parse): ... these and + update all uses. + (b4_yyssa, b4_yyerror_range, yypstate_init): Rename pv to yyps. + (yypush_parse): Rename yypvars argument to yyps and remove redundant + local pv. + (yypstate_init, yypush_parse): Declare in Bison-generated header file. + * tests/calc.at (_AT_DATA_CALC_Y): Use newly named functions. + +2006-12-07 Bob Rossi + and Joel Denny + + * data/push.c (yypvarsinit): Change return type from void* to struct + yypvars*. No longer cast to void* on return. + (struct yypvars): Remove yylen since it need not be remembered between + yypushparse invocations. + (yypushparse): Don't copy between yylen and pv->yylen. + 2006-12-05 Bob Rossi * data/push.c (yychar_set, yylval_set, yylloc_set): Delete.