+2008-12-08 Akim Demaille <demaille@gostai.com>
+
+ Install autoconf as a submodule to get m4sugar.
+ * .gitmodules: Add submodules/autoconf.
+ * data/m4sugar/foreach.m4, data/m4sugar/m4sugar.m4: Now links into
+ submodules/autoconf.
+
+2008-12-08 Akim Demaille <demaille@gostai.com>
+
+ Test token.prefix in all the skeletons.
+ * data/java.m4 (b4_token_enum): Use the token.prefix.
+ * tests/local.at (AT_BISON_OPTION_PUSHDEFS): Define AT_TOKEN_PREFIX.
+ * tests/calc.at (_AT_DATA_CALC_Y): Use it.
+ Add checks for yacc.c, glr.c, lalr1.cc and glr.cc.
+ * tests/java.at: Comment changes.
+ (AT_CHECK_JAVA_MINIMAL): Define the END token.
+ (Java parser class and package names): Add token.prefix check.
+
+2008-12-08 Akim Demaille <demaille@gostai.com>
+
+ Fix regeneration of atconfig.
+ * tests/local.mk (tests/atconfig): The rule was incorrect, but
+ remove it: now that there is no tests/Makefile.am, the top-level
+ Makefile properly updates atconfig when needed.
+
+2008-12-07 Di-an Jan <dianj@freeshell.org>
+
+ Implement the FIXME that ends an user action with a semicolon
+ if it seems necessary.
+ * src/scan-code.l (flex rules section): Flag cpp directive from
+ any `#' to the first unescaped end-of-line. Semicolon is not
+ needed after `;', `{', '}', or cpp directives and is needed after
+ any other token (whitespaces and comments have no effect).
+ * tests/actions.at (Fix user actions without a trailing semicolon):
+ New test.
+ * tests/input.at (AT_CHECK_UNUSED_VALUES): Add semicolons to
+ to make user actions complete statements.
+ Adjust column numbers in error messages.
+ * tests/regression.at (Fix user actions without a trailing semicolon):
+ Remove. Covered by new test.
+
+2008-12-07 Akim Demaille <demaille@gostai.com>
+
+ Update gnulib.
+ * gnulib: Update from master.
+
+2008-12-05 Eric Blake <ebb9@byu.net>
+
+ Avoid compiler warning.
+ * src/output.c (muscle_insert_item_number_table): Delete unused
+ function.
+
+2008-12-02 Eric Blake <ebb9@byu.net>
+
+ Build testsuite with newer autoconf.
+ * tests/output.at (m4_expand): Don't override in newer autoconf,
+ where the underlying implementation changed.
+ * tests/cxx-type.at (_AT_RESOLVED_GLR_OUTPUT)
+ (_AT_RESOLVED_GLR_OUTPUT_WITH_LOC, _AT_AMBIG_GLR_OUTPUT)
+ (_AT_AMBIG_GLR_OUTPUT_WITH_LOC, _AT_GLR_STDERR)
+ (_AT_VERBOSE_GLR_STDERR): Expand to double-quoted strings,
+ since some of them contain unbalanced ')'.
+
+2008-12-01 Akim Demaille <demaille@gostai.com>
+
+ Use b4_symbol for printers and destructors everywhere.
+ * data/bison.m4 (b4_symbol_action_location): New.
+ * data/c.m4 (b4_symbol_actions): Remove.
+ Adjust all callers to use by b4_symbol_foreach and the corresponding
+ b4_symbol_printer/destructor macro.
+ * data/glr.cc: Adjust.
+ * data/lalr1.java: Adjust the %destructor sanity check.
+ * src/output.c (symbol_code_props_output): Remove, we no longer
+ need the b4_symbol_printers/destructors tables.
+
+2008-12-01 Akim Demaille <demaille@gostai.com>
+
+ Use b4_symbol_case_.
+ * data/lalr1.cc, data/bison.m4 (b4_symbol_action): Use
+ b4_symbol_case_.
+
+2008-12-01 Akim Demaille <demaille@gostai.com>
+
+ Move b4_symbol based macro to bison.m4.
+ * data/lalr1.cc (b4_symbol_, b4_symbol, b4_symbol_if)
+ (b4_symbol_action, b4_symbol_destructor, b4_symbol_printer)
+ (b4_symbol_case_, b4_symbol_foreach, b4_type_action_)
+ (b4_type_foreach): Move to...
+ * data/bison.m4: Here.
+ * data/lalr1.cc (b4_symbol_action): Specialize for C++: use
+ b4_symbol_value_template instead of b4_symbol_value.
+
+2008-12-01 Akim Demaille <demaille@gostai.com>
+
+ b4_symbol/type_foreach.
+ * data/lalr1.cc (b4_symbol_foreach, b4_type_foreach): New.
+ Use them.
+
+2008-12-01 Akim Demaille <demaille@gostai.com>
+
+ Use the symbol properties to output the printer/destructor for lalr1.cc.
+ Instead of defining complex list of tuples to define various
+ properties of the symbols, we now prefer to define symbols as
+ "structs" in m4: using the symbol key (its number), and the
+ property name, b4_symbol gives it value. Use this to handle
+ destructors and printers.
+
+ * src/output.c (CODE_PROP): New.
+ (prepare_symbol_definitions): Use it to define the printer and
+ destructor related attributes of the symbols.
+ * data/lalr1.cc (b4_symbol_actions): Rename as...
+ (b4_symbol_action): this.
+ Use b4_symbol instead of 6 arguments.
+ (b4_symbol_printer, b4_symbol_destructor): New.
+ Use them instead of b4_symbol_actions.
+
+2008-12-01 Akim Demaille <demaille@gostai.com>
+
+ Avoid capturing variables too easily.
+ * src/muscle_tab.h (MUSCLE_INSERT_BOOL, MUSCLE_OBSTACK_SGROW): Use
+ v__ and p__ instead of v and p.
+
+2008-12-01 Akim Demaille <demaille@gostai.com>
+
+ Remove spurious empty line before syncline.
+ * data/bison.m4 (b4_syncline): Don't output an empty line before
+ the output.
+
+2008-11-26 Akim Demaille <demaille@gostai.com>
+
+ Convert lib/Makefile.am into lib/local.mk.
+ The real problem is rather gnulib.mk, which itself is extracted
+ from a Makefile.am that gnulib expects to the "recursive". The
+ tool prefix-gnulib-mk converts such a gnulib.mk to be
+ non-recursive. Also, some AC_SUBST variables need to be adjusted.
+
+ * etc/prefix-gnulib-mk: New.
+ * bootstrap (slurp): Use it to convert further gnulib.mk.
+ No longer try to avoid re-creation of lib/gnulib.mk as the changes
+ are deeper.
+ * lib/Makefile.am: Rename as...
+ * lib/local.mk: this.
+ Adjust to be prefixed.
+ * Makefile.am, configure.ac: Adjust.
+ * src/local.mk (AM_CPPFLAGS): Extend it, don't define it.
+
+2008-11-26 Akim Demaille <demaille@gostai.com>
+
+ s/_FLAGS/FLAGS/.
+ * tests/local.mk (TESTSUITE_FLAGS, AUTOTEST_FLAGS): Rename as...
+ (TESTSUITEFLAGS, AUTOTESTFLAGS): these to compy with the GCS.
+ Reported by Eric Blake.
+
+2008-11-26 Akim Demaille <demaille@gostai.com>
+
+ Use b4_parser_tables_define in glr.cc.
+ * data/glr.c: Use b4_parser_tables_define instead of defining the
+ (deterministic integral) tables by hand.
+
+2008-11-26 Akim Demaille <demaille@gostai.com>
+
+ Use b4_parser_tables_define in Java.
+ * data/java.m4 (b4_typed_parser_table): Rename as...
+ (b4_typed_parser_table_define): this, for consistency.
+ Accept a comment as $4.
+ Move $2 into yy*_.
+ (b4_integral_parser_table): Rename as...
+ (b4_integral_parser_table_define): this.
+ * data/lalr1.java: Adjust all uses.
+ Use b4_parser_tables_define instead of generation by hand.
+
+2008-11-26 Akim Demaille <demaille@gostai.com>
+
+ Prepare the convergence bw C style and Java table generation.
+ * data/bison.m4 (b4_tables_map, b4_tables_declare)
+ (b4_tables_define): Rename as...
+ (b4_integral_parser_tables_map, b4_parser_tables_declare)
+ (b4_parser_tables_define): these.
+ * data/c.m4 (b4_table_define): Rename as...
+ (b4_integral_parser_table_define): this.
+ * data/lalr1.cc: Adjust.
+ (b4_table_define, b4_table_declare): Rename as...
+ (b4_integral_parser_table_define)
+ (b4_integral_parser_table_declare): these.
+ (yyrline_): Move the comment where it is actually used.
+ * data/yacc.c: Adjust.
+ (yyrline): Use b4_integral_parser_table_define.
+
+2008-11-26 Akim Demaille <demaille@gostai.com>
+
+ Regen.
+ * src/parse-gram.h, src/parse-gram.c: Regen.
+