X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/00f5d57533cf74aeeb50bdf3dc70e344befcdfb5..7fe11bb55c1ca7e08f392b8bf413d18062019dd3:/ChangeLog diff --git a/ChangeLog b/ChangeLog index 0f9529e5..67307f2c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,151 @@ +2009-04-21 Joel E. Denny + + Add new files for IELR and canonical LR implementation. + * src/AnnotationList.c: New. + * src/AnnotationList.h: New. + * src/InadequacyList.c: New. + * src/InadequacyList.h: New. + * src/Sbitset.c: New. + * src/Sbitset.h: New. + * src/ielr.c: New. + * src/ielr.h: New. + +2009-04-20 Joel E. Denny + + Implement %define lr.default_rules. + Its value describes the states that are permitted to contain + default rules: "all", "consistent", or "accepting". + * src/reader.c (reader): Default lr.default_rules to "all". + Check for a valid lr.default_rules value. + * src/lalr.c (state_lookahead_tokens_count): If lr.default_rules + is "accepting", then only mark the accepting state as + consistent. + (initialize_LA): Tell state_lookahead_tokens_count whether + lr.default_rules is "accepting". + * src/tables.c (action_row): If lr.default_rules is not "all", + then disable default rules in inconsistent states. + * src/print.c (print_reductions): Use this opportunity to + perform some assertions about whether lr.default_rules was + obeyed correctly. + * tests/local.at (AT_TEST_TABLES_AND_PARSE): New macro that + helps with checking the parser tables for a grammar. + * tests/input.at (%define lr.default_rules invalid values): New + test group. + * tests/reduce.at (AT_TEST_LR_DEFAULT_RULES): New macro using + AT_TEST_TABLES_AND_PARSE. + (`no %define lr.default_rules'): New test group generated by + AT_TEST_LR_DEFAULT_RULES. + (`%define lr.default_rules "all"'): Likewise. + (`%define lr.default_rules "consistent"'): Likewise. + (`%define lr.default_rules "accepting"'): Likewise. + +2009-04-20 Akim Demaille + + Formatting change. + +2009-04-20 Akim Demaille + + bison: factoring. + * src/output.c (token_definitions_output): Use symbol_id_get + instead of duplicating its logic. + * TODO (YYERRCODE): Extend. + +2009-04-20 Akim Demaille + + variables: prefer error-verbose to error_verbose. + * data/bison.m4 (b4_error_verbose_if): Based on error-verbose + instead of error_verbose. + * src/scan-gram.l (%error-verbose): Map to the error-verbose + variable. + * doc/bison.texinfo: Promote %define error-verbose instead of + %error-verbose. + * tests/actions.at: Prefer %define error-verbose to %error-verbose. + +2009-04-15 Akim Demaille + + variables: accept dashes. + * data/bison.m4 (b4_percent_define_if_define_): Also map dashes to + underscores. + * src/scan-gram.l ({id}): Also accept dashes after the initial + letter. + ({directive}): Use {id}. + * src/parse-gram.y: Comment and formatting changes. + * doc/bison.texinfo (Symbols): Adjust the lexical definitions of + symbols. + * src/complain.h, src/complain.c (yacc_at): New. + * src/symtab.c (symbol_new): Use yacc_at to report inappropriate + symbol names. + * src/output.c (token_definitions_output): Do not #define token + names with dashes. + +2009-04-20 Akim Demaille + + Consistently refer to Yacc, not YACC. + * src/getargs.c (usage, warnings_args): s/YACC/Yacc/. + +2009-04-17 Joel E. Denny + + Pacify make maintainer-check-posix. + * tests/input.at (%define, --define): Move bison command-line + options before grammar file name. + +2009-04-04 Joel E. Denny + + Document semicolon warnings. + * NEWS (2.5): Here. + +2009-04-14 Akim Demaille + + variables: use `parse.assert' instead of `assert'. + * TODO (assert): Remove. + * data/bison.m4 (b4_assert_if): Replace with... + (b4_parse_assert_if): this. + * data/lalr1.cc, data/variant.hh, tests/c++.at: Adjust. + * doc/bison.texinfo (Decl Summary): Document parse.assert. + +2009-04-14 Akim Demaille + + variables: use `parse.trace' instead of `debug'. + * src/getargs.c (getargs): Map -t to %define trace.parse. + * src/scan-gram.l (%debug): Map to %define trace.parse. + * data/bison.m4 (b4_percent_define_if_define): Map `.' in variable + names to `_' in macro names. + (b4_debug_if): Replace with... + (b4_parse_trace_if): this. + * data/glr.c, data/glr.cc, data/lalr1.cc, data/lalr1.java, + * data/yacc.c: Adjust. + * doc/bison.texinfo (Decl Summary): Document %debug as obsoleted. + Use @code to label the variable list. + Document the variable parse.trace. + (Tracing): Promote the parse.trace variable. + * TODO: %printer is not documented. + +2009-04-14 Akim Demaille + + doc: minor fixes. + * doc/bison.texinfo (Decl Summary): Fix entry about %debug. + (Table of Symbols): Remove duplicate entry for %debug. + +2009-04-10 Eric Blake + + submodules: update to latest + * submodules/autoconf: Use latest upstream Autoconf. + +2009-04-06 Eric Blake + + Work around autoconf 2.63b bug in testsuite. + * tests/output.at (AT_CHECK_OUTPUT_FILE_NAME): Avoid tripping + autoconf bug related to # in test. + +2009-04-06 Joel E. Denny + + * NEWS (2.5): New section. Describe new -D/--define feature. + +2009-04-06 Akim Demaille + + Regen. + * src/parse-gram.h, src/parse-gram.c: Regen. + 2009-04-06 Akim Demaille rename muscle_tab.* as muscle-tab.* for consistency. @@ -35,7 +183,7 @@ muscle: factor the handling of obsolete of obsolete directives. Suggested by Joel E. Denny. - + * src/muscle_tab.h, src/muscle_tab.c (muscle_percent_define_ensure): New, extracted from... * src/parse-gram.y (prologue_declaration: pure-parser): here.