summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* maint: avoid "the the"Jim Meyering2012-01-154-3/+11
| | | | | | | | | | | | * djgpp/README.in: s/the the/the/ * src/parse-gram.c (lloc_default): Likewise. * src/parse-gram.y (lloc_default): Likewise, and remove a trailing space. Conflicts: ChangeLog src/parse-gram.y
* build: avoid warning from coverity about lbitset_elt_findJim Meyering2012-01-132-1/+7
| | | | | * lib/lbitset.c (lbitset_elt_find): Remove unnecessary test of "elt", at a point where we know it is non-NULL, due to prior dereference.
* maint: factor copyright year.Akim Demaille2012-01-132-2/+7
| | | | * configure.ac: Use $PACKAGE_COPYRIGHT_YEAR instead of repeating it.
* maint: catch missing gnulib macros.Akim Demaille2012-01-132-1/+7
| | | | * configure.ac: Add m4_pattern_forbid.
* maint: run "make update-copyright".Akim Demaille2012-01-13178-180/+180
|
* java: remove unused variable.Tim Landscheidt2012-01-132-2/+5
| | | | * data/lalr1.java (yyresult): remove, unused.
* scanner: fix typo.Akim Demaille2012-01-113-2/+9
| | | | | * src/scan-skel.l (@`): s/emtpy/empty/. Reported by Tim Landscheidt.
* build: avoid warnings about set-but-not-used variablesJim Meyering2012-01-114-12/+8
| | | | | | | * lib/bitset_stats.c (bitset_stats_list): Remove declaration and set of unused local, "type". * lib/ebitset.c (ebitset_init): Likewise, for "size". * lib/lbitset.c (lbitset_not): Likewise, for "elt".
* tests: add -pedantic for --enable-gcc-warnings.Joel E. Denny2011-08-213-4/+13
| | | | | | | | This should help to avoid some portability problems. For example, it would have revealed the empty unions fixed by the last patch * configure.ac (WARN_CFLAGS_TESTS, WARN_CXXFLAGS_TEST): Implement. * tests/synclines.at (AT_TEST_SYNCLINE): Avoid -pedantic warning about an empty translation unit.
* tests: fix empty unions.Joel E. Denny2011-08-214-4/+17
| | | | | | | | | | | Empty unions are not accepted by the ISO C99 grammar or by at least some versions of Sun Studio. Reported by Wolfgang S. Kechel at <http://lists.gnu.org/archive/html/bug-bison/2011-08/msg00003.html>. * NEWS (2.5.1): Document fix. * THANKS (Wolfgang S. Kechel): Add. * tests/existing.at (GNU Cim Grammar) (GNU pic (Groff 1.18.1) Grammar.): Remove empty %union.
* build: avoid YACC typo inherited from Autoconf.Joel E. Denny2011-07-104-2/+19
| | | | | | | | | | | The typo shows up in the `configure --help' output. Reported by W.C.A. Wijngaards and Paul Eggert at <http://lists.gnu.org/archive/html/bug-bison/2011-07/msg00000.html>. * README-hacking (Release Procedure): Remind about updating maintainer tools before a release. * THANKS (W.C.A. Wijngaards): Add. * configure.ac (AC_PREREQ): Set to 2.68, which fixes the YACC typo.
* build: create xz instead of bzip2 tarballs.Joel E. Denny2011-07-103-2/+11
| | | | | | | | Suggested by Jim Meyering at <http://lists.gnu.org/archive/html/bug-bison/2011-06/msg00012.html>. * README-hacking (Release Procedure): Update example. * configure.ac (AM_INIT_AUTOMAKE): Replace dist-bzip2 with dist-xz.
* doc: clean up references to `Locations Overview'.Joel E. Denny2011-05-292-3/+11
| | | | | | | * 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.
* doc: clean up references to `Tracking Locations'.Joel E. Denny2011-05-292-56/+66
| | | | | | | | | | * 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.
* doc: clean up `Named References' a little.Joel E. Denny2011-05-292-20/+32
| | | | | | | | | * 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.
* doc: motivate named references.Joel E. Denny2011-05-292-6/+19
| | | | | | | Suggested by Hans Aberg at <http://lists.gnu.org/archive/html/bug-bison/2011-05/msg00008.html>. * doc/bison.texinfo (Named References): Explain briefly how they're better than the traditional positional references.
* doc: discuss named references after locations.Joel E. Denny2011-05-293-89/+102
| | | | | | | | | | | Reported by Hans Aberg at <http://lists.gnu.org/archive/html/bug-bison/2011-05/msg00008.html>. * 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'.
* Prepare for the possibility of a 2.5.1 release.Joel E. Denny2011-05-292-0/+7
| | | | * NEWS (2.5.1): New heading.
* Version 2.5.v2.5Joel E. Denny2011-05-142-2/+7
| | | | * NEWS (2.5): Set date.
* Don't use IF_LINT in Bison sources.Joel E. Denny2011-05-145-13/+35
| | | | | | | | | | | | | | | | 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 <http://lists.gnu.org/archive/html/bison-patches/2011-05/msg00004.html>. * 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.
* Fix precedence for end token.Joel E. Denny2011-05-014-5/+32
| | | | | | | | | | | 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.
* Prepare for 2.5 release.Joel E. Denny2011-05-012-1/+7
| | | | | * NEWS (2.5_rc1): Rename back to... (2.5): ... this, and unset date.
* Version 2.5_rc1.v2.5_rc1Joel E. Denny2011-05-012-1/+7
| | | | | * NEWS (2.5): Rename to... (2.5_rc1): ... this, and set date.
* Pacify -DGNULIB_POSIXCHECK.Joel E. Denny2011-05-0113-23/+69
| | | | | | | | | | | | | | | | | * 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 (token_definitions_output, 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.
* * NEWS (2.5): Fix minor typos.Joel E. Denny2011-05-012-2/+6
|
* doc: clean up quotation style in NEWS.Joel E. Denny2011-05-012-11/+19
| | | | | | | * 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".
* tests: pacify gcc 4.6.0's -Wunused-but-set-variable.Joel E. Denny2011-04-162-1/+10
| | | | | | | | Reported by Jim Meyering at <http://lists.gnu.org/archive/html/bug-bison/2011-04/msg00002.html>. * tests/actions.at (Default %printer and %destructor for mid-rule values): Define YYLLOC_DEFAULT so that it uses its Rhs argument.
* glr.c: omit yyresolveLocations when locations are disabled.Joel E. Denny2011-04-162-4/+17
| | | | | | | | | | | | 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 <http://lists.gnu.org/archive/html/bug-bison/2011-04/msg00002.html>. * data/glr.c (yyresolveLocations): Omit definition when locations are disabled. (yyresolveValue): Omit yyresolveLocations invocation when locations are disabled.
* gnulib, autoconf: update.Joel E. Denny2011-04-1615-59/+157
| | | | | | | | | | | | | | | | | * 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.
* Fix missing updates to GPLv3.Joel E. Denny2011-04-093-14/+17
| | | | | | Reported by Tys Lefering at <http://lists.gnu.org/archive/html/bison-patches/2011-04/msg00000.html>. * src/print-xml.c, src/print-xml.h: In these files.
* Add -Wconflicts-sr and -Wconflicts-rr.Joel E. Denny2011-04-0310-5/+192
| | | | | | | | | | | | | | | | | | | | | | | | | | | Thus, conflict reports are now affected by -Werror and -Wnone (unless %expect or %expect-rr is specified). Reported by George Neuner at <http://lists.gnu.org/archive/html/bug-bison/2010-08/msg00002.html>. * 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.
* Pacify maintainer-check-posix.Joel E. Denny2011-04-032-72/+78
| | | | | | | | | 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.
* Add -Wother so -Wnone suppresses all warnings.Joel E. Denny2011-04-0311-31/+133
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Reported by George Neuner at <http://lists.gnu.org/archive/html/bug-bison/2010-08/msg00002.html>. * 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.
* Don't let -Wnone disable -Werror.Joel E. Denny2011-04-034-17/+72
| | | | | | | | | | | Discussed at <http://lists.gnu.org/archive/html/bison-patches/2010-08/msg00009.html>. * 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.
* * NEWS (2.5): Document fix for -Wno-KEY.Joel E. Denny2011-03-272-0/+13
|
* Implement no-XXX arguments for --warnings, --report, --trace.Di-an Jan2011-03-272-5/+20
| | | | | | * src/getargs.c (flags_argmatch): Handles no-XXX. Fix typo in doxygen comment. (cherry picked from commit 4182a0a18681fe4808f474441d62c5d2489e24e4)
* doc: fix confusing citation of LAC publication.Joel E. Denny2011-03-202-4/+9
| | | | | Suggested by Akim Demaille. * doc/bison.texinfo (LAC): Here.
* lr.default-reductions: rename "full" value to "most".Joel E. Denny2011-03-207-14/+28
| | | | | | | | | | | | | 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.
* * src/parse-gram.c, src/parse-gram.h: Regenerate.Joel E. Denny2011-03-133-150/+182
|
* named references: fix double free.Akim Demaille2011-03-098-8/+66
| | | | | | | | | | | | | | | In `rhs[name]: "a" | "b"', do not free "name" twice. Reported by Tys Lefering. <http://lists.gnu.org/archive/html/bug-bison/2010-06/msg00002.html> * 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.
* tests: style changes.Akim Demaille2011-03-092-79/+57
| | | | | * tests/named-refs.at (Redundant words in LHS brackets) (Unresolved references): here.
* java: fix parser tracing bug.Joel E. Denny2011-03-063-1/+10
| | | | | | * NEWS (2.5): Document. * data/lalr1.java (YYParser::YYStack::print): Don't skip top element.
* java: finish fixing parser stack popping bug.Joel E. Denny2011-03-063-3/+16
| | | | | | | * 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.
* java: fix parser stack popping bug.Angelo Borsotti2011-03-063-1/+12
| | | | | | | | | Reported at <http://lists.gnu.org/archive/html/bug-bison/2011-02/msg00005.html>. * 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.
* doc: cite publication for LAC.Joel E. Denny2011-03-062-0/+10
| | | | * doc/bison.texinfo (LAC): Here.
* doc: clean up terminology for mysterious conflicts.Joel E. Denny2011-03-062-12/+21
| | | | | | | | * 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.
* lr.default-reductions: rename "all" value to "full".Joel E. Denny2011-03-067-17/+29
| | | | | | | | | | | | | 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.
* doc: create a new Tuning LR section in the manual.Joel E. Denny2011-03-063-315/+541
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. (Error Reporting): When mentioning %error-verbose, 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 %error-verbose, mention LAC, and add cross-reference to the LAC section. (Table of Symbols): In %error-verbose and YYERROR_VERBOSE entries, add cross-references to Error Reporting. (Glossary): Capitalize entry titles consistently. Add definitions for "defaulted state" and "unreachable state". Expand IELR acronym in IELR's entry.
* doc: add bibliography to manual.Joel E. Denny2011-02-202-11/+53
| | | | | | | | * 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.
* java: test and document previous bug fix.Joel E. Denny2011-02-193-32/+47
| | | | | | | | | * 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.