X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/dafdc66ff0a0344c390d0f5612e9b469d6855e00..1ae728637603d1e87ab247bbfe902cd91338000d:/ChangeLog

diff --git a/ChangeLog b/ChangeLog
index 3d181d22..644548c9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,170 @@
+2002-06-20  Akim Demaille  <akim@epita.fr>
+
+	* data/bison.simple (b4_symbol_actions): New, replaces...
+	(b4_symbol_destructor, b4_symbol_printer): these.
+	(yysymprint): Be sure to call YYPRINT only for tokens, and using
+	user token numbers.
+
+2002-06-20  Akim Demaille  <akim@epita.fr>
+
+	* data/bison.simple (yydestructor): Rename as...
+	(yydestruct): this.
+
+2002-06-20  Akim Demaille  <akim@epita.fr>
+
+	* src/symtab.h, src/symtab.c (symbol_type_set)
+	(symbol_destructor_set, symbol_precedence_set): The location is
+	the last argument.
+	Adjust all callers.
+
+2002-06-20  Akim Demaille  <akim@epita.fr>
+
+	* src/parse-gram.y (YYPRINT, yyprint): Don't mess with the parser
+	internals.
+	* src/reader.h, src/reader.c (grammar_current_rule_prec_set):
+	Takes a location.
+	* src/symtab.h, src/symtab.c (symbol_class_set)
+	(symbol_user_token_number_set): Likewise.
+	Adjust all callers.
+	Promote complain_at.
+	* tests/input.at (Type Clashes): Adjust.
+
+2002-06-20  Akim Demaille  <akim@epita.fr>
+
+	* data/bison.simple (YYLEX): Fix the declaration when
+	%pure-parser.
+
+2002-06-20  Akim Demaille  <akim@epita.fr>
+
+	* data/bison.simple (yysymprint): Don't print the token number,
+	just its name.
+	* tests/actions.at (Destructors): Rename as...
+	(Printers and Destructors): this.
+	Also exercise %printer.
+
+2002-06-20  Akim Demaille  <akim@epita.fr>
+
+	* data/bison.simple (YYDSYMPRINT): New.
+	Use it to remove many of the #if YYDEBUG/if (yydebug).
+
+2002-06-20  Akim Demaille  <akim@epita.fr>
+
+	* src/symtab.h, src/symtab.c (symbol_t): printer and
+	printer_location are new members.
+	(symbol_printer_set): New.
+	* src/parse-gram.y (PERCENT_PRINTER): New token.
+	Handle its associated rule.
+	* src/scan-gram.l: Adjust.
+	(handle_destructor_at, handle_destructor_dollar): Rename as...
+	(handle_symbol_code_at, handle_symbol_code_dollar): these.
+	* src/output.c (symbol_printers_output): New.
+	(output_skeleton): Call it.
+	* data/bison.simple (yysymprint): New.  Cannot be named yyprint
+	since there are already many grammar files with a user `yyprint'.
+	Replace the calls to YYPRINT to calls to yysymprint.
+	* tests/calc.at: Adjust.
+	* tests/torture.at (AT_DATA_STACK_TORTURE): Remove YYPRINT: it was
+	taking advantage of parser very internal details (stack size!).
+
+2002-06-20  Akim Demaille  <akim@epita.fr>
+
+	* src/scan-gram.l: Complete the scanner with the missing patterns
+	to pacify Flex.
+	Use `quote' and `symbol_tag_get' where appropriate.
+
+2002-06-19  Akim Demaille  <akim@epita.fr>
+
+	* tests/actions.at (Destructors): Augment to test locations.
+	* data/bison.simple (yydestructor): Pass it the current location
+	if locations are enabled.
+	Prototype only when __STDC__ or C++.
+	Change the argument names to move into the yy name space: there is
+	user code here.
+
+2002-06-19  Akim Demaille  <akim@epita.fr>
+
+	* data/bison.simple (b4_pure_if): New.
+	Use it instead of #ifdef YYPURE.
+
+2002-06-19  Akim Demaille  <akim@epita.fr>
+
+	* data/bison.simple (b4_location_if): New.
+	Use it instead of #ifdef YYLSP_NEEDED.
+
+2002-06-19  Akim Demaille  <akim@epita.fr>
+
+	Prepare @$ in %destructor, but currently don't bind it in the
+	skeleton, as %location use is not cleaned up yet.
+
+	* src/scan-gram.l (handle_dollar, handle_destructor_at)
+	(handle_action_at): New.
+	(handle_at, handle_action_dollar, handle_destructor_dollar): Take
+	a braced_code_t and a location as additional arguments.
+	(handle_destructor_dollar): Instead of requiring `b4_eval', just
+	unquote one when outputting `b4_dollar_dollar'.
+	Adjust callers.
+	* data/bison.simple (b4_eval): Remove.
+	(b4_symbol_destructor): Adjust.
+	* tests/input.at (Invalid @n): Adjust.
+
+2002-06-19  Zack Weinberg  <zack@codesourcery.com>
+
+	* doc/bison.texinfo: Document ability to have multiple
+	prologue sections.
+
+2002-06-18  Akim Demaille  <akim@epita.fr>
+
+	* src/files.c (compute_base_names): When computing the output file
+	names from the input file name, strip the directory part.
+
+2002-06-18  Akim Demaille  <akim@epita.fr>
+
+	* data/bison.simple.new: Comment changes.
+	Reported by Andreas Schwab.
+
+2002-06-18  Matt Kraai  <kraai@alumni.cmu.edu>
+
+	* data/bison.simple (yyoverflowlab): #ifndef yyoverflow, so that
+	there are no `label `yyoverflowlab' defined but not used' warnings
+	when yyoverflow is defined.
+
+2002-06-18  Akim Demaille  <akim@epita.fr>
+
+	* src/symtab.h, src/symtab.c (symbol_t): destructor_location is a
+	new member.
+	(symbol_destructor_set): Adjust.
+	* src/output.c (symbol_destructors_output): Output the destructor
+	locations.
+	Output the symbol name.
+	* data/bison.simple (b4_symbol_destructor): Adjust.
+
+2002-06-18  Cris Bailiff  <c.bailiff@awayweb.com>
+	and Akim Demaille  <akim@epita.fr>
+
+	* data/bison.simple.new (yyerrlab1): Be sure to pop and destroy
+	what's left on the stack when the error recovery hits EOF.
+	* tests/actions.at (Destructors): Complete to exercise this case.
+
+2002-06-17  Akim Demaille  <akim@epita.fr>
+
+	* data/m4sugar/m4sugar.m4 (m4_map): Recognize when the list of
+	arguments is really empty, not only equal to `[]'.
+	* src/symtab.h, src/symtab.c (symbol_t): `destructor' is a new
+	member.
+	(symbol_destructor_set): New.
+	* src/output.c (symbol_destructors_output): New.
+	* src/reader.h (brace_code_t, current_braced_code): New.
+	* src/scan-gram.l (BRACED_CODE): Use it to branch on...
+	(handle_dollar): Rename as...
+	(handle_action_dollar): this.
+	(handle_destructor_dollar): New.
+	* src/parse-gram.y (PERCENT_DESTRUCTOR): New.
+	(grammar_declaration): Use it.
+	* data/bison.simple (yystos): Is always defined.
+	(yydestructor): New.
+	* tests/actions.at (Destructors): New.
+	* tests/calc.at (_AT_CHECK_CALC_ERROR): Don't rely on egrep.
+
 2002-06-17  Akim Demaille  <akim@epita.fr>
 
 	* src/symlist.h, src/symlist.c (symbol_list_length): New.
@@ -9,7 +176,6 @@
 	symbol_tag_get.
 	* src/parse-gram.y: Use symbol_list_free.
 
-	
 2002-06-17  Akim Demaille  <akim@epita.fr>
 
 	* src/reader.h, src/reader.c (symbol_list, symbol_list_new)
@@ -21,7 +187,6 @@
 	* src/scan-gram.l (handle_dollar): Takes a location.
 	* tests/input.at (Invalid $n): Adjust.
 
-	
 2002-06-17  Akim Demaille  <akim@epita.fr>
 
 	* src/reader.h, src/reader.c (symbol_list_new): Export it.