+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.