]> git.saurik.com Git - bison.git/blobdiff - ChangeLog
Use $accept and $end, as BYacc and BTYacc do, instead of $axiom and $.
[bison.git] / ChangeLog
index b9b7d58ebe70a17f4eaab7de51d8b006d4c5757a..95a4a2e3926db9d4d5a2c47af474f7ef59c0311d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,115 @@
+2002-07-29  Akim Demaille  <akim@epita.fr>
+
+       Use $accept and $end, as BYacc and BTYacc do, instead of $axiom and $.
+
+       * src/symtab.h, src/symtab.c (eoftoken, axiom): Rename as...
+       (endtoken, accept): these.
+       * src/reader.c (reader): Set endtoken's default tag to "$end".
+       Set undeftoken's tag to "$undefined" instead of "$undefined.".
+       * doc/bison.texinfo (Table of Symbols): Mention $accept and $end.
+       Adjust.
+
+2002-07-29  Akim Demaille  <akim@epita.fr>
+
+       * src/reduce.c (reduce_grammar): When the language is empty,
+       complain about the start symbol, not the axiom.
+       Use its location.
+       * tests/reduce.at (Empty Language): New.
+
+2002-07-26  Akim Demaille  <akim@epita.fr>
+
+       * src/reader.h, src/reader.c (gram_error): ... can't get
+       yycontrol without making too strong assumptions on the parser
+       itself.
+       * src/output.c (prepare_tokens): Use the real 0th value of
+       token_translations instead of `0'.
+       * src/parse-gram.y (yyerror): Don't rely on yycontrol being
+       visible here.
+       * data/yacc.c (yyreport_parse_error): Rename yylocation as yylloc
+       for the time being: %locations ought to provide it to yyerror.
+
+2002-07-25  Akim Demaille  <akim@epita.fr>
+
+       * src/output.c (prepare_tokens): Go up to ntokens, not ntokens + 1.
+       * doc/bison.texinfo (Decl Summary): s/$illegal/$undefined./.
+       * tests/regression.at (Web2c Actions): Adjust.
+
+2002-07-25  Akim Demaille  <akim@epita.fr>
+
+       Stop storing rules from 1 to nrules + 1.
+
+       * src/LR0.c, src/closure.c, src/derives.c, src/gram.c, src/lalr.c
+       * src/nullable.c, src/output.c, src/print.c, src/reader.c
+       * src/reduce.c: Allocate and free from &rules[0], not &rules[1].
+       Iterate from 0 to nrules.
+       Use rule_number_as_item_number and item_number_as_rule_number.
+       Adjust to `derive' now containing possibly 0.
+       * src/gram.h (rule_number_as_item_number, item_number_as_rule_number):
+       Handle the `- 1' part in rule numbers from/to item numbers.
+       * src/conflicts.c (log_resolution): Fix the message which reversed
+       shift and reduce.
+       * src/output.c (action_row): Initialize default_rule to -1.
+       (token_actions): Adjust.
+       * tests/sets.at (Nullable, Firsts): Fix the previously bogus
+       expected output.
+       * tests/conflicts.at (Resolved SR Conflicts): Likewise.
+
+2002-07-25  Akim Demaille  <akim@epita.fr>
+
+       * data/c.m4 (b4_c_function, b4_c_ansi_args, b4_c_ansi_arg)
+       (b4_c_knr_arg_names, b4_c_knr_arg_name, b4_c_knr_arg_decls)
+       (b4_c_knr_arg_decl): New.
+       * data/yacc.c: Use it to define yysymprint, yydestruct, and
+       yyreport_parse_error.
+
+2002-07-25  Akim Demaille  <akim@epita.fr>
+
+       * data/yacc.c (yyreport_parse_error): New, extracted from...
+       (yyparse): here.
+       (yydestruct, yysymprint): Move above yyparse.
+       Be K&R compliant.
+
+2002-07-25  Akim Demaille  <akim@epita.fr>
+
+       * data/c.m4 (b4_ints_in, b4_int_type, b4_int_type_for): New,
+       replace...
+       (b4_sint_type, b4_uint_type): these.
+       * data/yacc.c, data/glr.c, data/lalr1.cc: Use b4_int_type_for.
+       * tests/regression.at (Web2c Actions): Adjust.
+
+2002-07-25  Akim Demaille  <akim@epita.fr>
+
+       * src/gram.h (TIEM_NUMBER_MAX): New.
+       (item_number_of_rule_number, rule_number_of_item_number): Rename
+       as...
+       (rule_number_as_item_number, item_number_as_rule_number): these.
+       Adjust dependencies.
+       * src/output.c (vector_number_t, VECTOR_NUMBER_MAX)
+       (VECTOR_NUMBER_MIN, state_number_to_vector_number)
+       (symbol_number_to_vector_number): New.
+       (order): Of vector_number_t* type.
+       (base_t, BASE_MAX, BASE_MIN): New.
+       (froms, tos, width, pos, check): Of base_t type.
+       (action_number_t, ACTION_MIN, ACTION_MAX): New.
+       (actrow): Of action_number_t type.
+       (conflrow): Of unsigned int type.
+       (table_ninf, base_ninf): New.
+       (GENERATE_MUSCLE_INSERT_TABLE): Also output the `*_min' value.
+       (muscle_insert_int_table, muscle_insert_base_table)
+       (muscle_insert_rule_number_table): New.
+       (prepare_tokens): Output `toknum' as int_table.
+       (action_row): Returns a rule_number_t.
+       Use ACTION_MIN, not SHRT_MIN.
+       (token_actions): yydefact is rule_number_t*.
+       (table_ninf_remap): New.
+       (pack_table): Use it for `base' and `table'.
+       * data/yacc.c, data/glr.c, data/lalr1.cc (YYFLAG): Remove,
+       replaced with...
+       (YYPACT_NINF, YYTABLE_NINF): these.
+       (yypact, yytable): Compute their types instead of hard-coded
+       `short'.
+       * tests/regression.at (Web2c Actions): Adjust.
+
 2002-07-19  Akim Demaille  <akim@epita.fr>
 
        * src/scan-gram.l (id): Can start with an underscore.