X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/af28d414f3672ee94a85612e49930d40624bc33d..b55b68608ff93cede27113663c6c0b0c82539ebc:/ChangeLog diff --git a/ChangeLog b/ChangeLog index ad3fcec5..48fcbdff 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,485 @@ +2011-07-10 Joel E. Denny + + build: create xz instead of bzip2 tarballs. + Suggested by Jim Meyering at + . + * README-hacking (Release Procedure): Update example. + * configure.ac (AM_INIT_AUTOMAKE): Replace dist-bzip2 with + dist-xz. + +2011-05-29 Joel E. Denny + + doc: clean up references to `Locations Overview'. + * doc/bison.texinfo (Locations Overview): Rename node to... + (Locations): ... this, which is its section name. Update menus to + match that and not to use the title `Tracking Locations', which is + a different section. + +2011-05-29 Joel E. Denny + + doc: clean up references to `Tracking Locations'. + * doc/bison.texinfo (Locations): Rename node to... + (Tracking Locations): ... this, which is its section name, and + update all cross references. The trouble is that there is another + node about locations. Its section name is `Locations', which was + easily confused with the node name of this node. Moreover, its + node name is `Locations Overview', which was mistakenly used to + label some cross references to this node. + +2011-05-29 Joel E. Denny + + doc: clean up `Named References' a little. + * doc/bison.texinfo (Named References): Rename section to match + the node name, and update all cross references. Don't use the + acronyms RHS and LHS given that we don't expand them anywhere in + the manual. Try to use @samp and @code properly. Mention that + named references are experimental as we've already stated in NEWS. + (Destructor Decl): Expand the only remaining use of RHS or LHS. + +2011-05-29 Joel E. Denny + + doc: motivate named references. + Suggested by Hans Aberg at + . + * doc/bison.texinfo (Named References): Explain briefly how + they're better than the traditional positional references. + +2011-05-29 Joel E. Denny + + doc: discuss named references after locations. + Reported by Hans Aberg at + . + * NEWS (2.5.1): Document. + * doc/bison.texinfo (Named References): Because it discusses + locations in addition to semantic values, move this subsection out + of the section `Defining Language Semantics', where locations have + not yet been introduced, to be a new section after the following + section, `Tracking Locations'. + +2011-05-29 Joel E. Denny + + Prepare for the possibility of a 2.5.1 release. + * NEWS (2.5.1): New heading. + +2011-05-14 Joel E. Denny + + Version 2.5. + * NEWS (2.5): Set date. + +2011-05-14 Joel E. Denny + + Don't use IF_LINT in Bison sources. + It creates unnecessary differences between the sources that Bison + maintainers build and test (given that maintainers normally + configure with --enable-gcc-warnings) and the sources that Bison + users build. Instead, use PACIFY_CC, which doesn't. This change + fixes compiler warnings reported by Tys Lefering at + . + * configure.ac: Don't AC_DEFINE lint regardless of the configure + options. This change affects imported gnulib sources, where + IF_LINT still appears and depends on lint. + * src/scan-gram.l, src/scan-skel.l: Replace uses of IF_LINT with + PACIFY_CC. + * src/system.h (IF_LINT): Remove cpp macro. + (PACIFY_CC): New cpp macro. + +2011-05-01 Joel E. Denny + + Fix precedence for end token. + Since Bison 2.3b, which restored the ability of precedence + directives to assign user token numbers, doing so for user token + number 0 has produced an assertion failure. + * NEWS (2.5): Document fix. + * src/symtab.c (symbol_user_token_number_set): In the case of the + end token, don't decrement ntokens if it was never incremented. + * tests/regression.at (Token number in precedence declaration): + Extend. + +2011-05-01 Joel E. Denny + + Pacify -DGNULIB_POSIXCHECK. + * bootstrap.conf (gnulib_modules): Add all modules suggested by + -DGNULIB_POSIXCHECK. + * src/files.c (file_name_split) + * src/getargs.c (getargs) + * src/location.c (boundary_set_from_string) + * src/output.c (output_skeleton) + * src/parse-gram.y (prologue_declaration) + * src/scan-gram.l (handle_syncline) + * src/symtab.c (symbol_new): Use mbschr and mbsrchr instead of + strchr and strrchr. In the cases of command-line options, file + names, and thus locations, functionality may be improved. In the + case of symbol names, there should be no functional difference as + all characters are ASCII, so the intended benefit is just warning + suppression. + +2011-05-01 Joel E. Denny + + * NEWS (2.5): Fix minor typos. + +2011-05-01 Joel E. Denny + + doc: clean up quotation style in NEWS. + * NEWS (2.5): For multi-character tokens in example grammar rules, + use "token" not 'token'. In English, use a consistent quotation + style; we might as well follow the precedent seen in info pages: + `quote' not "quote". + +2011-04-16 Joel E. Denny + + tests: pacify gcc 4.6.0's -Wunused-but-set-variable. + Reported by Jim Meyering at + . + * tests/actions.at + (Default %printer and %destructor for mid-rule values): Define + YYLLOC_DEFAULT so that it uses its Rhs argument. + +2011-04-16 Joel E. Denny + + glr.c: omit yyresolveLocations when locations are disabled. + This prevents gcc 4.6.0's -Wunused-but-set-variable from warning + about yyresolveLocations's local yyrhsloc. When locations are + enabled, there's no such warning because YYLLOC_DEFAULT then uses + yyrhsloc. Reported by Jim Meyering at + . + * data/glr.c (yyresolveLocations): Omit definition when locations + are disabled. + (yyresolveValue): Omit yyresolveLocations invocation when + locations are disabled. + +2011-04-16 Joel E. Denny + + gnulib, autoconf: update. + * README-hacking (Updating a submodule): Give advice on how to + determine the versions of gnulib and autoconf to which we should + update. + (Release Procedure): Note that submodules should be updated. + * bootstrap.conf (gnulib_modules): Rename pipe to spawn-pipe as + suggested in updated gnulib NEWS. + * gnulib: Choose a stable snapshot according to advice in Bison's + README-hacking. + * po/POTFILES.in (lib/pipe.c): Rename to... + (lib/spawn-pipe.c): ... this. + * src/output.c: Update to include spawn-pipe.h. + * submodules/autoconf: Update to latest for improvement in m4.m4 + that excludes M4 with buggy strstr. The only other changes to + files that we use are copyright updates. + +2011-04-09 Joel E. Denny + + Fix missing updates to GPLv3. + Reported by Tys Lefering at + . + * src/print-xml.c, src/print-xml.h: In these files. + +2011-03-27 Joel E. Denny + + Add -Wconflicts-sr and -Wconflicts-rr. + Thus, conflict reports are now affected by -Werror and -Wnone + (unless %expect or %expect-rr is specified). Reported by George + Neuner at + . + * NEWS (2.5): Document. + * doc/bison.texinfo (Bison Options): Document. + * src/complain.c, src/complain.h (set_warning_issued): Export + function. + * src/conflicts.c (conflicts_print): Suppress conflict report + based on -Wno-conflicts-sr and -Wno-conflicts-rr, and treat + conflicts as errors if -Werror. + * src/getargs.c (warnings_flag): Initialize with + warnings_conflicts_sr and warnings_conflicts_rr as well. + (warnings_args, warnings_types): Add entries for + warnings_conflicts_sr and warnings_conflicts_rr. + (usage): Update. + * src/getargs.h (enum warnings): Add entries for + warnings_conflicts_sr and warnings_conflicts_rr. + * tests/conflicts.at (-W versus %expect and %expect-rr): New test + group. + * tests/local.at (AT_BISON_CHECK_NO_XML): Update now that the + conflict report can produce a "warnings being treated as errors" + message. Also, check that stderr is now fully scrubbed by -Wnone + when the exit status is 0. + +2011-03-27 Joel E. Denny + + Pacify maintainer-check-posix. + Adding command-line options after the grammar file name is not + permitted, so disable checks that do that when + maintainer-check-posix is running. + * tests/local.at (AT_BISON_CHECK_NO_XML): Don't run the + problematic checks when POSIXLY_CORRECT=1. Also, for readability, + remove an unnecessary m4_if. + +2011-03-27 Joel E. Denny + + Add -Wother so -Wnone suppresses all warnings. + Reported by George Neuner at + . + * NEWS (2.5): Document. + * THANKS (George Neuner): Add. + * doc/bison.texinfo (Bison Options): Document. + * src/complain.c, src/complain.h + (warn_at, warn_at_indent, warn): Suppress warning if -Wno-other. + (midrule_value_at): New warning function, similar to yacc_at in + that it's controlled by its own warning category. + * src/getargs.c (warnings_flag): Initialize to warnings_other. + (warnings_args, warnings_types): Add entry for warnings_other. + (usage): Update. + * src/getargs.h (enum warnings): Add entry for warnings_other. + * src/gram.c (grammar_rules_useless_report): If -Wno-other, then + don't print useless rules. + * src/reader.c (symbol_should_be_used): Rather than adjusting the + return value based on whether midrule value warnings are enabled, + accept a new parameter for telling the caller whether true is + being returned for a potential midrule warning. + (grammar_rule_check): Use midrule_value_at for midrule value + warnings, and continue to use warn_at for all other warnings. Let + them check whether the warnings are enabled. + * tests/local.at (AT_BISON_CHECK): Update documentation. + (AT_BISON_CHECK_NO_XML): Check that -Wnone and --warnings=none + disable all warnings exercised in the test suite. + +2011-03-27 Joel E. Denny + + Don't let -Wnone disable -Werror. + Discussed at + . + * NEWS (2.5): Document. + * src/getargs.c (flags_argmatch): Accept a new argument that + specifies what flags "all" and thus "none" affect. + (FLAGS_ARGMATCH): Update flags_argmatch invocation. + * tests/input.at (-Werror is not affected by -Wnone and -Wall): + New test group. + +2011-03-27 Joel E. Denny + + * NEWS (2.5): Document fix for -Wno-CATEGORY. + +2011-03-20 Joel E. Denny + + doc: fix confusing citation of LAC publication. + Suggested by Akim Demaille. + * doc/bison.texinfo (LAC): Here. + +2011-03-20 Joel E. Denny + + lr.default-reductions: rename "full" value to "most". + Unlike "consistent" and "accepting", "full" doesn't answer the + question of "which states". + * doc/bison.texinfo (%define Summary): Update. + (Default Reductions): Update. + * src/print.c (print_reductions): Update. + * src/reader.c (prepare_percent_define_front_end_variables): + Update. + * src/tables.c (action_row): Update. + * tests/input.at (%define enum variables): Update. + * tests/reduce.at (%define lr.default-reductions): Update. + +2011-03-13 Joel E. Denny + + * src/parse-gram.c, src/parse-gram.h: Regenerate. + +2011-03-09 Akim Demaille + + named references: fix double free. + In `rhs[name]: "a" | "b"', do not free "name" twice. + Reported by Tys Lefering. + + * src/named-ref.h, src/named-ref.c (named_ref_copy): New. + * src/parse-gram.y (current_lhs): Rename as... + (current_lhs_symbol): this. + (current_lhs): New function. Use it to free the current lhs + named reference. + * src/reader.c: Bind lhs to a copy of the current named reference. + * src/symlist.c: Rely on free (0) being valid. + * tests/named-refs.at: Test this. + +2011-03-09 Akim Demaille + + tests: style changes. + * tests/named-refs.at (Redundant words in LHS brackets) + (Unresolved references): here. + +2011-03-06 Joel E. Denny + + java: fix parser tracing bug. + * NEWS (2.5): Document. + * data/lalr1.java (YYParser::YYStack::print): Don't skip top + element. + +2011-03-06 Joel E. Denny + + java: finish fixing parser stack popping bug. + * NEWS (2.5): Document. + * data/lalr1.java (YYParser::YYStack::pop): Fix off-by-one error + in clearing the location stack. Also fix pop function that + accepts no arguments. + +2011-03-06 Angelo Borsotti (tiny change) + + java: fix parser stack popping bug. + Reported at + . + * THANKS (Angelo Borsotti): Add. + * data/lalr1.java (YYParser::YYStack::pop): Fix off-by-one error + in clearing the value stack. Previously, the top element of the + stack wasn't cleared and so the value was not garbage collected. + +2011-03-06 Joel E. Denny + + doc: cite publication for LAC. + * doc/bison.texinfo (LAC): Here. + +2011-03-06 Joel E. Denny + + doc: clean up terminology for mysterious conflicts. + * doc/bison.texinfo (Mystery Conflicts): Rename node to... + (Mysterious Conflicts): ... this, which is already the section + title and the name used in the index. Update all cross-references + to this node. Also, don't imply that R/R conflicts are the only + kind of mysterious conflict. + +2011-03-06 Joel E. Denny + + lr.default-reductions: rename "all" value to "full". + States that shift the error token do not have default reductions, + and GLR disables some default reductions, so "all" was a misnomer. + * doc/bison.texinfo (%define Summary): Update. + (Default Reductions): Update. + * src/print.c (print_reductions): Update. + * src/reader.c (prepare_percent_define_front_end_variables): + Update. + * src/tables.c (action_row): Update. + * tests/input.at (%define enum variables): Update. + * tests/reduce.at (%define lr.default-reductions): Update. + +2011-03-06 Joel E. Denny + + doc: create a new Tuning LR section in the manual. + And clean up all other documentation of the features described + there. + * NEWS (2.5): Tweak wording of lr.type and parse.lac entries a + bit, update the cross-references to the manual, and point out that + LAC has caveats. Don't be so adamant that IELR+LAC=canonical LR. + That is, as the referenced section in the manual documents, LAC + does not fix infinite parsing loops on syntax errors. + * doc/bison.texinfo: Consistently drop the "(1)" suffix from LALR, + IELR, and LR in @cindex. + (%define Summary): Condense the entries for lr.default-reductions, + lr.keep-unreachable-states, lr.type, and parse.lac into brief + summaries, and cross-reference the appropriate subsections of + Tuning LR. For parse.lac, mention that it's only implemented for + deterministic parsers in C. In parse.error entry, mention LAC, + and add cross-reference to the LAC section. + (Error Reporting): When mentioning parse.error, mention LAC, and + add cross-reference to the LAC section. + (Tuning LR): New section with an extended version of the + documentation removed from %define Summary. Change all + cross-references in the manual to point here instead of there. + (Calc++ Parser): When mentioning parse.error, mention LAC, and add + cross-reference to the LAC section. + (Table of Symbols): In %error-verbose entry, add cross-reference + to Error Reporting. + (Glossary): Capitalize entry titles consistently. Add definitions + for "defaulted state" and "unreachable state". Expand IELR + acronym in IELR's entry. + +2011-02-20 Joel E. Denny + + doc: add bibliography to manual. + * doc/bison.texinfo (Mystery Conflicts): Cross-reference + bibliography instead of citing publications directly. + (Generalized LR Parsing): Likewise. + (Bibliography): New section. Not all entries are cross-referenced + yet, but that will come in future patches. + +2011-02-19 Joel E. Denny + + java: test and document previous bug fix. + * NEWS (2.5): Document it. + * tests/java.at (_AT_DATA_JAVA_CALC_Y): To one of the yyerror + invocations, pass a location that spans multiple tokens. Change + yyerror to report all of a location rather than just the begin + position. Extend yylex and Position to count tokens on a line. + Remove getHashCode as it's unused. Update all expected output. + +2011-02-19 Bernd Kiefer (tiny change) + + java: fix location handling bug. + Reported at + . + * data/lalr1.java (YYParser::yylloc): For non-empty RHS, fix + reversed access to location stack. + * THANKS (Bernd Kiefer): Add. + +2011-02-13 Joel E. Denny + + doc: fix some minor inconsistencies. + * doc/bison.texinfo (%define Summary): Fix mislabeled entry for + lex_symbol. + (%code Summary): For consistency with the variable list in the + %define Summary, enclose the list of %code qualifiers in a table + instead of an itemize. + +2011-02-06 Joel E. Denny + + doc: clean up new subsections in manual. + * doc/bison.texinfo (%define Summary): Reword so it reads well as + a separate section. For example, add an intro, and move most of + the text outside of the @deffn so it is not indented so far. + (%code Summary): Likewise. + (Table of Symbols): Reword %code entry to match the %code entry in + Decl Summary. + +2011-02-06 Joel E. Denny + + doc: finish splitting apart the manual's Decl Summary section. + Suggested by Akim Demaille at + . + * doc/bison.texinfo (Decl Summary): Extract most of the %define + entry into... + (%define Summary): ... this new subsection, and update all + cross-references. For readability of the patches, rewriting of + the text so it makes sense as a separate subsection will come in a + later patch. Moreover, the majority of the text describing the + various new LR features should likely move to another new section + somewhere. + +2011-02-06 Joel E. Denny + + doc: begin to split apart the manual's Decl Summary section. + Discussed in thread starting at + . + * doc/bison.texinfo (Decl Summary): Extract most of the %code + entry into... + (%code Summary): ... this new subsection, and update all + cross-references. For readability of the patches, rewriting of + the text so it makes sense as a separate subsection will come in a + later patch. + +2011-02-06 Joel E. Denny + + doc: clean up naming of various Bison files. + The Bison manual's names for various files associated with a Bison + parser has devolved into inconsistency. This patch makes the + naming consistent for the most important files. First, it chooses + "grammar file" over "input file". The former appears to be more + traditional in the Bison manual, and Bison has other input + files (skeletons). Second, it chooses "parser implementation + file" over names like "parser file", "parser source file", "parser + source code file", and "parser output file". The new name makes + it clearer where Bison generates the main parser implementation, + and it is easily distinguishable from "parser header file". + * doc/bison.texinfo: Implement throughout. + +2011-02-06 Joel E. Denny + + doc: give credit to more of Bison's developers. + * doc/bison.texinfo (Introduction): Don't imply that only Robert + Corbett, Richard Stallman, and Wilfred Hansen have contributed to + Bison. However, I don't have time to write a full history, so + just point readers to THANKS and ChangeLog. + 2011-02-06 Joel E. Denny doc: document experimental features better.