5350 Commits

Author SHA1 Message Date
Akim Demaille
38435078b1 lalrl1.cc: give a chance to user defined YYLLOC_DEFAULT.
* data/lalr1.cc (YYLLOC_DEFAULT): Move its definition from the
	header file to the implementation file, after the user %code
	sections.
	* NEWS: Document it.
2010-05-12 10:27:17 +02:00
Akim Demaille
27290b6035 NEWS: fix chronology.
* NEWS (C++ parsers use YYRHSLOC): Move from ?.? to 2.5.
2010-05-12 10:25:39 +02:00
Akim Demaille
e7bab2df96 c++: use YYRHSLOC.
* data/lalr1.cc (YYRHSLOC): New.
	(YYLLOC_DEFAULT): Use it.
	* data/glr.cc: If location_type was user defined, do not include
	location.hh, and do not produce location.hh and position.hh.
	* tests/calc.at (YYLLOC_DEFAULT): Use YYRHSLOC.
	Check that glr.cc supports user defined location_type.
	* NEWS: Document this.
(cherry picked from commit bb9191dd31)

Conflicts:

	ChangeLog
	NEWS
	data/lalr1.cc
	tests/calc.at
2010-05-12 07:27:13 +02:00
Akim Demaille
e944aaff36 doc: please Emacs.
* doc/bison.texinfo (Local Variables): Move this after the
	LocalWords, since the latter are looked for in the whole document,
	while the former are looked for only at its end.
	Require american spell checking.
2010-05-11 21:31:31 +02:00
Akim Demaille
86e5b4402f doc: fix lalr1.cc documentation.
* doc/bison.texinfo (C++ Scanner Interface): Fix yylex signature.
	(C++ Bison Interface): Fix lalr1.cc skeleton name.
	(C++ Parser Interface): Fix semantic_type and location_type names.
	Document yy::parser::token.
	Reported by Jerry Quinn.

(cherry picked from commit 0100cd629d)

Conflicts:

	ChangeLog
	doc/bison.texinfo
2010-05-10 10:41:21 +02:00
Akim Demaille
baacae4971 doc: fix lalr1.cc documentation.
* doc/bison.texinfo (C++ Scanner Interface): Fix yylex signature.
	(C++ Bison Interface): Fix lalr1.cc skeleton name.
	(C++ Parser Interface): Fix semantic_type and location_type names.
	Document yy::parser::token.
	Reported by Jerry Quinn.

(cherry picked from commit 0100cd629d)

Conflicts:
	doc/bison.texinfo
2010-05-10 10:31:31 +02:00
Akim Demaille
bb9191dd31 c++: use YYRHSLOC.
* data/lalr1.cc (YYRHSLOC): New.
	(YYLLOC_DEFAULT): Use it.
	* data/glr.cc: If location_type was user defined, do not include
	location.hh, and do not produce location.hh and position.hh.
	* tests/calc.at (YYLLOC_DEFAULT): Use YYRHSLOC.
	Check that glr.cc supports user defined location_type.
	* NEWS: Document this.
2010-05-10 09:59:11 +02:00
Akim Demaille
f38ae16f37 comment change.
* data/c++.m4: here.
2010-05-09 14:36:09 +02:00
Akim Demaille
95a2de5695 lalr1.cc: don't generate location.hh when location_type is defined
* data/bison.m4 (b4_percent_define_use): New.
	(b4_percent_define_get): Use it.
	Accept a default value.
	* data/c++.m4: Do not provide a default value for the %define
	variable location_type, rather, use b4_percent_define_get with a
	default argument where its value is needed.
	* data/lalr1.cc: Do not load location.cc (which outputs both
	location.hh and position.hh) if the user defined location_type.
	Do not include location.hh either.
	* data/glr.cc: Likewise.

(cherry picked from commit 7789b6e3e7)

Conflicts:

	ChangeLog
	data/bison.m4
	data/c++.m4
	data/lalr1.cc
2010-05-09 14:32:19 +02:00
Akim Demaille
38f9fd6439 The previous commit (0f404a0af0) was
actually cherry-picked from commit
49976d5c45, not from commit
c826013fb3.
2010-05-07 22:53:15 +02:00
Akim Demaille
0f404a0af0 lalr1.cc: location_type: make sure we don't depend on loc.(begin|end).
* tests/calc.at (Span): Instead of begin/end, as in the built-in
	location class, use first and last.
	Define YYLLOC_DEFAULT to adjust to these changes.
	* tests/local.at (_AT_BISON_OPTION_PUSHDEFS): Adjust to the
	location_type changes.

(cherry picked from commit c826013fb3)

Conflicts:

	tests/calc.at
2010-05-07 22:40:12 +02:00
Akim Demaille
8aec287e64 doc: fix typo.
* tests/synclines.at: here.
2010-05-07 17:45:18 +02:00
Akim Demaille
bdc360ae58 tests: enhance AT_SYNCLINES_COMPILE.
* tests/synclines.at (AT_TEST_SYNCLINE): Move GCC 4.5 protection
	into...
	(AT_SYNCLINES_COMPILE): here.
	Add more distcc patterns.

(cherry picked from commit c826013fb3)

Conflicts:

	tests/synclines.at
2010-05-07 17:42:34 +02:00
Akim Demaille
c826013fb3 tests: enhance AT_SYNCLINES_COMPILE.
* tests/synclines.at (AT_SYNCLINES_COMPILE): More distcc patterns.
	(AT_TEST_SYNCLINE): Remove GCC 4.5 protection which is already
	taken care of in AT_SYNCLINES_COMPILE.
2010-05-04 11:34:05 +02:00
Akim Demaille
7789b6e3e7 lalr1.cc: don't generate location.hh when location_type is defined
* data/bison.m4 (b4_percent_define_get): Accept a default value.
	* data/c++.m4: Do not provide a default value for the %define
	variable location_type, rather, use b4_percent_define_get with a
	default argument where its value is needed.
	* data/lalr1.cc: Do not load location.cc (which outputs both
	location.hh and position.hh) if the user defined location_type.
	Do not include location.hh either.
2010-05-04 11:34:03 +02:00
Akim Demaille
19ad326be4 lalr1.cc: minor refactoring.
* data/lalr1.cc: Don't issue empty namespaces.
2010-05-04 11:34:01 +02:00
Akim Demaille
f5da8149a2 tests: fix %printer.
Currently, there is no check that %printer ... <foo> (nor
%destructor) is about an existing <foo> type.  This C++ test had
it wrong (<::std::string> vs. <std::string>).

	* tests/c++.at (AT_CHECK_VARIANTS): In list.yy, redefine the
	pretty-printing of lists into something better for parser traces.
	Update the expected output.
	Fix correspondance between %type/%token and %printer.
2010-05-04 11:33:59 +02:00
Akim Demaille
49976d5c45 lalr1.cc: location_type: make sure we don't depend on loc.(begin|end).
* tests/calc.at (Span): Instead of begin/end, as in the built-in
	location class, use first and last.
	Define YYLLOC_DEFAULT to adjust to these changes.
	* tests/local.at (_AT_BISON_OPTION_PUSHDEFS): Adjust to the
	location_type changes.
2010-05-04 11:32:39 +02:00
Joel E. Denny
ca7a59e838 tests: fix maintainer-xml-check.
* data/xslt/xml2dot.xsl (xsl:template match="bison-xml-report"):
Update output to include comments now produced by --graph.
(xsl:template match="automaton"): As for --graph, name the
digraph after the grammar file.
* src/print-xml.c (escape_bufs): Enlarge array.
(print_xml): Add bug-report and url attributes to
bison-xml-report element.
(cherry picked from commit bc81de36b7)
2010-05-01 20:41:10 -04:00
Joel E. Denny
ad6f84e550 In DOT output, convert from "/*" comments to "//" comments.
This handles the possibility that a "*/" might appear in
variable portions of those comments at some point in the future.
* src/graphviz.c (start_graph): Implement.
(cherry picked from commit b7666378f5)
2010-05-01 20:41:07 -04:00
Joel E. Denny
bc81de36b7 tests: fix maintainer-xml-check.
* data/xslt/xml2dot.xsl (xsl:template match="bison-xml-report"):
Update output to include comments now produced by --graph.
(xsl:template match="automaton"): As for --graph, name the
digraph after the grammar file.
* src/print-xml.c (escape_bufs): Enlarge array.
(print_xml): Add bug-report and url attributes to
bison-xml-report element.
2010-05-01 20:05:19 -04:00
Joel E. Denny
b7666378f5 In DOT output, convert from "/*" comments to "//" comments.
This handles the possibility that a "*/" might appear in
variable portions of those comments at some point in the future.
* src/graphviz.c (start_graph): Implement.
2010-05-01 19:48:15 -04:00
Joel E. Denny
212792959e * ChangeLog (2010-04-30): Fix typo.
(cherry picked from commit 56e92e0bff)
2010-05-01 14:48:32 -04:00
Joel E. Denny
56e92e0bff * ChangeLog (2010-04-30): Fix typo. 2010-05-01 14:47:49 -04:00
Joel E. Denny
9b5049bd07 Document that undefined %prec identifier warnings will remain.
* NEWS (2.4.3): Here.
(2.4.2): Here.
(cherry picked from commit ff1f7871df)
2010-04-30 15:34:50 -04:00
Joel E. Denny
43fdc9fd8e Document that undefined %prec identifier warnings will remain.
* NEWS (2.4.3): Here.
(2.4.2): Here.
(cherry picked from commit ff1f7871df)
2010-04-30 15:34:35 -04:00
Joel E. Denny
e02df72c2d Revert 2009-12-30 change for undefined %prec token complaints.
That is, keep them as warnings because that should be sufficient
to satisfy POSIX without creating backward compatibility issues.
Suggested by Richard Stallman at
<http://lists.gnu.org/archive/html/bison-patches/2010-03/msg00033.html>.
* NEWS (2.5): Remove mention of complaint.
* src/reader.c (grammar_rule_check): Convert warning back to
complaint.
* tests/input.at (%prec's token must be defined): Update.
(cherry picked from commit 02354690ee)
2010-04-30 14:59:24 -04:00
Joel E. Denny
02354690ee Revert 2009-12-30 change for undefined %prec token complaints.
That is, keep them as warnings because that should be sufficient
to satisfy POSIX without creating backward compatibility issues.
Suggested by Richard Stallman at
<http://lists.gnu.org/archive/html/bison-patches/2010-03/msg00033.html>.
* NEWS (2.5): Remove mention of complaint.
* src/reader.c (grammar_rule_check): Convert warning back to
complaint.
* tests/input.at (%prec's token must be defined): Update.
2010-04-30 14:49:54 -04:00
Joel E. Denny
a7ddefd1c2 build: don't require src/bison during bootstrap.
Suggested by Eric Blake at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00003.html>.
* bootstrap.conf (bootstrap_epilogue): New function to make sure
src/parse-gram.[ch] are stamped later than src/parse-gram.y.
(cherry picked from commit b733bcd00e)
2010-04-25 17:56:14 -04:00
Joel E. Denny
ba3063f613 build: don't require src/bison during bootstrap.
Suggested by Eric Blake at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00003.html>.
* bootstrap.conf (bootstrap_epilogue): New function to make sure
src/parse-gram.[ch] are stamped later than src/parse-gram.y.
(cherry picked from commit b733bcd00e)
2010-04-25 17:49:25 -04:00
Joel E. Denny
c1bd4b2b6f i18n: fix untranslatable string.
Reported by Goran Uddeborg at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00000.html>.
* src/muscle-tab.c (muscle_percent_define_insert): Here.
(cherry picked from commit e0fda26c8d)

Conflicts:

	src/muscle-tab.c
2010-04-25 17:19:06 -04:00
Joel E. Denny
e0fda26c8d i18n: fix untranslatable string.
Reported by Goran Uddeborg at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00000.html>.
* src/muscle-tab.c (muscle_percent_define_insert): Here.
2010-04-25 17:07:15 -04:00
Akim Demaille
ecbca7db4b tests: calc: minor refactoring.
* tests/calc.at (_AT_DATA_CALC_Y): Simplify yylex.
(cherry picked from commit 67f1a2c254)
2010-04-14 12:46:30 +02:00
Akim Demaille
ed228e60b2 tests: calc: simplify location management.
* tests/local.at (AT_LOC_PUSHDEF, AT_LOC_POPDEF): New.
	(_AT_BISON_OPTION_PUSHDEFS, AT_BISON_OPTION_POPDEFS): Use them to
	define the appropriate AT_LOC accessors.
	* tests/calc.at: Use AT_LOC accessors.

(cherry picked from commit 4f756f887b)

Conflicts:

	tests/local.at
2010-04-14 12:45:25 +02:00
Akim Demaille
cacfdef716 test location_type.
* tests/local.at (_AT_BISON_OPTION_PUSHDEFS):
	Define AT_LOCATION_TYPE_IF.
	(_AT_BISON_OPTION_POPDEFS): Undefine AT_LOCATION_TYPE_IF.
	* tests/calc.at (_AT_DATA_CALC_Y): When %define location_type is
	used, provide a user location type and use it.
	(Simple LALR1 C++ Calculator): Add a test case for location_type.

(cherry picked from commit 24bb8c8c25)

Conflicts:

	tests/calc.at
2010-04-14 12:25:51 +02:00
Akim Demaille
2f61c4a2d0 tests: check fclose's return value.
* tests/calc.at (_AT_DATA_CALC_Y): Check fclose's return status.
(cherry picked from commit af129079f0)
2010-04-14 12:04:43 +02:00
Akim Demaille
16d9244df6 tests: don't depend on the actual location type.
* tests/calc.at: Use yy::parser::location_type rather than
	yy::location, since the former is always right, and might point to
	another type than the latter.

(cherry picked from commit 36dc3637a4)

Conflicts:

	tests/calc.at
2010-04-14 12:02:45 +02:00
Akim Demaille
3e4a253ba9 formatting changes.
* tests/calc.at: Formatting changes.
(cherry picked from commit c499231de4)
2010-04-14 12:01:06 +02:00
Akim Demaille
df5df58d91 lalr1.cc: remove useless forward declaration.
* data/lalr1.cc: Include location.hh before stack.hh.
	Remove the useless forward declarations of position and location.
	Reported by Chris Morley.
	* data/glr.cc: Likewise.

(cherry picked from commit 7799ef1594)

Conflicts:

	data/lalr1.cc.
2010-04-14 12:00:19 +02:00
Akim Demaille
67f1a2c254 tests: calc: minor refactoring.
* tests/calc.at (_AT_DATA_CALC_Y): Simplify yylex.
2010-04-13 23:32:00 +02:00
Akim Demaille
4f756f887b tests: calc: simplify location management.
* tests/local.at (AT_LOC_PUSHDEF, AT_LOC_POPDEF): New.
	(_AT_BISON_OPTION_PUSHDEFS, AT_BISON_OPTION_POPDEFS): Use them to
	define the appropriate AT_LOC accessors.
	* tests/calc.at: Use AT_LOC accessors.
2010-04-13 23:31:57 +02:00
Akim Demaille
24bb8c8c25 test location_type.
* tests/local.at (_AT_BISON_OPTION_PUSHDEFS):
	Define AT_LOCATION_TYPE_IF.
	(_AT_BISON_OPTION_POPDEFS): Undefine AT_LOCATION_TYPE_IF.
	* tests/calc.at (_AT_DATA_CALC_Y): When %define location_type is
	used, provide a user location type and use it.
	(Simple LALR1 C++ Calculator): Add a test case for location_type.
2010-04-13 23:31:55 +02:00
Akim Demaille
af129079f0 tests: check fclose's return value.
* tests/calc.at (_AT_DATA_CALC_Y): Check fclose's return status.
2010-04-13 23:31:52 +02:00
Akim Demaille
36dc3637a4 tests: don't depend on the actual location type.
* tests/calc.at: Use yy::parser::location_type rather than
	yy::location, since the former is always right, and might point to
	another type than the latter.
2010-04-13 23:31:49 +02:00
Akim Demaille
c499231de4 formatting changes.
* tests/calc.at: Formatting changes.
2010-04-13 23:31:47 +02:00
Akim Demaille
7799ef1594 lalr1.cc: remove useless forward declaration.
* data/lalr1.cc: Include location.hh before stack.hh.
	Remove the useless forward declarations of position and location.
	Reported by Chris Morley.
	* data/glr.cc: Likewise.
2010-04-13 23:29:29 +02:00
Joel E. Denny
06cb07d517 * NEWS (2.4.3): Mention fix for Sun Studio C++.
(cherry picked from commit cb76b1f1a3)
2010-04-11 14:46:19 -04:00
Joel E. Denny
88bb35d6ac * NEWS (2.4.3): Mention fix for Sun Studio C++.
(cherry picked from commit cb76b1f1a3)
2010-04-11 14:46:01 -04:00
Joel E. Denny
4586c8cdb7 tests: fix for newer Sun Studio C++.
Reported by Dagobert Michelsen at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00023.html>.
* THANKS (Dagobert Michelsen): Add.
* configure.ac (AC_PREREQ): Set to 2.64 so we get the latest
Autoconf macro for handling the restrict keyword.
* gnulib: Update to latest, which no longer overrides that macro
from Autoconf.
(cherry picked from commit 4333ba11c6)

Conflicts:

	configure.ac
2010-04-10 18:06:33 -04:00
Joel E. Denny
585ef2eb20 tests: fix for newer Sun Studio C++.
Reported by Dagobert Michelsen at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00023.html>.
* THANKS (Dagobert Michelsen): Add.
* configure.ac (AC_PREREQ): Set to 2.64 so we get the latest
Autoconf macro for handling the restrict keyword.
* gnulib: Update to latest, which no longer overrides that macro
from Autoconf.
(cherry picked from commit 4333ba11c6)
2010-04-10 17:54:22 -04:00