• Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 2012-12-12  Akim Demaille  <akim@lrde.epita.fr>
2 
3 	version 2.7
4 	* NEWS: Record release date.
5 
6 2012-12-12  Akim Demaille  <akim@lrde.epita.fr>
7 
8 	yacc.c: scope reduction
9 	* data/yacc.c (yysyntax_error): here.
10 
11 2012-12-12  Akim Demaille  <akim@lrde.epita.fr>
12 
13 	tests: C90 compliance
14 	* tests/synclines.at: here.
15 
16 2012-12-12  Akim Demaille  <akim@lrde.epita.fr>
17 
18 	fix C90 compliance
19 	* data/glr.c, src/graphviz.h, src/ielr.c, src/scan-gram.l,
20 	* src/system.h, tests/actions.at, tests/glr-regression.at: Do not
21 	use // comments.
22 	Do not introduce variables after statements.
23 	Provide "main" with a return value.
24 
25 2012-12-12  Akim Demaille  <akim@lrde.epita.fr>
26 
27 	glr.c: scope reduction
28 	* data/glr.c (yyreportSyntaxError): Reduce the scope of yysize1 (now
29 	yysz).
30 
31 2012-12-12  Akim Demaille  <akim@lrde.epita.fr>
32 
33 	gnulib: update
34 
35 2012-12-09  Akim Demaille  <akim@lrde.epita.fr>
36 
37 	news: prepare for forthcoming release
38 	* NEWS: Fill paragraph.
39 	Reorder.
40 	Update examples.
41 	Remove line for 2.6.90.
42 
43 2012-12-09  Akim Demaille  <akim@lrde.epita.fr>
44 
45 	doc: explain how mid-rule actions are translated
46 	* doc/bison.texi (Actions in Mid-Rule): Mention and use named references.
47 	Split into three subsections, among which...
48 	(Mid-Rule Action Translation): this new section.
49 
50 2012-12-09  Akim Demaille  <akim@lrde.epita.fr>
51 
52 	error: use better locations for unused midrule values
53 	On
54 
55 	  %%
56 	  exp: {;} {$$;} { $$ = $1; }
57 
58 	instead of reporting (with -fcaret -Wmidrule-value)
59 
60 	  midrule.y:2.6-8: warning: unset value: $$ [-Wmidrule-values]
61 	   exp: {;} {$$;} { $$ = $1; }
62 	        ^^^
63 	  midrule.y:2.6-27: warning: unused value: $2 [-Wmidrule-values]
64 	   exp: {;} {$$;} { $$ = $1; }
65 	        ^^^^^^^^^^^^^^^^^^^^^^
66 
67 	report
68 
69 	  midrule.y:2.6-8: warning: unset value: $$
70 	   exp: {;} {$$;} { $$ = $1; }
71 	        ^^^
72 	  midrule.y:2.10-14: warning: unused value: $2
73 	   exp: {;} {$$;} { $$ = $1; }
74 	            ^^^^^
75 
76 	* src/reader.c (grammar_rule_check): When warning about the value of a
77 	midrule action, use the location of the midrule action instead of the
78 	location of the rule.
79 	the location of the part of the rule.
80 	* tests/actions.at (Default %printer and %destructor for mid-rule values):
81 	Adjust expectations
82 	* tests/input.at (Unused values with default %destructor): Ditto.
83 	(AT_CHECK_UNUSED_VALUES): Ditto.
84 	And use -fcaret.
85 
86 2012-12-09  Akim Demaille  <akim@lrde.epita.fr>
87 
88 	doc: various minor improvements and fixes
89 	* doc/figs/example.dot, doc/figs/example.y: New.
90 	* doc/bison.texi: Prefer "token" to TOKEN.
91 	Use @group where appropriate.
92 	Adjust with style changes in the output (State 0, not state 0).
93 	Fix some @ref that were missing the third argument.
94 	Fix some incorrect line numbers.
95 	Use "nonterminal", not "non-terminal".
96 	Fix overfull and underfull TeX hboxes.
97 	Put the comments in the index.
98 	Remove duplicate index entries.
99 	Fuse glossary entries where appropriate.
100 	(Understanding): Improve the continuity between sections.
101 	Use example.dot to show the whole graph.
102 	* doc/Makefile.am: Adjust.
103 
104 2012-12-09  Akim Demaille  <akim@lrde.epita.fr>
105 
106 	tests: ignore more useless compiler warnings
107 	* tests/synclines.at (AT_SYNCLINES_COMPILE): Ignore complains about
108 	using c++ to compile C.
109 
110 2012-12-09  Akim Demaille  <akim@lrde.epita.fr>
111 
112 	tests: be robust to C being compiled with a C++11 compiler
113 	* tests/glr-regression.at: Use YY_NULL instead of NULL.
114 	Comment changes.
115 
116 2012-12-09  Akim Demaille  <akim@lrde.epita.fr>
117 
118 	build: beware of Clang++ not supporting POSIXLY_CORRECT
119 	* m4/c-working.m4 (BISON_LANG_COMPILER_POSIXLY_CORRECT): New.
120 	(BISON_C_COMPILER_POSIXLY_CORRECT): Use it.
121 	For consistency with C++, also define BISON_C_WORKS.
122 	* m4/cxx.m4 (BISON_CXX_COMPILER_POSIXLY_CORRECT): New.
123 	* configure.ac: Use it.
124 	* tests/atlocal.in: Get its result.
125 	Propagate properly CXX values when used to compile C.
126 	When POSIXLY_CORRECT, adjust BISON_C_WORKS and BISON_CXX_WORKS.
127 	* tests/local.at (AT_COMPILE): Use BISON_C_WORKS.
128 
129 2012-12-07  Akim Demaille  <akim@lrde.epita.fr>
130 
131 	maint: post-release administrivia
132 	* NEWS: Add header line for next release.
133 	* .prev-version: Record previous version.
134 	* cfg.mk (old_NEWS_hash): Auto-update.
135 
136 2012-12-07  Akim Demaille  <akim@lrde.epita.fr>
137 
138 	version 2.6.90
139 	* NEWS: Record release date.
140 
141 2012-12-07  Akim Demaille  <akim@lrde.epita.fr>
142 
143 	build: fix syntax-check error.
144 	* cfg.mk: Exclude names-refs, it includes a "double" if (end of first
145 	line, first of second line below).
146 
147 	test.y:43.12-44.59:  symbol not found in production: if
148 	 if-stmt-a: IF expr[cond] THEN stmt.list[then] ELSE stmt.list[else] FI
149 	            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
150 
151 2012-12-07  Theophile Ranquet  <ranquet@lrde.epita.fr>
152 
153 	cpp: simplify the Flex version checking macro
154 	* src/flex-scanner,h (FLEX_VERSION): Consider YY_FLEX_SUBMINOR_VERSION
155 	defined.
156 
157 2012-12-07  Theophile Ranquet  <ranquet@lrde.epita.fr>
158 
159 	news: improve the carets example and fix a typo
160 	* NEWS: Here.
161 
162 2012-12-07  Theophile Ranquet  <ranquet@lrde.epita.fr>
163 
164 	cpp: improve the Flex version checking macro
165 	* src/flex-scanner.h (FLEX_VERSION): Here.
166 
167 2012-12-07  Theophile Ranquet  <ranquet@lrde.epita.fr>
168 
169 	carets: improve the code
170 	* src/location.c: Remove duplicate documentations.
171 	(caret_info): Stylistic change.
172 	(location_caret): Many reworks.
173 
174 2012-12-07  Akim Demaille  <akim@lrde.epita.fr>
175 
176 	maint: update news
177 	* NEWS: There is no 2.6.6, remove its stub.
178 
179 2012-12-07  Akim Demaille  <akim@lrde.epita.fr>
180 
181 	build: keep -Wmissing-declarations and -Wmissing-prototypes for modern GCCs
182 	Fixes a -Werror failure of xalloc.h used in src.
183 	From Eric Blake.
184 	http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00006.html
185 
186 	* configure.ac: Check whether GCC pragma diagnostic push/pop works.
187 	Enable these warnings for bison if it does.
188 	Enable these warnings for the test suite anyway.
189 
190 2012-12-07  Akim Demaille  <akim@lrde.epita.fr>
191 
192 	build: drop -Wcast-qual
193 	Suggested by Jim Meyering.
194 	http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00017.html
195 	* configure.ac (warn_common): Remove -Wcast-qual.
196 
197 2012-12-07  Akim Demaille  <akim@lrde.epita.fr>
198 
199 	gnulib: update
200 
201 2012-12-06  Theophile Ranquet  <ranquet@lrde.epita.fr>
202 
203 	misc: pacify the Tiny C Compiler
204 	* src/graphviz.c (conclude_red): Remove a useless return.
205 
206 2012-12-05  Theophile Ranquet  <ranquet@lrde.epita.fr>
207 
208 	cpp: make the check of Flex version portable
209 	This was problematic with tcc 0.9.25
210 
211 	* src/flex-scanner.h (FLEX_VERSION_GT): Rewrite and rename as...
212 	(FLEX_VERSION): This.
213 
214 2012-12-05  Theophile Ranquet  <ranquet@lrde.epita.fr>
215 
216 	misc: require getline
217 	* bootstrap.conf: Here, used by src/location.c.
218 	* src/getargs.c (long_options): Rename --flags to --feature.
219 
220 2012-12-05  Akim Demaille  <akim@lrde.epita.fr>
221 
222 	c++: support wide strings for file names
223 	Reported by Mark Boyall.
224 	http://lists.gnu.org/archive/html/help-bison/2011-08/msg00002.html
225 
226 	* data/location.cc (operator<<): Be templated on the type of
227 	output stream.
228 	* tests/headers.at (Several parsers): Adjust.
229 
230 2012-12-05  Theophile Ranquet  <ranquet@lrde.epita.fr>
231 
232 	doc: document carets
233 	* NEWS: Announce it.
234 	* doc/bison.texi (Bison Options):  Here.
235 
236 2012-12-05  Theophile Ranquet  <ranquet@lrde.epita.fr>
237 
238 	tests: enhance existing tests with carets
239 	* tests/actions.at: Unset value.
240 	* tests/conflicts.at: Rule useless due to conflicts.
241 	* tests/input.at: Missing terminator, unexpected end of file, command line
242 	redefinition of variable.
243 	* tests/named-refs.at: Many errors.
244 	* tests/reduce.at: Useless nonterminals and rules.
245 	* tests/regression.at: Large token.
246 
247 2012-12-05  Theophile Ranquet  <ranquet@lrde.epita.fr>
248 
249 	errors: show carets
250 	* src/locations.c (caret_info): New, persistant information useful
251 	for...
252 	(location_caret): New, print a caret.
253 	(cleanup_caret): Release caret_info cleanly, call it...
254 	* src/main.c (main): Here.
255 	* src/complain.c (error_message): Call location_caret here.
256 
257 2012-12-05  Theophile Ranquet  <ranquet@lrde.epita.fr>
258 
259 	getargs: add support for --feature/-f
260 	Introduce -fdiagnostics-show-caret
261 
262 	* src/getargs.c (feature_flag): New global.
263 	* src/getargs.h (feature): New enum.
264 
265 2012-12-04  Theophile Ranquet  <ranquet@lrde.epita.fr>
266 
267 	getargs: don't label --language/-l as experimental
268 	* NEWS: Announce it.
269 	* doc/bison.texi, src/getargs.c (usage): Here.
270 
271 2012-12-03  Theophile Ranquet  <ranquet@lrde.epita.fr>
272 
273 	getargs: fix the locations of command-line input
274 	* src/getargs.c (command_line_location): Here.
275 	* tests/input.at: Adjust.
276 
277 2012-12-03  Theophile Ranquet  <ranquet@lrde.epita.fr>
278 
279 	errors: indent missing action code semicolon warning
280 	Also, remove a duplicate #define.
281 
282 	* src/scan-code.l (SC_RULE_ACTION): Here.
283 	* tests/actions.at: Adjust.
284 
285 2012-12-03  Akim Demaille  <akim@lrde.epita.fr>
286 
287 	parser: accept #line NUM
288 	* src/scan-gram.l (scanner): Accept '#line NUM'.
289 	(handle_syncline): Adjust to the possible missing file name.
290 
291 2012-12-03  Akim Demaille  <akim@lrde.epita.fr>
292 
293 	m4: use a safer pattern to enable/disable output
294 	Work on some other areas of Bison revealed that some macros expanded
295 	to be expanded only once were actually expanded several times.  This
296 	was due to the fact that changecom was not properly restored each
297 	time, and macro names appearing in comments were then expanded.
298 
299 	Introduce begin/end macros which are easier to match that
300 	changecom()/changecom(#).
301 
302 	* data/bison.m4 (b4_output_begin, b4_output_end): New.
303 	* data/glr.c, data/glr.cc, data/lalr1.cc, data/lalr1.java,
304 	* data/location.cc, data/stack.hh, data/yacc.c:
305 	Use them.
306 
307 2012-12-03  Akim Demaille  <akim@lrde.epita.fr>
308 
309 	tests: beware of gnulib's need for config.h
310 	* tests/skeletons.at, tests/torture.at: Be sure to include config.h
311 	where appropriate.
312 
313 2012-11-30  Akim Demaille  <akim@lrde.epita.fr>
314 
315 	gnulib: update
316 	* lib/yyerror.c: Include config.h since the following stdio.h might be
317 	from gnulib.
318 
319 2012-11-30  Akim Demaille  <akim@lrde.epita.fr>
320 
321 	yacc.c, glr.c: check and fix the display of locations
322 	In some case, negative column number could be displayed.
323 	Make YY_LOCATION_PRINT similar to bison's own implementation of
324 	locations.  Since the macro is getting fat, make it a static
325 	function.
326 	Reported by Jonathan Fabrizio.
327 
328 	* data/c.m4 (yy_location_print_define): Improve the implementation,
329 	and generate the yy_location_print_ function.
330 	Adjust YY_LOCATION_PRINT.
331 	* tests/actions.at (Location Print): New tests.
332 
333 2012-11-30  Akim Demaille  <akim@lrde.epita.fr>
334 
335 	formatting changes
336 	* data/c.m4: Fix comments, put macros in a more natural order.
337 	Space changes (from M-x whitespace-cleanup).
338 	* src/location.c: Fix spaces.
339 	* tests/actions.at: Space changes.
340 
341 2012-11-30  Akim Demaille  <akim@lrde.epita.fr>
342 
343 	glr.c: remove stray macro
344 	* data/glr.c (YYOPTIONAL_LOC): Remove, unused since commit
345 	769a8ef9bcb5e14d0be9d0869f5dca20ab093930.
346 
347 2012-11-29  Akim Demaille  <akim@lrde.epita.fr>
348 
349 	doc: minor fixes
350 	* doc/bison.texi: Use stderr for error messages.
351 	Meta-variables are usually spelled in lower case.
352 	Use @code for function names.
353 
354 2012-11-29  Akim Demaille  <akim@lrde.epita.fr>
355 
356 	doc: improve the index
357 	* doc/bison.texi: Fix uses of "deffn" so that the arguments of the
358 	directives do not show in the index.
359 	Remove a duplicate entry for api.pure.
360 
361 2012-11-29  Theophile Ranquet  <ranquet@lrde.epita.fr>
362 
363 	doc: introduce api.pure full, rearrange some examples
364 	* NEWS: Add entry.
365 	* doc/bison.texi (%define Summary): Show the old Yacc behaviour.
366 	(Parser Function): Move parse-param examples here.
367 	(Pure Calling): Remove parse-param examples.
368 	(Error Reporting): Don't show the old behavior, stick to 'full'.
369 
370 2012-11-29  Theophile Ranquet  <ranquet@lrde.epita.fr>
371 
372 	yacc.c: support "%define api.pure full"
373 	This makes the interface for yyerror() pure without the need for a spurious
374 	parse_param.
375 
376 	* data/yacc.c (b4_pure_if, b4_pure_flag): New definition, accept three states.
377 	(b4_yacc_pure_if): Rename as...
378 	(b4_yyerror_arg_loc_if): This, and use b4_pure_flag.
379 	* tests/actions.at (%define api.pure): Modernize.
380 	* test/calc.at (Simple LALR Calculator): Modernize.
381 	* tests/local.at (AT_YYERROR_ARG_LOC_IF): Adjust.
382 
383 2012-11-26  Theophile Ranquet  <ranquet@lrde.epita.fr>
384 
385 	local.at: improvements
386 	* tests/local.at (AT_YYERROR_FORMALS): Make llocp const.
387 	(AT_PURE_AND_LOC_IF, AT_GLR_OR_PARAM_IF): Remove, expand...
388 	(AT_YYERROR_ARG_LOC_IF): Here, and use m4_join for readability.
389 
390 2012-11-26  Akim Demaille  <akim@lrde.epita.fr>
391 
392 	Merge remote-tracking branch 'origin/branch-2.6' into maint
393 	* origin/branch-2.6:
394 	  yacc.c: always initialize yylloc
395 	  doc: one of the fixes for an ambiguous grammar was ambiguous too
396 	  doc: fix the dangling else with precedence directives
397 	  doc: prefer "token" to TOKEN
398 	  doc: formatting changes
399 
400 2012-11-23  Theophile Ranquet  <ranquet@lrde.epita.fr>
401 
402 	yacc.c: always initialize yylloc
403 	The initial location might be used if the parser starts by an empty
404 	reduction, so really ensure proper initialization of the initial
405 	location.  The previous approach fails for PostgreSQL, which uses
406 	Reported by Peter Eisentraut.
407 	http://lists.gnu.org/archive/html/bug-bison/2012-11/msg00023.html
408 	With help from Théophile Ranquet.
409 
410 	* data/yacc.c (b4_declare_scanner_communication_variables): Be sure
411 	to initialize yylloc, even when its structure is unknown.
412 	(yyparse): Simplify the call to b4_dollar_pushdef.
413 	* tests/actions.at (Initial location): Check of similar pattern
414 	as in the case of PostgreSQL.
415 
416 2012-11-23  Akim Demaille  <akim@lrde.epita.fr>
417 
418 	scanner: issue a single error for groups of invalid characters
419 	* src/scan-gram.l: Scan groups of invalid characters together.
420 	* tests/input.at, tests/named-refs.at: Adjust.
421 
422 2012-11-23  Akim Demaille  <akim@lrde.epita.fr>
423 
424 	tests: formatting changes
425 	* tests/named-refs.at: Here.
426 
427 2012-11-23  Akim Demaille  <akim@lrde.epita.fr>
428 
429 	doc: one of the fixes for an ambiguous grammar was ambiguous too
430 	Reported by Аскар Сафин.
431 	http://lists.gnu.org/archive/html/bug-bison/2012-11/msg00024.html
432 
433 	* doc/bison.texi (Reduce/Reduce): Fix the resulting ambiguity using
434 	precedence/associativity directives.
435 
436 2012-11-22  Akim Demaille  <akim@lrde.epita.fr>
437 
438 	doc: fix the dangling else with precedence directives
439 	* doc/bison.texi (Non Operators): New node.
440 	(Shift/Reduce): Point to it.
441 	Don't promote "%expect n" too much.
442 
443 2012-11-22  Akim Demaille  <akim@lrde.epita.fr>
444 
445 	doc: prefer "token" to TOKEN
446 	This is more readable in short examples.
447 
448 	* doc/bison.texi (Shift/Reduce): here.
449 	Make "win" and "lose" action more alike.
450 
451 2012-11-22  Akim Demaille  <akim@lrde.epita.fr>
452 
453 	doc: formatting changes
454 	* doc/bison.texi: Use @group.
455 
456 2012-11-14  Akim Demaille  <akim@lrde.epita.fr>
457 
458 	scanner: use explicit "ignore" statements
459 	* src/scan-gram.l: here.
460 
461 2012-11-12  Theophile Ranquet  <ranquet@lrde.epita.fr>
462 
463 	tests: close files in glr-regression
464 	* tests/glr-regression.at: Here.
465 
466 2012-11-12  Theophile Ranquet  <ranquet@lrde.epita.fr>
467 
468 	xml: match DOT output and xml2dot.xsl processing
469 	Make the DOT produced by XSLT processing equivalent to the one made with the
470 	--graph option.
471 
472 	* data/xslt/xml2dot.xsl: Stylistic changes, and add support for reductions.
473 	* doc/bison.texi (Xml): Update.
474 	* src/graphviz.c (conclude_red): Minor stylistic changes to DOT internals.
475 	(output_red): Swap enabled and disabled reductions output, for coherence
476 	with XSLT output.
477 	* src/print_graph.c (print_core): Minor stylistic change to States' output.
478 	(print_actions): Swap order of output for reductions and transitions.
479 	* tests/local.at (AT_BISON_CHECK_XML): Ignore differences in order.
480 	* tests/output.at: Adjust to changes in DOT internals.
481 
482 2012-11-12  Theophile Ranquet  <ranquet@lrde.epita.fr>
483 
484 	xml: factor xslt space template
485 	* data/xslt/bison.xsl (space): New, import from...
486 	* data/xslt/xml2text.xsl: Here.
487 
488 2012-11-12  Theophile Ranquet  <ranquet@lrde.epita.fr>
489 
490 	graph: fix a memory leak
491 	* src/graphviz.c (output_red): Here.
492 
493 2012-11-12  Theophile Ranquet  <ranquet@lrde.epita.fr>
494 
495 	xml: documentation
496 	The XML output combined with the XSL Transformations provided in data/ are
497 	incredibly useful, they should be documented.
498 
499 	* doc/bison.texi (Xml): New node.
500 
501 2012-11-12  Theophile Ranquet  <ranquet@lrde.epita.fr>
502 
503 	output: capitalize State
504 	* src/print.c (print_state): Here.
505 	* tests/conflicts.at, tests/existing.at, tests/local.at, tests/reduce.at,
506 	tests/regression.at, tests/sets.at: Adjust.
507 
508 2012-11-12  Akim Demaille  <akim@lrde.epita.fr>
509 
510 	maint: address syntax-check errors.
511 	* cfg.mk: Ignore the "error" call in tests/c++.at, it is not to be
512 	translated.
513 	* doc/bison.texi: Fix incorrect @pxref use.
514 	* po/POTFILES.in: Add missing file.
515 	* src/print_graph.c: Remove useless include.
516 
517 2012-11-12  Akim Demaille  <akim@lrde.epita.fr>
518 
519 	tests: use valgrind where appropriate
520 	Reported by Théophile Ranquet.
521 
522 	* cfg.mk (sc_at_parser_check): New.
523 	* tests/c++.at: Fix use of AT_CHECK vs. AT_PARSER_CHECK.
524 
525 2012-11-12  Akim Demaille  <akim@lrde.epita.fr>
526 
527 	Merge remote-tracking branch 'origin/branch-2.6' into maint
528 	* origin/branch-2.6:
529 	  tests: use valgrind where appropriate
530 	  tests: don't expect $EGREP to support -w
531 
532 2012-11-10  Akim Demaille  <akim@lrde.epita.fr>
533 
534 	tests: use valgrind where appropriate
535 	Reported by Théophile Ranquet.
536 
537 	* tests/glr-regression.at: Rewrite some test cases so that AT_PARSER_CHECK,
538 	which runs valgrind, is exposed with the parser, not with "echo".
539 	* tests/local.at, tests/regression.at, tests/headers.at:
540 	Use AT_PARSER_CHECK for generated parsers.
541 
542 2012-11-08  Akim Demaille  <akim@lrde.epita.fr>
543 
544 	tests: don't expect $EGREP to support -w
545 	Does not work on Solaris 10.  Reported by Dennis Clarke.
546 	http://lists.gnu.org/archive/html/bug-bison/2012-11/msg00009.html
547 	* tests/headers.at (Several parsers): Use Perl instead.
548 	While at it, run it only once, on all the generated headers.
549 	Adjust to YY_NULL be defined in position.hh.
550 
551 2012-11-08  Akim Demaille  <akim@lrde.epita.fr>
552 
553 	tests: more possible error compiler messages for "#error"
554 	* tests/synclines.at (AT_SYNCLINES_COMPILE): Adjust for Clang.
555 	Verified with GCC 4.0, 4.2 to 4.8, and Clang 2.9, 3.2: none skip.
556 
557 2012-11-08  Akim Demaille  <akim@lrde.epita.fr>
558 
559 	regen
560 
561 2012-11-08  Akim Demaille  <akim@lrde.epita.fr>
562 
563 	Merge branch 'branch-2.6' into maint
564 	* origin/branch-2.6:
565 	  maint: post-release administrivia
566 	  version 2.6.5
567 	  regen
568 	  tests: syntax-check
569 	  tests: beware of compilers that do not support POSIXLY_CORRECT
570 	  gnulib: update
571 
572 2012-11-07  Akim Demaille  <akim@lrde.epita.fr>
573 
574 	maint: post-release administrivia
575 	* NEWS: Add header line for next release.
576 	* .prev-version: Record previous version.
577 	* cfg.mk (old_NEWS_hash): Auto-update.
578 
579 2012-11-07  Akim Demaille  <akim@lrde.epita.fr>
580 
581 	version 2.6.5
582 	* NEWS: Record release date.
583 
584 2012-11-07  Akim Demaille  <akim@lrde.epita.fr>
585 
586 	regen
587 
588 2012-11-07  Akim Demaille  <akim@lrde.epita.fr>
589 
590 	tests: syntax-check
591 	* tests/actions.at: Fix typo.
592 
593 2012-11-07  Akim Demaille  <akim@lrde.epita.fr>
594 
595 	tests: beware of compilers that do not support POSIXLY_CORRECT
596 	Running "maintainer-release-check" on OS X with Clang 2.9 fails,
597 	because "clang-mp-2.9 -o test -g test.c" launches "/usr/bin/dsymutil
598 	test -o test.dSYM" which fails with "error: unable to open executable
599 	'-o'".
600 
601 	* m4/c-working.m4 (BISON_CHECK_WITH_POSIXLY_CORRECT)
602 	(BISON_C_COMPILER_POSIXLY_CORRECT): New.
603 	* configure.ac: Use the latter.
604 	* tests/atlocal.in (POSIXLY_CORRECT_IS_EXPORTED): New.
605 	* tests/local.at (AT_BISON_CHECK_WARNINGS_): Use it instead of computing its
606 	value each time.
607 	(AT_QUELL_VALGRIND): Skip tests that cannot work because of compilers
608 	that do not support POSIXLY_CORRECT.
609 
610 2012-11-07  Akim Demaille  <akim@lrde.epita.fr>
611 
612 	gnulib: update
613 
614 2012-11-06  Akim Demaille  <akim@lrde.epita.fr>
615 
616 	Merge branch 'branch-2.6' into maint
617 	* origin/branch-2.6: (24 commits)
618 	  tests: calc: modernize the use of locations
619 	  tests: remove useless location initializations
620 	  lalr1.cc: always initialize yylval.
621 	  tests: check that C and C++ objects can be linked together.
622 	  yacc.c: also disable -Wuninitialized.
623 	  glr.cc, yacc.c: initialize yylloc properly
624 	  yacc.c, glr.c: a better YY_LOCATION_PRINT
625 	  yacc.c: simplify initialization
626 	  doc: formatting changes
627 	  c++: fix position operator signatures
628 	  tests: remove useless location initialization.
629 	  tests: fix locations in C
630 	  tests: handle %parse-param in the generated yyerror
631 	  tests: simplifications
632 	  grammars: fix display of nul character in error message
633 	  tests: sort
634 	  tests: cosmetic changes
635 	  comment changes
636 	  autoconf: update
637 	  gnulib: update
638 	  ...
639 
640 2012-11-06  Akim Demaille  <akim@lrde.epita.fr>
641 
642 	tests: calc: modernize the use of locations
643 	* tests/calc.at: Don't initialize the location, let the parser
644 	do it.
645 	Use a $printer.
646 	Change some testing input to be easier to distinguish (instead of always
647 	"0 0" for instance).
648 
649 2012-11-06  Akim Demaille  <akim@lrde.epita.fr>
650 
651 	tests: remove useless location initializations
652 	* tests/actions.at, tests/calc.at: here.
653 
654 2012-11-06  Akim Demaille  <akim@lrde.epita.fr>
655 
656 	lalr1.cc: always initialize yylval.
657 	* data/lalr1.cc: here.
658 
659 2012-11-06  Akim Demaille  <akim@lrde.epita.fr>
660 
661 	tests: check that C and C++ objects can be linked together.
662 	* tests/local.at (AT_SKIP_IF_CANNOT_LINK_C_AND_CXX): New.
663 	* tests/headers.at (Several parsers): Use it.
664 
665 2012-11-06  Akim Demaille  <akim@lrde.epita.fr>
666 
667 	yacc.c: also disable -Wuninitialized.
668 	* data/yacc.c (YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN): For some versions
669 	of GCC, -Wmaybe-uninitialized alone does not suffice.
670 
671 2012-11-06  Akim Demaille  <akim@lrde.epita.fr>
672 
673 	glr.cc, yacc.c: initialize yylloc properly
674 	There are several issues to address here.  One is that yylloc should
675 	be initialized when possible.  Another is that the push parser needs
676 	to update yypushed_loc when the user modified it.  And if the parser
677 	starts by a reduction of an empty, it uses the first location on the
678 	stack, which, therefore, must also be initialized to this initial
679 	location.
680 
681 	This is getting complex, especially since because initializing a
682 	global (impure interface) is different from initializing a local
683 	variable.  To simplify, the local yylloc is not initialized during its
684 	definition.
685 
686 	* data/c.m4 (b4_yyloc_default_define): Replace by...
687 	(b4_yyloc_default): this.
688 	Adjust dependencies.
689 	* data/glr.cc: Initialize yylloc.
690 	* data/yacc.c (b4_declare_scanner_communication_variables):
691 	Initialize yylloc during its definition.
692 	Don't define yyloc_default.
693 	(yypush_parse): The location formal is not const, as we might
694 	initialize it.
695 	(yyparse): Define yyloc_default.
696 	Use it before running the user initial action.
697 	Possibly update the first location on the stack, and the pushed
698 	location after the user initial action.
699 	* tests/actions.at (Initial locations): Check that the initial
700 	location is correct.
701 
702 2012-11-06  Akim Demaille  <akim@lrde.epita.fr>
703 
704 	yacc.c, glr.c: a better YY_LOCATION_PRINT
705 	* data/c.m4 (b4_yy_location_print_define): New.
706 	Now issues "short" locations, e.g., "1.1" instead of "1.1-1.1".
707 	Was initially a function, but then we face "static but unused"
708 	warnings.
709 	Simpler as a macro.
710 	* tests/local.at, data/glr.c, data/yacc.c: Use it instead of duplicating.
711 	* tests/actions.at: Adjust expectations.
712 
713 2012-11-06  Akim Demaille  <akim@lrde.epita.fr>
714 
715 	yacc.c: simplify initialization
716 	* data/yacc.c: Fuse the initializations of yyssp, yyss and the like.
717 	Remove an obsolete comment: we do initialize these initial stack
718 	members (in some cases).
719 
720 2012-11-05  Akim Demaille  <akim@lrde.epita.fr>
721 
722 	doc: formatting changes
723 	* doc/bison.texi: In a pointer type.
724 
725 2012-11-05  Akim Demaille  <akim@lrde.epita.fr>
726 
727 	c++: fix position operator signatures
728 	* data/location.cc (operator+=, operator-=): Remove const from return
729 	type.
730 
731 2012-11-05  Akim Demaille  <akim@lrde.epita.fr>
732 
733 	tests: remove useless location initialization.
734 	* tests/glr-regression.at: here.
735 	glr.c does initialize yylloc.
736 
737 2012-11-05  Akim Demaille  <akim@lrde.epita.fr>
738 
739 	tests: fix locations in C
740 	* tests/local.at (AT_YYERROR_DEFINE): Don't display the end of the location
741 	if it is not after its beginning.
742 	* tests/actions.at, tests/cxx-type.at: Adjust the expected output.
743 
744 2012-11-05  Akim Demaille  <akim@lrde.epita.fr>
745 
746 	tests: handle %parse-param in the generated yyerror
747 	* tests/local.at (AT_PARSE_PARAMS): New.
748 	(AT_YYERROR_FORMALS, AT_YYERROR_DEFINE): Use it to add the parse-param
749 	to yyerror.
750 	* tests/calc.at, tests/regression.at: Use AT_YYERROR_DEFINE and
751 	AT_YYERROR_DECLARE, now that they handle properly the parse-params.
752 	Be sure to let AT_BISON_OPTION_PUSHDEFS now what parse-params are used.
753 
754 2012-11-05  Akim Demaille  <akim@lrde.epita.fr>
755 
756 	tests: simplifications
757 	* tests/actions.at (Exotic Dollars): Formatting changes.
758 	Use AT_FULL_COMPILE.
759 	(AT_CHECK_PRINTER_AND_DESTRUCTOR): Remove useless initialization of @$.
760 
761 2012-11-01  Akim Demaille  <akim@lrde.epita.fr>
762 
763 	grammars: fix display of nul character in error message
764 	Reported by Marc Mendiola.
765 	http://lists.gnu.org/archive/html/help-bison/2012-10/msg00017.html
766 
767 	* gnulib: Update to get quote_mem.
768 	* src/scan-gram.l: Use it.
769 	* tests/input.at (Invalid inputs): Additional checks.
770 	* tests/named-refs.at: Likewise.
771 
772 2012-11-01  Akim Demaille  <akim@lrde.epita.fr>
773 
774 	tests: sort
775 	* tests/regression.at (Invalid inputs, Invalid inputs with {}): Move to...
776 	* tests/input.at: here, for consistency.
777 
778 2012-11-01  Akim Demaille  <akim@lrde.epita.fr>
779 
780 	tests: cosmetic changes
781 	* tests/actions.at (AT_CHECK_PRINTER_AND_DESTRUCTOR): Improve the
782 	displayed title.
783 
784 2012-11-01  Akim Demaille  <akim@lrde.epita.fr>
785 
786 	comment changes
787 	* data/lalr1.cc: here.
788 
789 2012-11-01  Akim Demaille  <akim@lrde.epita.fr>
790 
791 	autoconf: update
792 	There are comment changes only in the files we use.
793 
794 2012-11-01  Akim Demaille  <akim@lrde.epita.fr>
795 
796 	gnulib: update
797 
798 2012-10-28  Akim Demaille  <akim@lrde.epita.fr>
799 
800 	regen
801 
802 2012-10-28  Akim Demaille  <akim@lrde.epita.fr>
803 
804 	yacc.c: initialize yylval and yylloc.
805 	When generating a pure push parser, the initialization of yylval and
806 	yylloc may not be visible to the compiler.  With warnings enabled, GCC
807 	4.3.6, 4.4.7, 4.5.4, and 4.6.3 report uninitialized uses of
808 	yylval/yylloc.  Using local pragmas to disable these warnings is not
809 	supported before 4.6, and 4.6 does not support it properly.  So
810 	initialize yylval and yylloc at their definition.  Reported by Peter
811 	Simons.  See
812 	http://lists.gnu.org/archive/html/bison-patches/2012-10/msg00133.html
813 
814 	* data/c.m4 (b4_yyloc_default_define): New.
815 	* data/yacc.c: Use it when locations are requested.
816 	(YYLVAL_INITIALIZE): Replace by...
817 	(YY_INITIAL_VALUE): this.
818 	(yyparse): Initialize yylloc and yylval.
819 	Therefore, remove the initialization of yylloc's field.
820 	* data/glr.c: Likewise.
821 
822 2012-10-26  Akim Demaille  <akim@lrde.epita.fr>
823 
824 	Merge branch 'branch-2.6' into maint
825 	* origin/branch-2.6:
826 	  regen
827 	  yacc.c: do not define location support when not using locations
828 	  maint: be compilable with GCC 4.0
829 	  tests: address a warning from GCC 4.4
830 	  tests: don't use options that Clang does not support
831 	  tests: restore the tests on -Werror
832 	  regen
833 	  parse-gram: update the Bison interface
834 	  fix comment
835 
836 2012-10-26  Akim Demaille  <akim@lrde.epita.fr>
837 
838 	doc: minor style change
839 	* doc/figs/example-reduce.txt: here.
840 
841 2012-10-26  Akim Demaille  <akim@lrde.epita.fr>
842 
843 	maint: use gendocs's new -I option
844 	* gnulib: Update gendocs.
845 	* cfg.mk (gendocs_options_): New.
846 
847 2012-10-26  Akim Demaille  <akim@lrde.epita.fr>
848 
849 	regen
850 
851 2012-10-26  Akim Demaille  <akim@lrde.epita.fr>
852 
853 	yacc.c: don't use _Pragma GCC diagnostic with 4.6
854 	Reported by Peter Simons.
855 	http://lists.gnu.org/archive/html/bug-bison/2012-10/msg00033.html
856 
857 	* data/yacc.c (b4_declare_scanner_communication_variables): 4.7
858 	seems fine though.
859 
860 2012-10-26  Akim Demaille  <akim@lrde.epita.fr>
861 
862 	regen
863 
864 2012-10-26  Akim Demaille  <akim@lrde.epita.fr>
865 
866 	yacc.c: do not define location support when not using locations
867 	* data/yacc.c (YYLLOC_DEFAULT, YYRHSLOC): Don't define when not
868 	using locations.
869 
870 2012-10-26  Akim Demaille  <akim@lrde.epita.fr>
871 
872 	maint: be compilable with GCC 4.0
873 	The "shadows a global declaration" warning in GCC 4.0 was a bit
874 	annoying.  It does not like that a type name be used in a prototype of
875 	a function (not the implementation, just the declaration):
876 
877 	  In file included from src/LR0.c:38:
878 	  src/reader.h:56: warning: declaration of 'named_ref' shadows a
879 	                            global declaration
880 	  src/named-ref.h:35: warning: shadowed declaration is here
881 
882 	It does not like either when a global variable name is used in a
883 	prototype.  Flex 2.5.37 generates this prototype:
884 
885 	  void gram_set_debug (int debug_flag  );
886 
887 	* src/getargs.h, src/getargs.c (debug_flag): Rename as...
888 	(debug): this.
889 	Adjust dependencies.
890 	* src/reader.h: Don't use "named_ref" as a formal argument name.
891 
892 2012-10-25  Akim Demaille  <akim@lrde.epita.fr>
893 
894 	tests: address a warning from GCC 4.4
895 	236. torture.at:465: testing Exploding the Stack Size with Alloca ...
896 	../../../tests/torture.at:474: bison -o input.c input.y
897 	../../../tests/torture.at:474: $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS
898 	stderr:
899 	cc1: warnings being treated as errors
900 	input.y: In function 'main':
901 	input.y:60: error: 'status' may be used uninitialized in this function
902 
903 	* tests/torture.at (AT_DATA_STACK_TORTURE): Initial status to avoid
904 	the previous error.
905 
906 2012-10-25  Akim Demaille  <akim@lrde.epita.fr>
907 
908 	tests: don't use options that Clang does not support
909 	* configure.ac (WARN_CFLAGS, WARN_CXXFLAGS): Do not include options
910 	that Clang does not support.
911 
912 2012-10-25  Akim Demaille  <akim@lrde.epita.fr>
913 
914 	tests: restore the tests on -Werror
915 	When run as /bin/sh, Bash sets the shell variable POSIXLY_CORRECT to
916 	y.  The test suite checks for the envvar POSIXLY_CORRECT to turn of
917 	some tests not supported in POSIX mode.  Restore these tests.
918 
919 	Reported by the Hydra build farm, from Rob Vermaas.
920 
921 	* tests/local.at (AT_BISON_CHECK_WARNINGS_): Check the envvar
922 	POSIXLY_CORRECT, not the shell variable.
923 
924 2012-10-25  Akim Demaille  <akim@lrde.epita.fr>
925 
926 	regen
927 
928 2012-10-25  Akim Demaille  <akim@lrde.epita.fr>
929 
930 	parse-gram: update the Bison interface
931 	* src/parse-gram.y (%pure-parser, %name-prefix): Replace with...
932 	(%define api.pure, %define api.prefix)
933 	* src/location.h, src/scan-gram.h: Adjust to api.prefix.
934 
935 2012-10-25  Akim Demaille  <akim@lrde.epita.fr>
936 
937 	fix comment
938 	* data/c.m4 (b4_YYDEBUG_define): here.
939 
940 2012-10-23  Akim Demaille  <akim@lrde.epita.fr>
941 
942 	Merge branch 'branch-2.6' into maint
943 	* origin/branch-2.6:
944 	  maint: post-release administrivia
945 	  version 2.6.4
946 	  regen
947 	  2.6.4: botched 2.6.3
948 
949 2012-10-23  Akim Demaille  <akim@lrde.epita.fr>
950 
951 	maint: post-release administrivia
952 	* NEWS: Add header line for next release.
953 	* .prev-version: Record previous version.
954 	* cfg.mk (old_NEWS_hash): Auto-update.
955 
956 2012-10-23  Akim Demaille  <akim@lrde.epita.fr>
957 
958 	version 2.6.4
959 	* NEWS: Record release date.
960 
961 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
962 
963 	regen
964 
965 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
966 
967 	2.6.4: botched 2.6.3
968 	* NEWS: here.
969 
970 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
971 
972 	Merge branch '2.6.3' into maint
973 	* 2.6.3: (22 commits)
974 	  maint: post-release administrivia
975 	  version 2.6.3
976 	  gnulib: update
977 	  tests: check %no-lines
978 	  NEWS: warnings with clang
979 	  warnings: avoid warnings from clang
980 	  tests: no longer disable -O compiler options
981 	  yacc.c: initialize yylval in pure-parser mode
982 	  skeletons: style changes
983 	  tests: minor improvements
984 	  tests: use $PERL instead of perl
985 	  build: look for Perl in configure.
986 	  tests: fix sed portability issues
987 	  tests: diff -u is not portable
988 	  maint: word changes
989 	  lalr1.cc: fix test suite portability
990 	  maint: fix an erroneous include
991 	  tests: check that headers are self contained
992 	  doc: add missing documentation for --report
993 	  headers: move CPP guards into YY_*_INCLUDED to avoid collisions
994 	  ...
995 
996 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
997 
998 	maint: post-release administrivia
999 	* NEWS: Add header line for next release.
1000 	* .prev-version: Record previous version.
1001 	* cfg.mk (old_NEWS_hash): Auto-update.
1002 
1003 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1004 
1005 	version 2.6.3
1006 	* NEWS: Record release date.
1007 
1008 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1009 
1010 	gnulib: update
1011 
1012 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1013 
1014 	tests: check %no-lines
1015 	* tests/synclines.at: here.
1016 
1017 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1018 
1019 	NEWS: warnings with clang
1020 	* NEWS: here.
1021 
1022 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1023 
1024 	warnings: avoid warnings from clang
1025 	Fix the following warning
1026 
1027 	  parse-gram.c:2078:14: error: equality comparison with extraneous parentheses
1028 	                        [-Werror,-Wparentheses-equality]
1029 	    if (((yyn) == (-91)))
1030 	         ~~~~~~^~~~~~~~
1031 	  parse-gram.c:2078:14: note: remove extraneous parentheses around the
1032 	                        comparison to silence this warning
1033 	    if (((yyn) == (-91)))
1034 	        ~      ^       ~
1035 	  parse-gram.c:2078:14: note: use '=' to turn this equality comparison into
1036 	                        an assignment
1037 	    if (((yyn) == (-91)))
1038 	               ^~
1039 	               =
1040 	  1 error generated.
1041 
1042 	and the following one:
1043 
1044 	  input.cc:740:1: error: function declared 'noreturn' should not return
1045 	                         [-Werror,-Winvalid-noreturn]
1046 	  static void yyMemoryExhausted (yyGLRStack* yystackp)
1047 	    __attribute__ ((__noreturn__));
1048 	  static void
1049 	  yyMemoryExhausted (yyGLRStack* yystackp)
1050 	  {
1051 	    YYLONGJMP (yystackp->yyexception_buffer, 2);
1052 	  }
1053 	  ^
1054 	  1 warning and 1 error generated.
1055 
1056 	This is Apple clang version 3.1 (tags/Apple/clang-318.0.61).
1057 
1058 	* data/c.m4 (b4_table_value_equals): Use (!!(A == B)) instead of (A == B)
1059 	to avoid this warning.
1060 	Any reasonable compiler should generate the same code.
1061 	* src/uniqstr.h (UNIQSTR_EQ): Likewise.
1062 	* data/glr.c (LONGJMP): abort after longjmp to pacify clang.
1063 
1064 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1065 
1066 	tests: no longer disable -O compiler options
1067 	Tests are running without -O since
1068 	f377f69fec28013c79db4efe12bbb9d48987fb2c because some warnings (about
1069 	yylval not being initialized) show only when GCC is given -O2.  The
1070 	previous patch fixes the warnings. Run the test suite with compiler
1071 	options unmodified.
1072 
1073 	* tests/atlocal.in (O0CFLAGS, O0CXXFLAGS): Remove, use CFLAGS and
1074 	CXXFLAGS.
1075 
1076 2012-10-22  Paul Eggert  <eggert@cs.ucla.edu>
1077 
1078 	yacc.c: initialize yylval in pure-parser mode
1079 	See http://lists.gnu.org/archive/html/bison-patches/2012-08/msg00024.html
1080 	(spreading over September and October).
1081 
1082 	* data/yacc.c (YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN)
1083 	(YY_IGNORE_MAYBE_UNINITIALIZED_END, YYLVAL_INITIALIZE):
1084 	New macros.  Use them to suppress an unwanted GCC diagnostic.
1085 
1086 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1087 
1088 	skeletons: style changes
1089 	* data/yacc.c, data/glr.c: Prefer Title case for (CPP) macro arguments.
1090 
1091 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1092 
1093 	tests: minor improvements
1094 	* tests/c++.at: Space changes.
1095 	Use AT_YYERROR_DEFINE.
1096 	* tests/local.at (AT_YYERROR_DEFINE): Issue errors on unknown languages.
1097 
1098 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1099 
1100 	tests: use $PERL instead of perl
1101 	* tests/atlocal.in (PERL): New.
1102 	Sort.
1103 	* tests/calc.at, tests/input.at, tests/local.at, tests/regression.at,
1104 	* tests/skeletons.at, tests/synclines.at, tests/torture.at: here.
1105 
1106 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1107 
1108 	build: look for Perl in configure.
1109 	Bison uses "/usr/bin/perl" or "perl" in several places, and it does
1110 	not appear to be a problem.  But, at least to make it simpler to
1111 	change PERL on the make command line, check for perl in configure.
1112 
1113 	* configure.ac (PERL): New.
1114 	* doc/Doxyfile.in, doc/Makefile.am, tests/bison.in: Use it.
1115 
1116 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1117 
1118 	tests: fix sed portability issues
1119 	Reported by Didier Godefroy,
1120 	<http://lists.gnu.org/archive/html/bug-bison/2012-10/msg00005.html>.
1121 
1122 	* tests/calc.at (AT_CHECK_SPACES): Use Perl.
1123 
1124 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1125 
1126 	tests: diff -u is not portable
1127 	Reported by Didier Godefroy
1128 	<http://lists.gnu.org/archive/html/bug-bison/2012-10/msg00006.html>.
1129 
1130 	* tests/existing.at (AT_LALR1_DIFF_CHECK): Skip if diff -u does not
1131 	work.
1132 
1133 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1134 
1135 	maint: word changes
1136 	* README-hacking (Typical errors): Improve wording.
1137 
1138 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1139 
1140 	lalr1.cc: fix test suite portability
1141 	Reported by Rob Vermaas' Hydra build farm on x86_64-darwin 10.2.0 with
1142 	G++ 4.6.3.
1143 
1144 	* tests/headers.at (Several parsers): Include AT_DATA_SOURCE_PROLOGUE
1145 	in the files to compile.
1146 	* data/location.cc: Do not include twice string and iostream (once
1147 	by position.hh, and then by location.hh).
1148 	* README-hacking (Typical errors): Some hints for other maintainers.
1149 
1150 2012-10-22  Theophile Ranquet  <theophile.ranquet@gmail.com>
1151 
1152 	maint: fix an erroneous include
1153 	This fixes test 130 (Several parsers).
1154 
1155 	* data/location.cc: Include <iostream> rather than <iosfwd> since
1156 	we really need << on strings for instance.
1157 	* NEWS: Document this.
1158 
1159 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1160 
1161 	tests: check that headers are self contained
1162 	Reported by Alexandre Duret-Lutz.
1163 
1164 	* tests/headers.at (Several parsers): here.
1165 
1166 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1167 
1168 	doc: add missing documentation for --report
1169 	* doc/bison.texi (Bison Options): Document --report's "solved", "all",
1170 	and "none".
1171 
1172 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1173 
1174 	headers: move CPP guards into YY_*_INCLUDED to avoid collisions
1175 	See <http://lists.gnu.org/archive/html/bug-bison/2012-09/msg00016.html>.
1176 
1177 	* data/c.m4 (b4_cpp_guard): Prepend YY_ and append _INCLUDED.
1178 	* tests/headers.at: Adjust.
1179 	* NEWS, doc/bison.texi: Document.
1180 
1181 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1182 
1183 	minor changes.
1184 	* NEWS: Word changes.
1185 	* doc/bison.texi: Spell check.
1186 	Fix minor issues.
1187 	* tests/headers.at: Comment and formatting changes.
1188 
1189 2012-10-22  Akim Demaille  <akim@lrde.epita.fr>
1190 
1191 	gnulib: update
1192 
1193 2012-10-19  Akim Demaille  <akim@lrde.epita.fr>
1194 
1195 	gnulib: update
1196 
1197 2012-10-19  Akim Demaille  <akim@lrde.epita.fr>
1198 
1199 	xml: slight improvement of the DOT output
1200 	This was completely forgotten...  Nothing about XML is actually
1201 	documented...
1202 
1203 	* data/xslt/xml2dot.xsl: Use boxes, and Courier font.
1204 
1205 2012-10-19  Akim Demaille  <akim@lrde.epita.fr>
1206 
1207 	maint: check for dot before using it
1208 	* configure.ac: here.
1209 	* doc/Makefile.am: Use $(DOT).
1210 	Ship the generated files, to spare the user the need for Graphviz.
1211 
1212 2012-10-18  Theophile Ranquet  <theophile.ranquet@gmail.com>
1213 
1214 	graphs: documentation
1215 	Note that 'make web-manual' fails.
1216 
1217 	* NEWS: Document these changes.
1218 	* doc/Makefile.am: Adjust to generate example files.
1219 	* doc/bison.texi: Add a Graphviz section after "Understanding::", the section
1220 	describing the .output file, because these are similar.
1221 	* doc/figs/example-reduce.dot, doc/figs/example-reduce.txt,
1222 	doc/figs/example-shift.dot, doc/figs/example-shift.txt: New, minimal
1223 	examples to illustrate the documentation.
1224 
1225 2012-10-18  Theophile Ranquet  <theophile.ranquet@gmail.com>
1226 
1227 	graphs: add tests, introducing -k graph
1228 	* tests/output.at (AT_TEST): New.
1229 	Use it to add 6 --graph tests.
1230 
1231 2012-10-18  Theophile Ranquet  <theophile.ranquet@gmail.com>
1232 
1233 	graphs: change the output format of the rules
1234 	Use something similar to the report file.
1235 
1236 	* src/print_graph.c (print_lhs): New, obstack equivalent of rule_lhs_print.
1237 	(print_core): Use here.
1238 
1239 2012-10-18  Theophile Ranquet  <theophile.ranquet@gmail.com>
1240 
1241 	graphs: style changes
1242 	* src/graphviz.c (start_graph): Use courier font.
1243 	(conclude_red): Use commas to separate attributes. Show the acceptation
1244 	as a special reduction, with a blue color and an "Acc" label. Show the
1245 	lookahead tokens between square brackets.
1246 	(output_red): No longer label default reductions.
1247 	* src/print_graph.c (print_core): Refactor spacing, and print an
1248 	additional space between a rule's rhs and its lookahead tokens. Also,
1249 	capitalize "State".
1250 	(print_actions): Style, move a declaration.
1251 
1252 2012-10-18  Theophile Ranquet  <theophile.ranquet@gmail.com>
1253 
1254 	graphs: address an issue with R/R conflicts
1255 	All disabled reductions should now be shown as such.
1256 
1257 	* src/graphviz.c (output_red): Here.
1258 	(conclude_red): New.
1259 
1260 2012-10-16  Akim Demaille  <akim@lrde.epita.fr>
1261 
1262 	java: fixes
1263 	* data/java.m4: Remove stray M4 characters.
1264 
1265 2012-10-12  Akim Demaille  <akim@lrde.epita.fr>
1266 
1267 	java: use api.location.type and api.position.type
1268 	* data/java.m4: here.
1269 	* NEWS, doc/bison.texi, tests/java.at: Adjust.
1270 
1271 2012-10-12  Akim Demaille  <akim@lrde.epita.fr>
1272 
1273 	tests: check %no-lines
1274 	* tests/synclines.at: here.
1275 
1276 2012-10-12  Akim Demaille  <akim@lrde.epita.fr>
1277 
1278 	tests: minor simplification
1279 	* tests/headers.at (Several parsers): Use *.y even for C++.
1280 
1281 2012-10-11  Akim Demaille  <akim@lrde.epita.fr>
1282 
1283 	graphs: stylistic changes.
1284 	* src/graphviz.c (output_red): Comment and formatting changes.
1285 
1286 2012-10-11  Theophile Ranquet  <ranquet@lrde.epita.fr>
1287 
1288 	graphs: minor style changes
1289 	* src/graphviz.c (output_red): Fix C90 issues.
1290 	Reduce variable scopes.
1291 
1292 2012-10-11  Theophile Ranquet  <ranquet@lrde.epita.fr>
1293 
1294 	graphs: show reductions
1295 	* src/graphviz.c (output_red): New, show reductions on the graph.
1296 	(no_reduce_bitset_init): New, initialize a bitset.
1297 	(print_token): New, print a lookahead token.
1298 	(escape): New, print "foo" as \"foo\" because Dot doesn't like quotes within
1299 	a label.
1300 
1301 	* src/graphviz.h : Adjust.
1302 	* src/print_graph.c (print_actions): Call output_red here.
1303 
1304 2012-10-11  Theophile Ranquet  <theophile.ranquet@gmail.com>
1305 
1306 	graphs: style: prefix state number with "state"
1307 	* src/print_graph.c (print_core): Here.
1308 
1309 2012-10-11  Theophile Ranquet  <ranquet@lrde.epita.fr>
1310 
1311 	graphs: style: use left justification for states
1312 	The label text of nodes is centered "by default" (by the use of '\n' as
1313 	a line feed). This gives bad readability to the grammar rules shown in
1314 	state nodes, a left justification is much nicer. This is done by using '\l'
1315 	as the line feed.
1316 
1317 	In order to allow \l in the DOT file, changes to the quoting system seem
1318 	necessary.
1319 
1320 	* src/print_graph.c (print_core): Escape tokens here, instead of...
1321 	* src/graphviz.c (output_node): Here...
1322 	(escape): Using this, new.
1323 
1324 2012-10-11  Theophile Ranquet  <theophile.ranquet@gmail.com>
1325 
1326 	graphs: style: prefix rules and change shapes
1327 	* src/graphviz.c (start_graph): Use box rather than ellipsis.
1328 	* src/print_graph.c (print_core): Prefix rules with their number.
1329 
1330 2012-10-11  Theophile Ranquet  <theophile.ranquet@gmail.com>
1331 
1332 	obstack: import obstack_finish0 from master
1333 	* src/system.h (obstack_finish0): New.
1334 
1335 2012-10-09  Akim Demaille  <akim@lrde.epita.fr>
1336 
1337 	c++: api.location.type
1338 	This feature was introduced in 95a2de5695670ae0df98cb3c42141cad549f0204
1339 	(which is part of 2.5), but not documented.  Give it a proper name, and
1340 	make it public.
1341 
1342 	* data/c++.m4, data/lalr1.cc, data/glr.cc, data/java.m4: Use
1343 	api.location.type instead of location_type.
1344 	* src/muscle-tab.c (muscle_percent_variable_update): Map the latter to
1345 	the former.
1346 	* tests/local.at: Adjust.
1347 	* tests/calc.at: Use api.location.type.
1348 	Leave tests/java.at with location_type, at least for the time being,
1349 	to cover both names.
1350 	* doc/bison.texi: Document api.location.type.
1351 	(User Defined Location Type): New.
1352 	* NEWS: Update.
1353 
1354 2012-10-09  Akim Demaille  <akim@lrde.epita.fr>
1355 
1356 	muscles: a function for backward compatibility
1357 	Based on commit 171ad99d6421935a278656be6dc7161591835d00 from master.
1358 
1359 	* src/muscle-tab.c (muscle_percent_variable_update): New.
1360 	(muscle_percent_define_insert): Use it.
1361 	Define the variables with their initial value.
1362 
1363 2012-10-09  Akim Demaille  <akim@lrde.epita.fr>
1364 
1365 	maint: more macros
1366 	* src/output.c (ARRAY_CARDINALITY): Move to...
1367 	* src/system.h: here.
1368 	(STREQ, STRNEQ): new.
1369 
1370 2012-10-08  Akim Demaille  <akim@lrde.epita.fr>
1371 
1372 	NEWS: warnings with clang
1373 	* NEWS: here.
1374 
1375 2012-10-08  Akim Demaille  <akim@lrde.epita.fr>
1376 
1377 	warnings: avoid warnings from clang
1378 	Fix the following warning
1379 
1380 	  parse-gram.c:2078:14: error: equality comparison with extraneous parentheses
1381 	                        [-Werror,-Wparentheses-equality]
1382 	    if (((yyn) == (-91)))
1383 	         ~~~~~~^~~~~~~~
1384 	  parse-gram.c:2078:14: note: remove extraneous parentheses around the
1385 	                        comparison to silence this warning
1386 	    if (((yyn) == (-91)))
1387 	        ~      ^       ~
1388 	  parse-gram.c:2078:14: note: use '=' to turn this equality comparison into
1389 	                        an assignment
1390 	    if (((yyn) == (-91)))
1391 	               ^~
1392 	               =
1393 	  1 error generated.
1394 
1395 	and the following one:
1396 
1397 	  input.cc:740:1: error: function declared 'noreturn' should not return
1398 	                         [-Werror,-Winvalid-noreturn]
1399 	  static void yyMemoryExhausted (yyGLRStack* yystackp)
1400 	    __attribute__ ((__noreturn__));
1401 	  static void
1402 	  yyMemoryExhausted (yyGLRStack* yystackp)
1403 	  {
1404 	    YYLONGJMP (yystackp->yyexception_buffer, 2);
1405 	  }
1406 	  ^
1407 	  1 warning and 1 error generated.
1408 
1409 	This is Apple clang version 3.1 (tags/Apple/clang-318.0.61).
1410 
1411 	* data/c.m4 (b4_table_value_equals): Use (!!(A == B)) instead of (A == B)
1412 	to avoid this warning.
1413 	Any reasonable compiler should generate the same code.
1414 	* src/uniqstr.h (UNIQSTR_EQ): Likewise.
1415 	* data/glr.c (LONGJMP): abort after longjmp to pacify clang.
1416 
1417 2012-10-08  Akim Demaille  <akim@lrde.epita.fr>
1418 
1419 	tests: no longer disable -O compiler options
1420 	Tests are running without -O since
1421 	f377f69fec28013c79db4efe12bbb9d48987fb2c because some warnings (about
1422 	yylval not being initialized) show only when GCC is given -O2.  The
1423 	previous patch fixes the warnings. Run the test suite with compiler
1424 	options unmodified.
1425 
1426 	* tests/atlocal.in (O0CFLAGS, O0CXXFLAGS): Remove, use CFLAGS and
1427 	CXXFLAGS.
1428 
1429 2012-10-08  Paul Eggert  <eggert@cs.ucla.edu>
1430 
1431 	yacc.c: initialize yylval in pure-parser mode
1432 	See http://lists.gnu.org/archive/html/bison-patches/2012-08/msg00024.html
1433 	(spreading over September and October).
1434 
1435 	* data/yacc.c (YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN)
1436 	(YY_IGNORE_MAYBE_UNINITIALIZED_END, YYLVAL_INITIALIZE):
1437 	New macros.  Use them to suppress an unwanted GCC diagnostic.
1438 
1439 2012-10-08  Akim Demaille  <akim@lrde.epita.fr>
1440 
1441 	skeletons: style changes
1442 	* data/yacc.c, data/glr.c: Prefer Title case for (CPP) macro arguments.
1443 
1444 2012-10-06  Akim Demaille  <akim@lrde.epita.fr>
1445 
1446 	lalr1.cc: document exception safety
1447 	* NEWS: here.
1448 	* doc/bison.texi (Destructor Decl, C++ Parser Interface): and there.
1449 
1450 2012-10-06  Akim Demaille  <akim@lrde.epita.fr>
1451 
1452 	lalr1.cc: check exception safety of error handling
1453 	* tests/c++.at (Exception safety): Don't use swap here, it
1454 	is useless.
1455 	Cover more test cases: yyerror, YYERROR, YYABORT, and
1456 	error recovery.
1457 	(Object): Instead of just keeping a counter of instances, keep
1458 	a list of them.
1459 
1460 2012-10-06  Akim Demaille  <akim@lrde.epita.fr>
1461 
1462 	lalr1.cc: check (and fix) %printer exception safety
1463 	* tests/c++.at (Exception safety): Let the parser support the --debug
1464 	option.
1465 	On 'p', throw an exception from the %printer.
1466 	* data/lalr1.cc (yyparse): Do not display the values we discard, as it
1467 	uses %printer, which might have thrown the exception.
1468 
1469 2012-10-06  Akim Demaille  <akim@lrde.epita.fr>
1470 
1471 	lalr1.cc: check (and fix) %initial-action exception safety
1472 	* data/lalr1.cc: Check size > 1, rather than size != 1, when cleaning
1473 	the stack, as at the beginning, size is 0.
1474 	* tests/c++.at (Exception safety): Check exception safety in
1475 	%initial-action.
1476 
1477 2012-10-06  Akim Demaille  <akim@lrde.epita.fr>
1478 
1479 	lalr1.cc: fix exception safety
1480 	lalr1.cc does not reclaim its memory when ended by an exception.
1481 
1482 	Reported by Oleksii Taran:
1483 	http://lists.gnu.org/archive/html/help-bison/2012-09/msg00000.html
1484 
1485 	* data/lalr1.cc (yyparse): Protect the whole yyparse by a try-catch
1486 	block that cleans the stack and the lookahead.
1487 
1488 2012-10-06  Akim Demaille  <akim@lrde.epita.fr>
1489 
1490 	lalr1.cc: check exception safety.
1491 	* tests/c++.at (Exception safety): New.
1492 
1493 2012-10-06  Akim Demaille  <akim@lrde.epita.fr>
1494 
1495 	lalr1.cc: indentation fixes.
1496 	* data/lalr1.cc (yyparse): here.
1497 	Untabify a block of code.
1498 
1499 2012-10-06  Akim Demaille  <akim@lrde.epita.fr>
1500 
1501 	lalr1.cc: don't leave macros define to nothing
1502 	* data/lalr1.cc (YY_SYMBOL_PRINT, YY_REDUCE_PRINT, YY_STACK_PRINT):
1503 	Define to something so that, for instance, "if (foo) YY_SYMBOL_PRINT"
1504 	is valid even when !YYDEBUG.
1505 
1506 2012-10-06  Akim Demaille  <akim@lrde.epita.fr>
1507 
1508 	tests: minor improvements
1509 	* tests/c++.at: Space changes.
1510 	Use AT_YYERROR_DEFINE.
1511 	* tests/local.at (AT_YYERROR_DEFINE): Issue errors on unknown languages.
1512 
1513 2012-10-05  Akim Demaille  <akim@lrde.epita.fr>
1514 
1515 	tests: use $PERL instead of perl
1516 	* tests/atlocal.in (PERL): New.
1517 	Sort.
1518 	* tests/calc.at, tests/input.at, tests/local.at, tests/regression.at,
1519 	* tests/skeletons.at, tests/synclines.at, tests/torture.at: here.
1520 
1521 2012-10-05  Akim Demaille  <akim@lrde.epita.fr>
1522 
1523 	build: look for Perl in configure.
1524 	Bison uses "/usr/bin/perl" or "perl" in several places, and it does
1525 	not appear to be a problem.  But, at least to make it simpler to
1526 	change PERL on the make command line, check for perl in configure.
1527 
1528 	* configure.ac (PERL): New.
1529 	* doc/Doxyfile.in, doc/Makefile.am, tests/bison.in: Use it.
1530 
1531 2012-10-05  Akim Demaille  <akim@lrde.epita.fr>
1532 
1533 	tests: fix sed portability issues
1534 	Reported by Didier Godefroy,
1535 	<http://lists.gnu.org/archive/html/bug-bison/2012-10/msg00005.html>.
1536 
1537 	* tests/calc.at (AT_CHECK_SPACES): Use Perl.
1538 
1539 2012-10-05  Akim Demaille  <akim@lrde.epita.fr>
1540 
1541 	tests: diff -u is not portable
1542 	Reported by Didier Godefroy
1543 	<http://lists.gnu.org/archive/html/bug-bison/2012-10/msg00006.html>.
1544 
1545 	* tests/existing.at (AT_LALR1_DIFF_CHECK): Skip if diff -u does not
1546 	work.
1547 
1548 2012-10-04  Akim Demaille  <akim@lrde.epita.fr>
1549 
1550 	maint: word changes
1551 	* README-hacking (Typical errors): Improve wording.
1552 
1553 2012-10-04  Akim Demaille  <akim@lrde.epita.fr>
1554 
1555 	lalr1.cc: fix test suite portability
1556 	Reported by Rob Vermaas' Hydra build farm on x86_64-darwin 10.2.0 with
1557 	G++ 4.6.3.
1558 
1559 	* tests/headers.at (Several parsers): Include AT_DATA_SOURCE_PROLOGUE
1560 	in the files to compile.
1561 	* data/location.cc: Do not include twice string and iostream (once
1562 	by position.hh, and then by location.hh).
1563 	* README-hacking (Typical errors): Some hints for other maintainers.
1564 
1565 2012-10-03  Theophile Ranquet  <theophile.ranquet@gmail.com>
1566 
1567 	maint: fix an erroneous include
1568 	This fixes test 130 (Several parsers).
1569 
1570 	* data/location.cc: Include <iostream> rather than <iosfwd> since
1571 	we really need << on strings for instance.
1572 	* NEWS: Document this.
1573 
1574 2012-10-03  Akim Demaille  <akim@lrde.epita.fr>
1575 
1576 	tests: check that headers are self contained
1577 	Reported by Alexandre Duret-Lutz.
1578 
1579 	* tests/headers.at (Several parsers): here.
1580 
1581 2012-10-03  Akim Demaille  <akim@lrde.epita.fr>
1582 
1583 	doc: add missing documentation for --report
1584 	* doc/bison.texi (Bison Options): Document --report's "solved", "all",
1585 	and "none".
1586 
1587 2012-10-01  Akim Demaille  <akim@lrde.epita.fr>
1588 
1589 	headers: move CPP guards into YY_*_INCLUDED to avoid collisions
1590 	See <http://lists.gnu.org/archive/html/bug-bison/2012-09/msg00016.html>.
1591 
1592 	* data/c.m4 (b4_cpp_guard): Prepend YY_ and append _INCLUDED.
1593 	* tests/headers.at: Adjust.
1594 	* NEWS, doc/bison.texi: Document.
1595 
1596 2012-10-01  Akim Demaille  <akim@lrde.epita.fr>
1597 
1598 	minor changes.
1599 	* NEWS: Word changes.
1600 	* doc/bison.texi: Spell check.
1601 	Fix minor issues.
1602 	* tests/headers.at: Comment and formatting changes.
1603 
1604 2012-09-28  Akim Demaille  <akim@lrde.epita.fr>
1605 
1606 	gnulib: update
1607 
1608 2012-09-28  Theophile Ranquet  <theophile.ranquet@gmail.com>
1609 
1610 	errors: indent "user token number redeclaration" context
1611 	This is the continuation of the work on the readability of errors
1612 	context.
1613 
1614 	* src/symtab.c (user_token_number_redeclaration): Use
1615 	complain_at_indent to output with increased indentation level.
1616 	* tests/input:at: Apply this change.
1617 
1618 2012-09-26  Theophile Ranquet  <ranquet@lrde.epita.fr>
1619 
1620 	warnings: introduce -Wdeprecated in the usage info
1621 	The deprecated warning, introduced some time ago, was not displayed in
1622 	the usage message. This patch addresses the issue.
1623 
1624 	* src/getargs.c (usage): Insert here.
1625 
1626 2012-09-26  Theophile Ranquet  <ranquet@lrde.epita.fr>
1627 
1628 	errors: prefix the output with "error: "
1629 	This improves readability. This is also what gcc does.
1630 
1631 	* NEWS: Document this change.
1632 	* src/complain.c (complain_at): Prefix all errors with "error: ".
1633 	(complain_at_indent, warn_at_indent): Do not prefix the context
1634 	information of errors, which are basically just indented errors.
1635 	* tests/conflicts.at, tests/glr-regression.at, tests/input.at,
1636 	tests/named-refs.at, tests/output.at, tests/push.at,
1637 	tests/regression.at, tests/skeletons.at: Apply this change.
1638 
1639 2012-09-26  Theophile Ranquet  <ranquet@lrde.epita.fr>
1640 
1641 	errors: indent "invalid value for %define" context
1642 	This is the continuation of the work on the readability of errors
1643 	    context.
1644 
1645 	For example, what used to be:
1646 	  input.y:1.9-29: invalid value for %define variable 'foo' : 'bar'
1647 	  input.y:1.9-29: accepted value: 'most'
1648 
1649 	is now:
1650 	  input.y:1.9-29: invalid value for %define variable 'foo' : 'bar'
1651 	  input.y:1.9-29:     accepted value: 'most'
1652 
1653 	* src/muscle-tab.c (muscle_percent_define_check_values): Use
1654 	complain_at_indent to output with increased indentation level.
1655 	* tests/input:at: Apply this change.
1656 
1657 2012-09-26  Theophile Ranquet  <ranquet@lrde.epita.fr>
1658 
1659 	errors: indent "%define var" redefinition context
1660 	This is the continuation of the work on the readability of errors
1661 	context.
1662 
1663 	For example, what used to be:
1664 	  input.y:2.9-11: %define variable 'var' redefined
1665 	  input.y:1.9-11: previous definition
1666 
1667 	is now:
1668 	  input.y:2.9-11: %define variable 'var' redefined
1669 	  input.y:1.9-11:     previous definition
1670 
1671 	* src/muscle-tab.c (muscle_percent_define_insert): Use
1672 	complain_at_indent to output with increased indentation level.
1673 	* tests/input.at: Apply this change.
1674 
1675 2012-09-26  Theophile Ranquet  <ranquet@lrde.epita.fr>
1676 
1677 	errors: indent "symbol redeclaration" context
1678 	This is the continuation of the work on the readability of errors
1679 	context.
1680 
1681 	For example, what used to be:
1682 	  input.y:5.10-24: %printer redeclaration for <field2>
1683 	  input.y:3.11-25: previous declaration
1684 
1685 	is now:
1686 	  input.y:5.10-24: %printer redeclaration for <field2>
1687 	  input.y:3.11-25:     previous declaration
1688 
1689 	* NEWS: Document this change.
1690 	* src/symtab.c (symbol_redeclaration, semantic_type_redeclaration,
1691 	user_token_number_redeclaration, default_tagged_destructor_set,
1692 	default_tagless_destructor_set, default_tagged_printer_set,
1693 	default_tagless_printer_set): Use complain_at_indent to
1694 	output with increased indentation level.
1695 	* tests/input.at: Apply this change.
1696 
1697 2012-09-26  Theophile Ranquet  <ranquet@lrde.epita.fr>
1698 
1699 	errors: indent "result type clash" error context
1700 	This used to be the format of the error report:
1701 
1702 	  input.y:6.5-10: result type clash on merge function 'merge': [...]
1703 	  input.y:2.4-9: previous declaration
1704 
1705 	In order to distinguish the actual error from the context provided, we
1706 	rather this new output:
1707 
1708 	  input.y:6.5-10: result type clash on merge function 'merge': [...]
1709 	  input.y:2.4-9:     previous declaration
1710 
1711 	Another patch will introduce an "error: " prefix to all non-indented
1712 	lines, giving yet better readability to the reports.
1713 
1714 	* src/complain.h (SUB_INDENT): Move to here.
1715 	* src/reader.c (record_merge_function_type): Use complain_at_indent to
1716 	output with increased indentation level.
1717 	* src/scan-code.l (SUB_INDENT): Remove from here.
1718 	* tests/glr-regression.at: Apply this change.
1719 
1720 2012-09-25  Akim Demaille  <akim@lrde.epita.fr>
1721 
1722 	regen
1723 
1724 2012-09-25  Akim Demaille  <akim@lrde.epita.fr>
1725 
1726 	yacc: fix handling of CPP guards when no header is generated
1727 	When no header was to be generated, Bison would issue:
1728 
1729 	  /* In a future release of Bison, this section will be replaced
1730 	     by #include "".  */
1731 	  #ifndef YY_
1732 	  # define YY_
1733 
1734 	It now properly generates nothing.
1735 
1736 	* data/c.m4 (b4_cpp_guard_open, b4_cpp_guard_close): Issue nothing when
1737 	the file name is empty.
1738 	* data/yacc.c: Do not generate the above comment when there is no header
1739 	to generate.
1740 	* NEWS: Update.
1741 
1742 2012-09-25  Akim Demaille  <akim@lrde.epita.fr>
1743 
1744 	gnulib: update
1745 
1746 2012-09-04  Akim Demaille  <akim@lrde.epita.fr>
1747 
1748 	maint: remove useless file
1749 	* externals/bootstrap.cfg: Remove.
1750 	This file was used by a specific build system.
1751 	It was added to the master repository by accident.
1752 
1753 2012-09-04  Akim Demaille  <akim@lrde.epita.fr>
1754 
1755 	update files to ignore
1756 	* doc/.gitignore: Don't ignore split info files as we don't split our
1757 	info file.
1758 	See <http://lists.gnu.org/archive/html/bug-bison/2012-08/msg00006.html>.
1759 
1760 2012-09-04  Akim Demaille  <akim@lrde.epita.fr>
1761 
1762 	remove useless include
1763 	* src/system.h: Don't include sys/types.h.
1764 	Reported by Eric Blake,
1765 	<http://lists.gnu.org/archive/html/bug-bison/2012-09/msg00002.html>.
1766 	(FUNCTION_PRINT): Remove, unused.
1767 
1768 2012-09-03  Jim Meyering  <meyering@redhat.com>
1769 
1770 	use locale-indep. c_is* functions for parsing, not isspace, isprint etc
1771 	* src/parse-gram.y: Include "c-ctype.h".
1772 	(add_param): Parse with c_isspace, not isspace.
1773 	* src/parse-gram.c: Likewise.
1774 	* src/scan-gram.l: Include c-ctype.h, not ctype.h.
1775 	(SC_ESCAPED_STRING,SC_ESCAPED_CHARACTER): Use c_isspace and c_isprint,
1776 	not ctype.h's locale-dependent functions.
1777 
1778 2012-09-03  Akim Demaille  <akim@lrde.epita.fr>
1779 
1780 	gnulib: update
1781 
1782 2012-09-03  Akim Demaille  <akim@lrde.epita.fr>
1783 
1784 	--help: include a place to report translation issues
1785 	http://lists.gnu.org/archive/html/bug-bison/2012-08/msg00007.html
1786 	shows that it is useful to help users report translation issues.
1787 	While at it, include other informative bits that the coreutils shows.
1788 
1789 	* src/getargs.c (usage): Report more URLs where the user can
1790 	refer to.
1791 	Mostly copied/pasted from coreutils' emit_ancillary_info function.
1792 
1793 2012-08-31  Akim Demaille  <akim@lrde.epita.fr>
1794 
1795 	tests: style changes
1796 	* tests/torture.at (AT_DATA_STACK_TORTURE): M4 style changes to
1797 	improve readability.
1798 	Fix an assertion which, because of a <= instead of ==, did not check
1799 	new_status as visibly meant.
1800 	(get_args): New.
1801 
1802 2012-08-31  Akim Demaille  <akim@lrde.epita.fr>
1803 
1804 	tests: fix push-pull test
1805 	* tests/torture.at: %push-pull-parser is no longer supported.
1806 
1807 2012-08-31  Akim Demaille  <akim@lrde.epita.fr>
1808 
1809 	yacc.c: style changes
1810 	* data/yacc.c: (yytoken): Define with initial value.
1811 
1812 2012-08-03  Akim Demaille  <akim@lrde.epita.fr>
1813 
1814 	maint: post-release administrivia
1815 	* NEWS: Add header line for next release.
1816 	* .prev-version: Record previous version.
1817 	* cfg.mk (old_NEWS_hash): Auto-update.
1818 
1819 2012-08-03  Akim Demaille  <akim@lrde.epita.fr>
1820 
1821 	version 2.6.2
1822 	* NEWS: Record release date.
1823 
1824 2012-08-02  Akim Demaille  <akim@lrde.epita.fr>
1825 
1826 	NEWS: update.
1827 	* NEWS: Catch up with the other changes from 2.6.1.
1828 
1829 2012-08-02  Akim Demaille  <akim@lrde.epita.fr>
1830 
1831 	yacc: remove trailing end of line at end of file
1832 	There are still spurious spaces at the end of some lines.  But this is
1833 	addressed in the master branch, and I am reluctant to try to backport
1834 	this.
1835 
1836 	* data/yacc.c, data/glr.c, data/lalr1.cc, data/glr.cc: here.
1837 	* tests/calc.at (AT_CHECK_SPACES): New.
1838 	Use it.
1839 	Be sure not to introduce trailing empty lines in the *.y files.
1840 	* NEWS: Doc it.
1841 	* cfg.mk (syntax-check): Remove the exception.
1842 
1843 2012-08-02  Akim Demaille  <akim@lrde.epita.fr>
1844 
1845 	thanks: fix a contributor name
1846 	* THANKS: On his request.
1847 
1848 2012-08-01  Akim Demaille  <akim@lrde.epita.fr>
1849 
1850 	gnulib: update
1851 
1852 2012-08-01  Akim Demaille  <akim@lrde.epita.fr>
1853 
1854 	tests: synch line -> syncline, for consistency
1855 	* tests/synclines.at: Do it, as "syncline" is used consistently
1856 	everywhere else in Bison.
1857 
1858 2012-08-01  Akim Demaille  <akim@lrde.epita.fr>
1859 
1860 	tests: synclines: style changes
1861 	* tests/synclines.at (AT_TEST_SYNCLINE): Rename as...
1862 	(AT_TEST): this.
1863 	Use pushdef/popdef.
1864 	Formatting changes.
1865 	Use '+' instead of '*' where appropriate.
1866 
1867 2012-08-01  Akim Demaille  <akim@lrde.epita.fr>
1868 
1869 	tests: synclines: fix perl invocation
1870 	Reported by Summum Bonum.
1871 
1872 	* tests/synclines.at: Fix Perl invocation: its -f is not like sed's.
1873 
1874 2012-08-01  Akim Demaille  <akim@lrde.epita.fr>
1875 
1876 	regen
1877 
1878 2012-08-01  Akim Demaille  <akim@lrde.epita.fr>
1879 
1880 	c++: trailing end-of-lines in %parse-param
1881 	* src/parse-gram.y (add_param): No only skip ' ' and '\t', skip all
1882 	leading and trailing spaces.
1883 	* tests/regression.at (Lex and parse params): Check it.
1884 	* NEWS: Document it.
1885 
1886 2012-08-01  Akim Demaille  <akim@lrde.epita.fr>
1887 
1888 	tests: simplify
1889 	* tests/regression.at: Remove useless compilations: AT_FULL_COMPILE
1890 	includes the compilation by bison.
1891 
1892 2012-07-31  Akim Demaille  <akim@lrde.epita.fr>
1893 
1894 	use obstack_printf
1895 	This is not just nicer, it is also much safer, since we were
1896 	using sprintf...
1897 
1898 	* bootstrap.conf: Require it.
1899 	* src/system.h (obstack_fgrow1, obstack_fgrow2, obstack_fgrow3)
1900 	(obstack_fgrow4): Remove.
1901 	Adjust dependencies.
1902 
1903 2012-07-30  Akim Demaille  <akim@lrde.epita.fr>
1904 
1905 	scanner: restore a missing start condition
1906 	$ flex src/scan-skel.l
1907 	src/scan-skel.l:145: multiple <<EOF>> rules for start condition SC_AT_DIRECTIVE_ARGS
1908 	src/scan-skel.l:145: multiple <<EOF>> rules for start condition SC_AT_DIRECTIVE_SKIP_WS
1909 	This is warning, and it seems there are no means to make it an error.
1910 
1911 	* src/scan-skel.l: Restore the start-condition INITIAL for an <<EOF>>
1912 	clause.
1913 
1914 2012-07-30  Akim Demaille  <akim@lrde.epita.fr>
1915 
1916 	gnulib: update
1917 
1918 2012-07-30  Akim Demaille  <akim@lrde.epita.fr>
1919 
1920 	maint: post-release administrivia
1921 	* NEWS: Add header line for next release.
1922 	* .prev-version: Record previous version.
1923 	* cfg.mk (old_NEWS_hash): Auto-update.
1924 
1925 2012-07-30  Akim Demaille  <akim@lrde.epita.fr>
1926 
1927 	version 2.6.1
1928 	* NEWS: Record release date.
1929 
1930 2012-07-30  Akim Demaille  <akim@lrde.epita.fr>
1931 
1932 	gnulib: update
1933 
1934 2012-07-27  Akim Demaille  <akim@lrde.epita.fr>
1935 
1936 	maint: fix some syntax-check issues
1937 	* cfg.mk: Nuke the following warnings which are confused by our
1938 	text reports (that state that the error token is number 256).
1939 	  prohibit_magic_number_exit
1940 	  ../../doc/bison.texi:8170:error (256)
1941 	  ../../tests/conflicts.at:570:error (256)
1942 	  ../../tests/conflicts.at:673:error (256)
1943 	  ../../tests/conflicts.at:811:error (256)
1944 	  ../../tests/conflicts.at:1154:error (256)
1945 	  ../../tests/regression.at:281:error (256)
1946 	  ../../tests/regression.at:582:error (256)
1947 	  maint.mk: use EXIT_* values rather than magic number
1948 
1949 2012-07-27  Akim Demaille  <akim@lrde.epita.fr>
1950 
1951 	tests: do not depend on __cplusplus to decide for C++ or C output
1952 	Since we do support compiling C code with a C++ compiler.
1953 
1954 	* tests/actions.at (Qualified $$ in actions): Use AT_SKEL_CC_IF.
1955 
1956 2012-07-27  Akim Demaille  <akim@lrde.epita.fr>
1957 
1958 	regen
1959 
1960 2012-07-27  Akim Demaille  <akim@lrde.epita.fr>
1961 
1962 	synclines: remove spurious empty line
1963 	* data/bison.m4 (b4_syncline): Do not start with an empty line.
1964 
1965 2012-07-27  Akim Demaille  <akim@lrde.epita.fr>
1966 
1967 	also support $<foo>$ in the %initial-action
1968 	scan-code.l is already passing argument to b4_dollar_dollar for the
1969 	initial acton, but its definition (of b4_dollar_dollar) does not use
1970 	this argument.
1971 
1972 	Generalize this definition, and use it for the %initial-action too.
1973 
1974 	* data/c.m4 (b4_dollar_dollar_, b4_dollar_pushdef, b4_dollar_popdef):
1975 	Instead of expecting a pointer, require a value, and use ".".
1976 	Since they are now generic enough, move to...
1977 	* data/c-like.m4: this new file.
1978 	* data/c.m4, data/java.m4: Load it.
1979 	* data/glr.c, data/lalr1.cc, data/lalr1.java, data/yacc.c: Use
1980 	b4_dollar_pushdef for the %initial-action.
1981 	* tests/actions.at: Check that.
1982 	* data/Makefile.am: Adjust.
1983 	* NEWS, doc/bison.texi: Document.
1984 
1985 2012-07-27  Akim Demaille  <akim@lrde.epita.fr>
1986 
1987 	skeletons: b4_dollar_pushdef and popdef to simpify complex definitions
1988 	M4 is really making it uselessly hard to define macros that define
1989 	macros.
1990 	* data/c.m4 (b4_dollar_pushdef, b4_dollar_popdef): New.
1991 	Use it.
1992 
1993 2012-07-27  Akim Demaille  <akim@lrde.epita.fr>
1994 
1995 	regen
1996 
1997 2012-07-27  Akim Demaille  <akim@lrde.epita.fr>
1998 
1999 	printer/destructor: translate only once
2000 	Currently "%printer {...} a b c d e f" translates the {...} six times.
2001 	Not only is this bad for time and space, it also issues six times the
2002 	same warnings.
2003 
2004 	* src/symlist.h, src/symlist.c (symbol_list_destructor_set)
2005 	(symbol_list_printer_set): Take the action as code_props instead of
2006 	const char *.
2007 	* src/parse-gram.y: Translate these actions here.
2008 	* src/scan-code.h: Comment change.
2009 	* tests/input.at: Check that warnings are issued only once.
2010 
2011 2012-07-27  Akim Demaille  <akim@lrde.epita.fr>
2012 
2013 	factor the handling of m4 escaping
2014 	The conversion from @ to @@ and so forth is coded is too many
2015 	different places.  Factor, a bit.
2016 
2017 	* src/scan-code.l: Instead of duplicating the logic of obstack_escape,
2018 	use it.
2019 	It sure is less efficient, but the cost is negligible.
2020 	This allows to factor rules that are alike.
2021 	And to factor some start-condition clauses.
2022 	* tests/input.at (Stray $ or @): New.
2023 	* NEWS: Document it.
2024 
2025 2012-07-27  Akim Demaille  <akim@lrde.epita.fr>
2026 
2027 	news: schedule the removal of the ";" hack
2028 	scan-code.l is significantly more complex because of this.
2029 
2030 	* NEWS: Doc it.
2031 
2032 2012-07-27  Akim Demaille  <akim@lrde.epita.fr>
2033 
2034 	style changes in the scanners
2035 	* src/scan-code.l, src/scan-skel.l: Use a more traditional indentation
2036 	style for start-conditions.
2037 	Prefer "continue" to a comment, for empty actions.
2038 	Strip useless {}.
2039 	Remove useless start-condition clauses.
2040 
2041 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2042 
2043 	regen
2044 
2045 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2046 
2047 	support $<tag>$ in printers and destructors
2048 	* src/scan-code.l (SC_SYMBOL_ACTION): Accept $<tag>$, not just $$.
2049 	* data/c.m4 (b4_dollar_dollar_): New.
2050 	(b4_symbol_actions): Let b4_dollar_dollar use b4_dollar_dollar_.
2051 	* NEWS, doc/bison.texi: Document it.
2052 	* tests/actions.at: Check this for C and C++.
2053 
2054 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2055 
2056 	scan-code: factor the handling of the type in $<TYPE>$
2057 	* src/scan-code.l (fetch_type_name): New.
2058 	(handle_action_dollar): Use it.
2059 	(gt_ptr): Remove, useless.
2060 
2061 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2062 
2063 	muscles: fix another occurrence of unescaped type name
2064 	* src/output.c (quoted_output): Split into...
2065 	(quoted_output, string_output): these.
2066 	Use the former when outputting a type_name.
2067 	* tests/input.at: Check this case.
2068 	* src/symtab.h: Comment changes.
2069 
2070 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2071 
2072 	glr.cc: fix the handling of yydebug
2073 	* data/glr.cc (yydebug_): Remove, unused.
2074 	(set_debug_level, debug_level): Work on yydebug instead.
2075 	* doc/bison.texi, NEWS: Document this.
2076 
2077 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2078 
2079 	gnulib: update
2080 
2081 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2082 
2083 	formatting changes
2084 	* src/symtab.h: here.
2085 
2086 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2087 
2088 	tests: fix an assertion
2089 	* tests/local.at (AT_YYLEX_DEFINE): Be sure to check the array
2090 	against its length, not its size in bytes.
2091 
2092 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2093 
2094 	tests: adjust to GCC 4.8, which displays caret errors
2095 	With GCC 4.8, the tests on synclines are skipped.  Transform
2096 
2097 	  input.y:1:2: error: #error "1"
2098 	   #error "1"
2099 	    ^
2100 
2101 	into
2102 
2103 	  input.y:1: #error "1"
2104 
2105 	* tests/synclines.at (AT_SYNCLINES_COMPILE): Do it, using Perl instead of
2106 	sed.
2107 
2108 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2109 
2110 	be sure to properly escape type names
2111 	* src/scan-code.l: Use obstack_quote when passing type_name to m4.
2112 	* tests/input.at (Code injection): New.
2113 	* NEWS: Document it.
2114 	Thanks to Paul Eggert for the wording.
2115 
2116 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2117 
2118 	obstack_quote: escape and quote for M4
2119 	* src/system.h (obstack_quote): New.
2120 	* src/muscle-tab.c: Use it instead of obstack_escape where applicable.
2121 	* src/scan-code.l: Since obstack_quote supports NULL, leave type_name
2122 	as NULL instead of defaulting to "".
2123 
2124 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2125 
2126 	muscles: shuffle responsabilities
2127 	* src/muscle-tab.c (muscle_boundary_grow): Be in charge of quotation,
2128 	instead of leaving this to the caller.
2129 
2130 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2131 
2132 	muscles: make private functions static
2133 	* src/muscle-tab.h, src/muscle-tab.c (muscle_boundary_grow)
2134 	(muscle_location_grow): Now static.
2135 
2136 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2137 
2138 	muscles: rename private functions/macros
2139 	* src/muscle-tab.c (MUSCLE_COMMON_DECODE, muscle_string_decode)
2140 	(muscle_location_decode): Not related to muscles, rename as...
2141 	(COMMON_DECODE, string_decode, location_decode): these.
2142 
2143 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2144 
2145 	obstack_escape: escape M4 characters
2146 	* src/muscle-tab.h (MUSCLE_OBSTACK_SGROW): This is not related to
2147 	muscles, so move to, and rename as...
2148 	* src/system.h (obstack_escape): this.
2149 	Adjust dependencies.
2150 
2151 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2152 
2153 	remove dead macro
2154 	* src/system.h (DEFAULT_TMPDIR): Remove, unused.
2155 
2156 2012-07-26  Akim Demaille  <akim@lrde.epita.fr>
2157 
2158 	maint: style changes
2159 	* src/scan-code.l: Remove useless braces.
2160 	Formatting changes.
2161 	Prefer NULL to 0.
2162 	* src/muscle-tab.c, src/system.h: Formatting changes.
2163 
2164 2012-07-24  Akim Demaille  <akim@lrde.epita.fr>
2165 
2166 	doc: avoid problems with case insensitive file systems
2167 	makeinfo --html generates index.html, and the node "Index" will result
2168 	in Index.html.  On case insensitive file systems, such as on Mac OS X
2169 	by default, this results in a single, invalid, file (Texinfo 4.13).
2170 	See http://lists.gnu.org/archive/html/bug-texinfo/2012-07/msg00032.html
2171 
2172 	* doc/bison.texi (Index): Rename as...
2173 	(Index of Terms): this.
2174 
2175 2012-07-24  Stefano Lattarini  <stefano.lattarini@gmail.com>  (tiny change)
2176 
2177 	configure: fix botched quoting
2178 	* configure.ac: In the AC_SUBST call on 'VALGRIND_PREBISON'.  Without
2179 	this change, when running ./configure, I see:
2180 
2181 	    ...
2182 	    checking for valgrind... valgrind
2183 	    ./configure: line 35221: -q: command not found
2184 	    checking for Java compiler... gcj -C -fsource=1.3 -ftarget=1.4
2185 	    ...
2186 
2187 2012-07-20  Akim Demaille  <akim@lrde.epita.fr>
2188 
2189 	news: fix typo.
2190 	* NEWS: here.
2191 	Reported by Ben Pfaff.
2192 
2193 2012-07-19  Akim Demaille  <akim@lrde.epita.fr>
2194 
2195 	maint: update gnu-web-doc-update.
2196 	* gnulib: here.
2197 
2198 2012-07-19  Akim Demaille  <akim@lrde.epita.fr>
2199 
2200 	maint: post-release administrivia
2201 	* NEWS: Add header line for next release.
2202 	* .prev-version: Record previous version.
2203 	* cfg.mk (old_NEWS_hash): Auto-update.
2204 
2205 2012-07-19  Akim Demaille  <akim@lrde.epita.fr>
2206 
2207 	version 2.6
2208 	* NEWS: Record release date.
2209 
2210 2012-07-19  Akim Demaille  <akim@lrde.epita.fr>
2211 
2212 	maint: prepare for release 2.6
2213 	* NEWS: here.
2214 
2215 2012-07-18  Akim Demaille  <akim@lrde.epita.fr>
2216 
2217 	maint: post-release administrivia
2218 	* NEWS: Add header line for next release.
2219 	* .prev-version: Record previous version.
2220 	* cfg.mk (old_NEWS_hash): Auto-update.
2221 
2222 2012-07-18  Akim Demaille  <akim@lrde.epita.fr>
2223 
2224 	version 2.5.91
2225 	* NEWS: Record release date.
2226 
2227 2012-07-18  Akim Demaille  <akim@lrde.epita.fr>
2228 
2229 	maint: prepare NEWS.
2230 
2231 2012-07-18  Akim Demaille  <akim@lrde.epita.fr>
2232 
2233 	maint: fix spaces.
2234 	* build-aux/Makefile.am: here.
2235 
2236 2012-07-18  Akim Demaille  <akim@lrde.epita.fr>
2237 
2238 	tests: adjust to case where the C compiler is actually a C++ compiler
2239 	* tests/atlocal.in (CC_IS_CXX): New.
2240 	* tests/headers.at (Several parsers): Use it.
2241 
2242 2012-07-18  Akim Demaille  <akim@lrde.epita.fr>
2243 
2244 	tests: fix dependencies
2245 	* tests/Makefile.am: we need atconfig and atlocal to be up to date
2246 	when calling testsuite.
2247 
2248 2012-07-18  Akim Demaille  <akim@lrde.epita.fr>
2249 
2250 	doc: fix Texinfo command
2251 	* doc/bison.texi: In parens, use @pxref.
2252 
2253 2012-07-18  Akim Demaille  <akim@lrde.epita.fr>
2254 
2255 	maint: Valgrind on OS X.
2256 	* configure.ac (VALGRIND_PREBISON): New.
2257 	* tests/Makefile.am (maintainer-check-valgrind): Use it.
2258 	* etc/darwin11.4.0.supp: New.
2259 	* configure.ac, etc/Makefile.am: Use it.
2260 	* configure.ac: Disable Valgrind on Mac OS X.
2261 	* README-hacking: Explain why.
2262 
2263 2012-07-17  Akim Demaille  <akim@lrde.epita.fr>
2264 
2265 	tests: be sure that backups are safe.
2266 	* tests/local.at (at_save_special_files): here.
2267 
2268 2012-07-17  Akim Demaille  <akim@lrde.epita.fr>
2269 
2270 	maint: dead comment.
2271 	* etc/README: here.
2272 
2273 2012-07-17  Akim Demaille  <akim@lrde.epita.fr>
2274 
2275 	tests: refactor for legibility.
2276 	* tests/local.at (AT_BISON_CHECK_WARNINGS, AT_BISON_CHECK_WARNINGS_):
2277 	New.
2278 
2279 2012-07-17  Akim Demaille  <akim@lrde.epita.fr>
2280 
2281 	tests: refactor the bison invocations.
2282 	* tests/local.at (m4_null_if, AT_BISON_CHECK_): New.
2283 
2284 2012-07-17  Akim Demaille  <akim@lrde.epita.fr>
2285 
2286 	maint: fix syntax-check ignore patterns.
2287 	* cfg.mk: here.
2288 
2289 2012-07-17  Akim Demaille  <akim@lrde.epita.fr>
2290 
2291 	gnulib: update
2292 
2293 2012-07-16  Akim Demaille  <akim@lrde.epita.fr>
2294 
2295 	gnulib: update.
2296 	* gnulib: Update so that gitlog-to-changelog support --srcdir.
2297 	* Makefile.am: Use it.
2298 
2299 2012-07-10  Akim Demaille  <akim@lrde.epita.fr>
2300 
2301 	gnulib: update
2302 	* bootstrap, build-aux/.gitignore, gnulib, m4/.gitignore: update.
2303 
2304 2012-07-06  Akim Demaille  <akim@lrde.epita.fr>
2305 
2306 	maint: update release instructions
2307 	* README-hacking: here.
2308 
2309 2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
2310 
2311 	maint: post-release administrivia
2312 	* NEWS: Add header line for next release.
2313 	* .prev-version: Record previous version.
2314 	* cfg.mk (old_NEWS_hash): Auto-update.
2315 
2316 2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
2317 
2318 	version 2.5.90
2319 	* NEWS: Record release date.
2320 
2321 2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
2322 
2323 	build: fix gen-ChangeLog call.
2324 	* Makefile.am: Be sure to catch errors, and fix option name
2325 
2326 2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
2327 
2328 	gnulib: update.
2329 	* gnulib/build-aux/do-release-commit-and-tag: Fix.
2330 
2331 2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
2332 
2333 	tests: fix SKIP_IF for Java.
2334 	* tests/local.at (AT_JAVA_COMPILE): here.
2335 
2336 2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
2337 
2338 	api.prefix: incompatible with %name-prefix.
2339 	* data/bison.m4: Make it incompatible.
2340 	* tests/input.at: Check that it is.
2341 
2342 2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
2343 
2344 	api.prefix: strengthen the tests and fix push-parsers.
2345 	* tests/calc.at: Check api.prefix in addition to %name-prefix.
2346 	* tests/headers.at: Check push parsers and pure interface.
2347 	* tests/local.at: Use YYLTYPE renamed.
2348 	* data/yacc.c (b4_declare_yyparse_push_): Handle api.prefix.
2349 	* doc/bison.texi: Style changes.
2350 
2351 2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
2352 
2353 	skeletons: style changes.
2354 	* data/bison.m4: Define default values after having defined
2355 	the support macros.
2356 	Kill a dead comment.
2357 
2358 2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
2359 
2360 	NEWS: minor changes.
2361 	* NEWS: style changes.
2362 
2363 2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
2364 
2365 	api.prefix: improve the documentation for YYDEBUG.
2366 	* doc/bison.texi: Explain how api.prefix is applied to YYDEBUG.
2367 
2368 2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
2369 
2370 	gnulib: update.
2371 	* bootstrap, gnulib: Update.
2372 	* cfg.mk (syntax-check): Don't check "error" usage in bison.texi.
2373 
2374 2012-07-04  Akim Demaille  <akim@lrde.epita.fr>
2375 
2376 	tests: headers.at: strengthen.
2377 	* tests/headers.at (Several headers): Be stricter when checking
2378 	the exported macros.
2379 
2380 2012-07-04  Akim Demaille  <akim@lrde.epita.fr>
2381 
2382 	glr.cc: do not override C++ definitions by C macros.
2383 	* data/glr.c: here.
2384 	* data/glr.cc: Fix overquotation.
2385 	* tests/headers.at: Comment changes.
2386 
2387 2012-07-04  Akim Demaille  <akim@lrde.epita.fr>
2388 
2389 	YYLLOC_DEFAULT: factor, and don't export it in headers.
2390 	* data/c++.m4, data/c.m4 (b4_yylloc_default_define): New.
2391 	* data/glr.c, data/glr.cc, data/lalr1.cc, data/yacc.c: Use it.
2392 	* data/glr.cc: Do not define YYLLOC_DEFAULT in the header file,
2393 	but in the implementation one.
2394 
2395 2012-07-04  Akim Demaille  <akim@lrde.epita.fr>
2396 
2397 	api.prefix: do not use #define to handle YYSTYPE_IS_TRIVIAL etc.
2398 	The following mixture is insane:
2399 
2400 	  #define YYSTYPE_IS_TRIVIAL PREFIX_STYPE_IS_TRIVIAL
2401 	  #if (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)
2402 
2403 	since, of course YYSTYPE_IS_TRIVIAL is defined.  Instead we could
2404 	define YYSTYPE_IS_TRIVIAL as PREFIX_STYPE_IS_TRIVIAL only when the
2405 	later is defined, but let's avoid stacking CPP on top of M4: rather, use
2406 
2407 	  #if (defined PREFIX_STYPE_IS_TRIVIAL && PREFIX_STYPE_IS_TRIVIAL)
2408 
2409 	* data/glr.c, data/yacc.c: Use YYSTYPE_IS_TRIVIAL, YYSTYPE_IS_DECLARED,
2410 	YYLTYPE_IS_TRIVIAL and YYLTYPE_IS_DECLARED under their api.prefix-renamed
2411 	name.
2412 
2413 2012-07-04  Akim Demaille  <akim@lrde.epita.fr>
2414 
2415 	tests: portability fixes.
2416 	Reported by Hydra.
2417 
2418 	* tests/headers.at (Several headers): Be sure to include config.h
2419 	in the files to compile.
2420 
2421 2012-07-04  Akim Demaille  <akim@lrde.epita.fr>
2422 
2423 	c++: fewer #includes in the headers.
2424 	* data/lalr1.cc: Define YY_NULL in the *.cc file, it is not needed
2425 	in the header.
2426 	* data/location.cc: iosfwd suffices.
2427 
2428 2012-07-04  Akim Demaille  <akim@lrde.epita.fr>
2429 
2430 	glr.cc: formatting changes.
2431 	* data/glr.cc: here.
2432 
2433 2012-07-04  Akim Demaille  <akim@lrde.epita.fr>
2434 
2435 	tests: more logs.
2436 	* tests/headers.at (Several parsers): Here.
2437 
2438 2012-07-04  Akim Demaille  <akim@lrde.epita.fr>
2439 
2440 	api.prefix: also rename YYDEBUG.
2441 	The testsuite in master has shown weird errors for the "Mulitple
2442 	Parsers" tests: the caller of p5.parse() received some apparently
2443 	random value, while tracing p5.parse() showed that the function was
2444 	consistently returning 0.
2445 
2446 	It happens when mixing several parser headers, some generated without
2447 	%debug, others with.  In particular the C++ parser was generated with
2448 	%debug, i.e., with:
2449 
2450 	  #ifndef YYDEBUG
2451 	  # define YYDEBUG 1
2452 	  #endif
2453 
2454 	and compiled separatedly.  Yet, its header was included after the one
2455 	of another parser, this time without %debug, i.e., with
2456 
2457 	  #ifndef YYDEBUG
2458 	  # define YYDEBUG 0
2459 	  #endif
2460 
2461 	in its header.  As a result, the parser was compiled with YYDEBUG set,
2462 	but its header was used without.  Since the layout of the objects are
2463 	then completely different, boom.
2464 
2465 	Therefore, do not change the value of YYDEBUG.  Rather, use it as a
2466 	default value for <API.PREFIX>DEBUG.
2467 
2468 	* data/c.m4 (b4_YYDEBUG_define): New.
2469 	(b4_declare_yydebug): Rename as...
2470 	(b4_yydebug_declare): this, for consistency.
2471 	* data/glr.c, data/glr.cc, data/lalr1.cc, data/yacc.c: Use it.
2472 	* NEWS: Document it.
2473 
2474 2012-07-02  Akim Demaille  <akim@lrde.epita.fr>
2475 
2476 	NEWS: spell check.
2477 	* NEWS: here.
2478 
2479 2012-06-29  Akim Demaille  <akim@lrde.epita.fr>
2480 
2481 	api.prefix.
2482 	* data/c.m4 (b4_api_prefix, b4_api_PREFIX): New.
2483 	(b4_prefix, b4_union_name, b4_token_enums, b4_declare_yylstype): Use them.
2484 	* data/glr.c, data/yacc.c, data/glr.cc, data/lalr1.cc: Use them to change
2485 	the prefix of exported preprocessor symbols.
2486 	* src/getargs.c (usage): Ditto.
2487 	* tests/headers.at (Several parsers): New.
2488 	* tests/local.at (AT_API_PREFIX): New.
2489 	AT_YYSTYPE, AT_YYLTYPE): Adjust.
2490 	* doc/bison.texi (Multiple Parsers): Move documentation of %name-prefix to...
2491 	(Table of Symbols): here.
2492 	(Multiple Parsers): Document api.prefix.
2493 	(%define Summary): Point to it.
2494 	Use @code for variable names.
2495 	(Bison Options): -p/--name-prefix are obsoleted.
2496 	* NEWS: Announce api.prefix.
2497 
2498 2012-06-28  Akim Demaille  <akim@lrde.epita.fr>
2499 
2500 	tests: use the generalized default yylex.
2501 	* tests/actions.at, tests/glr-regression.at, tests/regression.at: here.
2502 
2503 2012-06-28  Akim Demaille  <akim@lrde.epita.fr>
2504 
2505 	tests: AT_YYERROR_DEFINE: prepare for list of ints.
2506 	* tests/local.at (AT_YYERROR_DEFINE): Don't add quotes, check their
2507 	presence to detect char/int types.
2508 	* tests/actions.at, tests/conflicts.at, tests/glr-regression.at,
2509 	* tests/push.at, tests/regression.at: Adjust.
2510 
2511 2012-06-27  Akim Demaille  <akim@lrde.epita.fr>
2512 
2513 	skeletons: no longer define YYLSP_NEEDED.
2514 	* data/c.m4, data/glr.cc: here.
2515 	* NEWS, TODO: Adjust.
2516 
2517 2012-06-27  Akim Demaille  <akim@lrde.epita.fr>
2518 
2519 	c++: do not export YYTOKEN_TABLE and YYERROR_VERBOSE.
2520 	* src/output.c (prepare_symbols): Do not define b4_token_table.
2521 	(prepare): Define b4_token_table_flag.
2522 	* data/bison.m4 (b4_token_table_if): New.
2523 	Arm it when error-verbose.
2524 	* data/glr.c, data/yacc.c (YYTOKEN_TABLE): Remove.
2525 	Use m4.
2526 	* data/lalr1.cc: Likewise.
2527 	(YYERROR_VERBOSE): Remove.
2528 	* NEWS, doc/bison.texi: Document this.
2529 
2530 2012-06-26  Akim Demaille  <akim@lrde.epita.fr>
2531 
2532 	maint: use *.texi.
2533 	This is more consistent with the other packages, and Automake-NG
2534 	supports only *.texi.
2535 
2536 	* doc/bison.texinfo: Rename as...
2537 	* doc/bison.texi: this.
2538 	* doc/Makefile.am, examples/calc++/Makefile.am: Adjust.
2539 
2540 2012-06-26  Akim Demaille  <akim@lrde.epita.fr>
2541 
2542 	tests: do not output m4 set up.
2543 	* tests/local.at (AT_BISON_OPTION_PUSHDEFS, AT_BISON_OPTION_POPDEFS):
2544 	Use a diversion to avoid outputting comments etc.
2545 	Removes 17k lines from testsuite (10% of the number of lines).
2546 
2547 2012-06-26  Akim Demaille  <akim@lrde.epita.fr>
2548 
2549 	tests: use the generic yyerror function.
2550 	* tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Factor.
2551 	Use AT_YYERROR_DEFINE.
2552 	Therefore, instead of using stdout, use and check stderr.
2553 	* tests/glr-regression.at (Uninitialized location when reporting ambiguity):
2554 	Use AT_YYERROR_DEFINE.
2555 
2556 2012-06-26  Akim Demaille  <akim@lrde.epita.fr>
2557 
2558 	tests: use assert instead of plain abort.
2559 	* tests/actions.at, tests/calc.at, tests/conflicts.at,
2560 	* tests/cxx-type.at, tests/glr-regression.at, tests/input.at,
2561 	* tests/named-refs.at, tests/regression.at, tests/torture.at,
2562 	* tests/local.at:
2563 	Prefer assert to abort.
2564 
2565 2012-06-26  Akim Demaille  <akim@lrde.epita.fr>
2566 
2567 	tests: improve the generic yylex implementation.
2568 	* tests/local.at (AT_YYSTYPE, AT_YYLTYPE): New.
2569 	(AT_YYLEX_FORMALS): Use them.
2570 	(AT_YYLEX_DEFINE): Be independent of the location implementation.
2571 
2572 2012-06-26  Akim Demaille  <akim@lrde.epita.fr>
2573 
2574 	tests: generalize the compilation macros.
2575 	* tests/local.at (AT_COMPILE, AT_COMPILE_CXX): If OUTPUT ends with ".o",
2576 	then append the "natural" extension for the input file (.c or .cc).
2577 	If there is no source, pass -c.
2578 	* tests/headers.at, tests/input.at, tests/regression.at: Adjust.
2579 
2580 2012-06-26  Akim Demaille  <akim@lrde.epita.fr>
2581 
2582 	tests: fix confusion between api.prefix and name-prefix.
2583 	* tests/local.at (AT_NAME_PREFIX): Take api.prefix into account.
2584 	(AT_API_PREFIX): Rename as...
2585 	(AT_API_prefix): this.
2586 	Do not take %name-prefix into account.
2587 	Fix misuses.
2588 
2589 2012-06-26  Akim Demaille  <akim@lrde.epita.fr>
2590 
2591 	maint: gitignores.
2592 
2593 2012-06-25  Akim Demaille  <akim@lrde.epita.fr>
2594 
2595 	yacc: work around the ylwrap limitation.
2596 	* data/yacc.c (b4_shared_declarations): Include the header guards.
2597 	Do not include the header in the *.c file, duplicate it.
2598 	* NEWS (Future Changes): Extend, and announce the forthcoming change
2599 	about the use of the parser header.
2600 
2601 2012-06-22  Akim Demaille  <akim@lrde.epita.fr>
2602 
2603 	tests: more uniformity.
2604 	* tests/local.at (AT_LEX_FORMALS, AT_LEX_ARGS, AT_LEX_PRE_FORMALS)
2605 	(AT_LEX_PRE_ARGS): Rename as...
2606 	(AT_YYLEX_FORMALS, AT_YYLEX_ARGS, AT_YYLEX_PRE_FORMALS)
2607 	(AT_YYLEX_PRE_ARGS): these, for consistency.
2608 	(AT_API_PREFIX): Take %name-prefix into account.
2609 	(AT_YYLEX_PROTOTYPE): New.
2610 	Use it.
2611 	* tests/actions.at, tests/calc.at, tests/cxx-type.at: Adjust to
2612 	use them.
2613 
2614 2012-06-22  Akim Demaille  <akim@lrde.epita.fr>
2615 
2616 	tests: handle locations in a more generic way.
2617 	* tests/local.at (AT_YYERROR_PROTOTYPE): New.
2618 	Use it.
2619 	* tests/cxx-type.at: Extensive revamp to use a more traditional
2620 	quotation scheme, and to use the generic yyerror implementation.
2621 	Prefer Autotest macros to CPP macros.
2622 	* tests/java.at: .
2623 
2624 2012-06-22  Akim Demaille  <akim@lrde.epita.fr>
2625 
2626 	tests: handle locations in the generic yyerror functions.
2627 	* tests/local.at (AT_YYERROR_DECLARE_EXTERN, AT_YYERROR_DECLARE)
2628 	(AT_YYERROR_DEFINE): Handle locations for C and C++.
2629 	* tests/calc.at: Use it for C++ (as C has extra arguments which
2630 	are not yet handled by AT_BISON_OPTION_PUSHDEFS).
2631 	* tests/actions.at: Adjust.
2632 
2633 2012-06-22  Akim Demaille  <akim@lrde.epita.fr>
2634 
2635 	tests: fix AT_CHECK_CALC.
2636 	* tests/calc.at (AT_CHECK_CALC): Contrary to its documentation,
2637 	the test was skipped if given a second argument.
2638 	Unused feature, remove it.
2639 
2640 2012-06-22  Akim Demaille  <akim@lrde.epita.fr>
2641 
2642 	tests: improve infrastructure
2643 	* tests/local.at (AT_LANG): Use c++ instead of cxx for C++.
2644 	Adjust dependencies.
2645 	(AT_YYERROR_DECLARE_EXTERN, AT_YYERROR_DECLARE): Issue nothing
2646 	for C++/Java.
2647 	(AT_YYERROR_DEFINE): Use m4_case.
2648 	(AT_JAVA_COMPILE): Use AT_SKIP_IF.
2649 
2650 2012-06-21  Akim Demaille  <akim@lrde.epita.fr>
2651 
2652 	tests: factor.
2653 	* tests/glr-regression.at, tests/output.at, tests/push.at,
2654 	* tests/regression.at, tests/torture.at, tests/actions.at:
2655 	Use AT_YYLEX_* and AT_YYERROR_*.
2656 
2657 2012-06-21  Akim Demaille  <akim@lrde.epita.fr>
2658 
2659 	skeletons: minor style changes
2660 	* data/glr.c, data/yacc.c: here.
2661 
2662 2012-06-21  Akim Demaille  <akim@lrde.epita.fr>
2663 
2664 	tests: AT_LANG.
2665 	* tests/local.at (AT_BISON_OPTION_PUSHDEFS, AT_BISON_OPTION_POPDEFS):
2666 	Define/undefine AT_LANGE
2667 	(AT_LANG_COMPILE): New.
2668 	(AT_FULL_COMPILE): Use AT_LANG.
2669 
2670 2012-06-21  Akim Demaille  <akim@lrde.epita.fr>
2671 
2672 	c skeletons: factor the declaration of yylloc and yylval.
2673 	There is one difference: now, even without --defines, we generate
2674 	extern declarations for these variables.  The factoring is worth it.
2675 	* data/c.m4 (b4_declare_yylstype): Declare them.
2676 	* data/glr.c, data/yacc.c: Adjust.
2677 
2678 2012-06-21  Akim Demaille  <akim@lrde.epita.fr>
2679 
2680 	news: condemn YYPARSE_PARAM and YYLEX_PARAM.
2681 	* NEWS: here.
2682 	(Bison 1.875): Add %parse-param and %lex-param.
2683 	* doc/bison.texinfo: Spello.
2684 
2685 2012-06-20  Akim Demaille  <akim@lrde.epita.fr>
2686 
2687 	maint: regen.
2688 	* Makefile.am (regen): New target.
2689 
2690 2012-06-19  Akim Demaille  <akim@lrde.epita.fr>
2691 
2692 	maint: formatting changes.
2693 	* NEWS: Fix indentation of code snippets.
2694 	Untabify.
2695 
2696 2012-06-17  Akim Demaille  <akim@lrde.epita.fr>
2697 
2698 	tests: support api.prefix.
2699 	* tests/local.at (AT_BISON_OPTION_PUSHDEFS, AT_BISON_OPTION_POPDEFS):
2700 	Define AT_API_PREFIX.
2701 	(AT_YYERROR_DEFINE, AT_YYERROR_DECLARE_EXTERN, AT_YYLEX_DECLARE_EXTERN)
2702 	(AT_YYLEX_DEFINE): Use it.
2703 	* tests/input.at, tests/regression.at, tests/torture.at: Add
2704 	AT_BISON_OPTION_PUSHDEFS/POPDEFS.
2705 
2706 2012-06-17  Akim Demaille  <akim@lrde.epita.fr>
2707 
2708 	tests: pacify font-lock-mode.
2709 	* tests/local.at: here.
2710 
2711 2012-06-17  Akim Demaille  <akim@lrde.epita.fr>
2712 
2713 	tests: remove test covered elsewhere.
2714 	* tests/headers.at (%union and --defines): Remove, pretty useless and
2715 	insignificant.
2716 
2717 2012-06-17  Akim Demaille  <akim@lrde.epita.fr>
2718 
2719 	tests: factor the declaration/definition of yyerror and yylex.
2720 	* tests/local.at (AT_YYERROR_DECLARE, AT_YYERROR_DECLARE_EXTERN)
2721 	(AT_YYERROR_DEFINE, AT_YYLEX_DECLARE, AT_YYLEX_DECLARE_EXTERN)
2722 	(AT_YYLEX_DEFINE): New.
2723 	Must be used inside AT_BISON_OPTION_PUSHDEFS/POPDEFS pair.
2724 	* tests/actions.at, tests/conflicts.at, tests/glr-regression.at,
2725 	* tests/headers.at, tests/input.at, tests/named-refs.at,
2726 	* tests/regression.at, tests/skeletons.at, tests/synclines.at,
2727 	* tests/torture.at: Use them.
2728 
2729 2012-06-17  Akim Demaille  <akim@lrde.epita.fr>
2730 
2731 	regen.
2732 
2733 2012-06-17  Akim Demaille  <akim@lrde.epita.fr>
2734 
2735 	tests: portability issues.
2736 	* tests/calc.at (AT_CALC_MAIN): Missing include reported by Hydra.
2737 
2738 2012-06-15  Akim Demaille  <akim@lrde.epita.fr>
2739 
2740 	tests: call the parser from another compilation unit.
2741 	In order to improve the testing of %defines, which exports the
2742 	interface of the generated parser, change the calc.at tests so that
2743 	when %defines is passed, main will be in another compilation unit.  It
2744 	loads the generated header.
2745 
2746 	* tests/calc.at (AT_CALC_MAIN): New.
2747 	Includes the definition of the global variables.
2748 	Therefore, now declare them from the %requires section of the parser.
2749 	Adjust to yydebug and yyparse being renamed by %name-prefix.
2750 
2751 2012-06-15  Akim Demaille  <akim@lrde.epita.fr>
2752 
2753 	glr.c, yacc.c: declare yydebug in the header.
2754 	* data/c.m4 (b4_declare_yydebug): New.
2755 	* data/glr.c, data/yacc.c (b4_shared_declarations): Use it.
2756 	Remove the corresponding code from the parser body.
2757 	* NEWS: Doc this.
2758 
2759 2012-06-15  Akim Demaille  <akim@lrde.epita.fr>
2760 
2761 	skeletons: use header guards.
2762 	* data/glr.c, data/glr.cc, data/yacc.c: here.
2763 	* NEWS: Document it.
2764 
2765 2012-06-15  Akim Demaille  <akim@lrde.epita.fr>
2766 
2767 	tests: improve AT_FULL_COMPILE.
2768 	* tests/local.at: Accept a third argument.
2769 	Simplify quotation pattern.
2770 	Calls for better refactoring, but will suffice for a while.
2771 
2772 2012-06-15  Akim Demaille  <akim@lrde.epita.fr>
2773 
2774 	tests: reorder.
2775 	* tests/calc.at (power): Move its definition, as a preparation for
2776 	forthcoming changes.
2777 	And space changes.
2778 
2779 2012-06-15  Akim Demaille  <akim@lrde.epita.fr>
2780 
2781 	tests: strengthen the test on generated headers inclusion
2782 	* tests/headers.at (AT_TEST_CPP_GUARD_H): Accept Bison directives.
2783 	(Invalid CPP headers): Check glr.
2784 
2785 2012-06-15  Akim Demaille  <akim@lrde.epita.fr>
2786 
2787 	yacc.c: instead of duplicating y.tab.h inside y.tac.c, include it.
2788 	This is already what glr.c and lalr1.cc do.
2789 
2790 	* data/yacc.c: here.
2791 
2792 2012-06-13  Akim Demaille  <akim@lrde.epita.fr>
2793 
2794 	yacc.c: factor.
2795 	yacc.c used to include two almost identical sections: one for the *.h
2796 	file, and another for the *.c file.  The main difference is that in
2797 	the *.c file we used the yy* names (as %name-prefix is handled by
2798 	"#define yy* <prefix>*" before), while the *.hh used <prefix>* names.
2799 	Keep only the later.  If this is troublesome, b4_shared_declarations
2800 	can easily take the desired prefix as argument.
2801 
2802 	* data/yacc.c (b4_shared_declarations): New.
2803 	Use it to factor duplicated declarations.
2804 
2805 2012-06-12  Akim Demaille  <akim@lrde.epita.fr>
2806 
2807 	skeletons: factor yacc.c and glr.c.
2808 	yacc.c and glr.c share common declarations.  Their YYLTYPE are exactly
2809 	equal, and their YYSTYPE are sufficiently alike to be fused (its
2810 	declaration was protected by YYSTYPE_IS_DECLARED in yacc.c, but not in
2811 	glr.c).  Besides, yacc.c duplicated the definitions of YYLTYPE and
2812 	YYSTYPE (*.h/*.c).
2813 
2814 	* data/c.m4 (b4_declare_yylstype): New.
2815 	* data/yacc.c, data/glr.c: Use it.
2816 
2817 2012-06-12  Akim Demaille  <akim@lrde.epita.fr>
2818 
2819 	glr.c: minor refactoring.
2820 	* data/glr.c (b4_shared_declarations): Move from the generated file
2821 	section, to the M4 prologue.
2822 
2823 2012-06-12  Akim Demaille  <akim@lrde.epita.fr>
2824 
2825 	tests: remove all the -On flags.
2826 	* tests/atlocal.in: Here.
2827 	Reported by Gilles Espinasse.
2828 
2829 2012-06-12  Akim Demaille  <akim@lrde.epita.fr>
2830 
2831 	maint: fix spello.
2832 	* README-hacking: Here.
2833 	* THANKS: Reported by Gilles Espinasse.
2834 
2835 2012-06-12  Akim Demaille  <akim@lrde.epita.fr>
2836 
2837 	maint: improve release procedure instructions.
2838 	* gnulib: Update, in particular (README-release).
2839 	* bootstrap.conf: don't require gendocs, provided by gnu-web-doc-update,
2840 	provided by readme-release.
2841 	* README-hacking: Update accordingly.
2842 
2843 2012-06-07  Akim Demaille  <akim@lrde.epita.fr>
2844 
2845 	gnulib: update readme-release.
2846 	* gnulib (readme-release): Now includes the modules it promotes.
2847 	* bootstrap.conf: Simplify accordingly.
2848 
2849 2012-06-07  Akim Demaille  <akim@lrde.epita.fr>
2850 
2851 	maint: cfg.mk: manual title.
2852 	* cfg.mk (manuel_title): New.
2853 
2854 2012-06-07  Akim Demaille  <akim@lrde.epita.fr>
2855 
2856 	maint: cfg.mk: simplify
2857 	* cfg.mk: Remove bits provided by maint.mk.
2858 
2859 2012-06-07  Akim Demaille  <akim@lrde.epita.fr>
2860 
2861 	maint: post-release administrivia
2862 	* NEWS: Add header line for next release.
2863 	* .prev-version: Record previous version.
2864 	* cfg.mk (old_NEWS_hash): Auto-update.
2865 
2866 2012-06-05  Akim Demaille  <akim@lrde.epita.fr>
2867 
2868 	version 2.5.1
2869 	* NEWS: Record release date.
2870 
2871 2012-06-05  Akim Demaille  <akim@lrde.epita.fr>
2872 
2873 	NEWS: prepare for 2.5.1.
2874 	* NEWS: Be compliant with do-release-commit-and-tag.
2875 
2876 2012-06-05  Akim Demaille  <akim@lrde.epita.fr>
2877 
2878 	maint: update release procedure
2879 	* bootstrap.conf: Request do-release-commit-and-tag and readme-release.
2880 	* README-hacking: Adjust.
2881 
2882 2012-06-05  Jim Meyering  <meyering@redhat.com>
2883 
2884 	maint: fix comment typos
2885 	Using http://github.com/lyda/misspell-check, massage its
2886 	output into sed commands to perform the suggested changes.
2887 	Initially, I filtered out the THRU->Through changes, because
2888 	that failed to retain capitalization in the grammar token.
2889 	Instead, do this manually, beforehand:
2890 
2891 	sed -i s/THRU/THROUGH/ tests/existing.at
2892 	git ls-files|misspellings -f -|perl -nl \
2893 	  -e '/^(.*?)\[(\d+)\]: (\w+) -> "(.*?)"$/ or next;' \
2894 	  -e '($file,$n,$l,$r)=($1,$2,$3,$4); $q="'\''"; $r=~s/$q/$q\\$q$q/g;'\
2895 	  -e 'print "sed -i $q${n}s!$l!$r!$q $file"'|bash
2896 
2897 2012-05-23  Akim Demaille  <akim@lrde.epita.fr>
2898 
2899 	maint: post-release administrivia
2900 	* NEWS: Add header line for next release.
2901 	* .prev-version: Record previous version.
2902 	* cfg.mk (old_NEWS_hash): Auto-update.
2903 
2904 2012-05-23  Akim Demaille  <akim@lrde.epita.fr>
2905 
2906 	Bison 2.5.1_rc2.
2907 	* NEWS: Update.
2908 
2909 2012-05-23  Akim Demaille  <akim@lrde.epita.fr>
2910 
2911 	doc: fixes.
2912 	* doc/bison.texinfo: Fix errors spotted by syntax-check.
2913 
2914 2012-05-23  Akim Demaille  <akim@lrde.epita.fr>
2915 
2916 	build: fix ChangeLog generation.
2917 	* gnulib: Update to get newest gitlog-to-changelog.
2918 	* bootstrap: Update.
2919 	* Makefile.am (gen-ChangeLog): Fix for Bison's git log style.
2920 
2921 2012-05-21  Akim Demaille  <akim@lrde.epita.fr>
2922 
2923 	c++: compute the header guards.
2924 	This is a frequent request.  Recently pointed out by Wei Song,
2925 	<http://lists.gnu.org/archive/html/help-bison/2012-05/msg00002.html>.
2926 
2927 	* data/c.m4 (b4_tocpp, b4_cpp_guard, b4_cpp_guard_open)
2928 	(b4_cpp_guard_close): New.
2929 	* data/lalr1.cc, data/location.cc, data/stack.hh: Use them.
2930 	* TODO (Header Guards): Move to...
2931 	* NEWS: here.
2932 	Formatting changes.
2933 
2934 2012-05-21  Akim Demaille  <akim@lrde.epita.fr>
2935 
2936 	skeletons: remove support for unused directive.
2937 	* src/scan-skel.l (@dir_prefix@): Remove support, has never been
2938 	used, not even in the commit that introduced it,
2939 	2b81e969ea04c1a6502928ba7e847ec8ff7dcb2f.
2940 
2941 2012-05-21  Akim Demaille  <akim@lrde.epita.fr>
2942 
2943 	lalr1.cc: improve Doxygen documentation.
2944 	* data/location.cc: Qualify file names with directory name.
2945 
2946 2012-05-21  Akim Demaille  <akim@lrde.epita.fr>
2947 
2948 	lalr1.cc: extract stack.hh.
2949 	See commit 51bacae6b58fd5c6cce861f00440dc917384625e.
2950 	* data/stack.hh: New, extracted from...
2951 	* data/lalr1.cc: here.
2952 	* data/Makefile.am: Adjust.
2953 
2954 2012-05-21  Akim Demaille  <akim@lrde.epita.fr>
2955 
2956 	news: convert to double quotes.
2957 	* NEWS: Convert from `quoted' to "quoted".
2958 	Reported by Stefano Lattarini.
2959 	http://lists.gnu.org/archive/html/bison-patches/2012-05/msg00039.html
2960 
2961 2012-05-21  Akim Demaille  <akim@lrde.epita.fr>
2962 
2963 	space changes.
2964 	* src/flex-scanner.h: Indent nested cpp directives.
2965 
2966 2012-05-21  Akim Demaille  <akim@lrde.epita.fr>
2967 
2968 	build: do not prototype flex-generated functions.
2969 	Some versions of Flex, possibly modified by the distribution package
2970 	maintainers, have incompatible signatures.  Since newer versions of
2971 	Flex prototype their functions, avoid the conflicts in that case.
2972 	Reported by Stefano Lattarini.
2973 	<http://lists.gnu.org/archive/html/bug-bison/2012-05/msg00012.html>.
2974 
2975 	* src/flex-scanner.h (FLEX_VERSION_GT): New.
2976 	Use it to issue prototypes for flex-generated functions only for
2977 	versions up to 2.5.31, in accordance with the comment.
2978 	See commit dc9701e848f27ae64b6ddcf809580998667d60f2.
2979 	Use it to define yylex_destroy when needed.
2980 
2981 2012-05-16  Akim Demaille  <akim@lrde.epita.fr>
2982 
2983 	build: fix ChangeLog generation.
2984 	* Makefile.am (gen-ChangeLog): Fix for VPATH builds.
2985 
2986 2012-05-14  Akim Demaille  <akim@lrde.epita.fr>
2987 
2988 	Bison 2.5.1_rc1.
2989 	* NEWS: Update.
2990 	* src/parse-gram.c, src/parse-gram.h: Regen.
2991 
2992 2012-05-11  Akim Demaille  <akim@lrde.epita.fr>
2993 
2994 	tests: save/restore Autotest special files when checking XML support.
2995 	Currently the test 248, "parse-gram.y: LALR = IELR", fails
2996 	BISON_TEST_XML is set.
2997 
2998 	* tests/local.at (AT_BISON_CHECK_XML): Belt: Save/restore files.
2999 	* tests/regression.at (parse-gram.y: LALR = IELR): Suspenders: Don't
3000 	rely on expout.
3001 	Each one of these changes suffices.
3002 
3003 2012-05-11  Akim Demaille  <akim@lrde.epita.fr>
3004 
3005 	tests: AT_SAVE_SPECIAL_FILES / AT_RESTORE_SPECIAL_FILES.
3006 	Some of our macros play with expout and other Autotest special files,
3007 	which may break their callers (e.g., currently TESTSUITEFLAGS='248
3008 	BISON_TEST_XML=1' fails).
3009 
3010 	There is already some support for this.  Expand it to be ready to use
3011 	it elsewhere.
3012 
3013 	* tests/local.at (AT_RESTORE_SPECIAL_FILES, AT_SAVE_SPECIAL_FILES)
3014 	(at_save_special_files, at_restore_special_files): New.
3015 	(AT_BISON_CHECK_NO_XML): Use them.
3016 
3017 2012-05-11  Akim Demaille  <akim@lrde.epita.fr>
3018 
3019 	tests: honor TESTSUITEFLAGS in all the check targets.
3020 	* tests/Makefile.am (installcheck-local): Simplify.
3021 	(maintainer-check-posix, maintainer-check-valgrind): Honor
3022 	$(TESTSUITEFLAGS).
3023 
3024 2012-05-11  Akim Demaille  <akim@lrde.epita.fr>
3025 
3026 	build: do not enable c++ warnings on 0 when nullptr is not supported.
3027 	* configure.ac (WARN_CXXFLAGS): Enable -Wzero-as-null-pointer-constant
3028 	only when nullptr is supported..
3029 
3030 2012-05-11  Akim Demaille  <akim@lrde.epita.fr>
3031 
3032 	maint: update gnulib.
3033 	* bootstrap, gnulib: Update.
3034 
3035 2012-05-09  Akim Demaille  <akim@lrde.epita.fr>
3036 
3037 	build: config.in.h.
3038 	Historically we used config.hin (where everybody else used
3039 	config.h.in) to please DOS.  Now that we use gnulib, there are already
3040 	tons of files with several dots, especially *.in.h.
3041 
3042 	* configure.ac: Rename config.hin as config.in.h.
3043 
3044 2012-05-09  Akim Demaille  <akim@lrde.epita.fr>
3045 
3046 	build: move silent rules.
3047 	* tests/Makefile.am: In the generation of the test suite.
3048 
3049 2012-05-09  Akim Demaille  <demaille@gostai.com>
3050 
3051 	glr.c: reduce variable scopes.
3052 	* data/glr.c: Where appropriate, fuse variable declarations followed
3053 	by assignments by variable declarations with a value.
3054 	Where appropriate, introduce new scopes to limit variable spans.
3055 
3056 2012-05-08  Akim Demaille  <akim@lrde.epita.fr>
3057 
3058 	maint: maintainer-release-check.
3059 	* tests/Makefile.am (maintainer-release-check): New.
3060 	* Makefile.am (MAINTAINER_CHECKS): New.
3061 	Support maintainer-release-check.
3062 	* README-hacking: Document it, and syntax-check too.
3063 
3064 2012-05-08  Akim Demaille  <akim@lrde.epita.fr>
3065 
3066 	maint: shush a syntax-check.
3067 	* cfg.mk: lib/timevar is not planned to be gnulib'ed, as it comes
3068 	from GCC.
3069 
3070 2012-05-08  Akim Demaille  <akim@lrde.epita.fr>
3071 
3072 	maint: prefer "commit message" to "log entry".
3073 	* README-hacking: here.
3074 	Suggested by Stefano Lattarini.
3075 
3076 2012-05-08  Akim Demaille  <akim@lrde.epita.fr>
3077 
3078 	command line: fix minor leaks.
3079 	* src/getargs.c (getargs): Free pointers before allocating them new
3080 	content.
3081 
3082 2012-05-08  Akim Demaille  <akim@lrde.epita.fr>
3083 
3084 	maint: we no longer maintain the ChangeLog.
3085 	* .gitattributes: No need to merge it.
3086 	* README-hacking: Update release instructions.
3087 
3088 2012-05-06  Akim Demaille  <akim@lrde.epita.fr>
3089 
3090 	maint: fix the generation of the synclines for bison's parser.
3091 	* tests/bison.in: Import from master the changes that make
3092 	this script generate synclines that are independant of the
3093 	builddir/srcdir user's set up.
3094 
3095 2012-05-06  Akim Demaille  <akim@lrde.epita.fr>
3096 
3097 	maint: regen.
3098 	* src/parse-gram.c, src/parse-gram.h: Regen.
3099 
3100 2012-05-06  Akim Demaille  <akim@lrde.epita.fr>
3101 
3102 	maint: import the xmemdup0 gnulib module.
3103 	* bootstrap.conf: Require this module.
3104 	* src/parse-gram.y: Include xmemdup0.h.
3105 
3106 2012-05-06  Akim Demaille  <akim@lrde.epita.fr>
3107 
3108 	maint: remove left-over gnulib modules.
3109 	* bootstrap.conf (gnulib_modules): Remove pipe-posix.
3110 	* lib/.gitignore, m4/.gitignore: Remove files that we no longer use.
3111 
3112 2012-05-06  Akim Demaille  <akim@lrde.epita.fr>
3113 
3114 	maint: ignore files imported by autopoint.
3115 	* m4/.gitignore: here.
3116 
3117 2012-05-06  Akim Demaille  <akim@lrde.epita.fr>
3118 
3119 	build: AC_PROG_LEX: use more readable variable names.
3120 	* m4/flex.m4 (AC_PROG_LEX): Prefer LEX_IS_FLEX to FLEX.
3121 	Prefer true/false to yes/no for such variables.
3122 	* configure.ac: Adjust.
3123 
3124 2012-05-06  Jim Meyering  <meyering@redhat.com>
3125 
3126 	maint: regen src/parse-gram.[ch]
3127 
3128 2012-05-06  Jim Meyering  <meyering@redhat.com>
3129 	    Akim Demaille  <akim@lrde.epita.fr>
3130 
3131 	maint: simplify parse-gram.y
3132 	* src/parse-gram.y (add_param): Use xmemdup0 in place of
3133 	xmalloc+memcpy, and strspn in place of an open-coded loop.
3134 
3135 2012-05-06  Jim Meyering  <meyering@redhat.com>
3136 
3137 	maint: s/strncpy/memcpy/, when equivalent
3138 	* src/output.c (output_skeleton): Use memcpy, not strncpy,
3139 	since the source is known to fit in the destination buffer.
3140 	* src/parse-gram.y (%skeleton): Likewise.
3141 
3142 2012-05-04  Akim Demaille  <akim@lrde.epita.fr>
3143 
3144 	glr.c: untabify.
3145 	* data/glr.c: here.
3146 
3147 2012-05-04  Akim Demaille  <akim@lrde.epita.fr>
3148 
3149 	glr.cc: untabify.
3150 	* data/glr.cc: here.
3151 
3152 2012-05-04  Akim Demaille  <akim@lrde.epita.fr>
3153 
3154 	glr.cc: formatting changes.
3155 	* data/glr.cc: Fit in 80 columns.
3156 
3157 2012-05-04  Akim Demaille  <akim@lrde.epita.fr>
3158 
3159 	glr.cc: remove unused signature.
3160 	* data/glr.cc (yydestruct_): Not used, remove.
3161 	It is yydestruct which is used.
3162 
3163 2012-05-04  Akim Demaille  <akim@lrde.epita.fr>
3164 
3165 	glr.cc: properly declare locations are const where appropriate.
3166 	* data/glr.cc (yyerror): The location is const.
3167 
3168 2012-05-04  Akim Demaille  <akim@lrde.epita.fr>
3169 
3170 	doc: fix @xref.
3171 	* doc/bison.texinfo: here.
3172 
3173 2012-05-02  Akim Demaille  <akim@lrde.epita.fr>
3174 
3175 	tests: ignore code coverage/profiling failure messages
3176 	The Hydra buildfarm provides code coverage analysis.  For some reason,
3177 	in some test cases, code coverage data seem to be incompatible, and
3178 	generate error messages at parser run-time.  Ignore these messages so
3179 	that (i) these tests do pass, (ii) coverage results be provided by
3180 	Hydra.
3181 
3182 	* tests/local.at (AT_PARSER_CHECK): Ignore messages for failed merges
3183 	of code coverage/profiling results.
3184 
3185 2012-04-16  Akim Demaille  <akim@lrde.epita.fr>
3186 
3187 	doc: fix some invalid @ref.
3188 	* doc/bison.texinfo: Fix incorrect @ref uses.
3189 
3190 2012-04-16  Akim Demaille  <akim@lrde.epita.fr>
3191 
3192 	build: fix previous commit.
3193 	* bootstrap: Update from gnulib.
3194 
3195 2012-04-16  Akim Demaille  <akim@lrde.epita.fr>
3196 
3197 	install-pdf: fix.
3198 	* gnulib: Fix install-pdf in po/ and runtime-po/.
3199 	Reported by Hans Aberg.
3200 	Fixed by Joel E. Denny.
3201 	http://lists.gnu.org/archive/html/bug-bison/2011-05/msg00008.html
3202 
3203 2012-04-16  Akim Demaille  <akim@lrde.epita.fr>
3204 
3205 	NEWS: Update.
3206 	* NEWS: Spell check.
3207 	(%printer): is now documented.
3208 
3209 2012-04-16  Akim Demaille  <akim@lrde.epita.fr>
3210 
3211 	%printer: support both yyo and yyoutput.
3212 	lalr1.cc used to support yyo, but not yyoutput.  Support both,
3213 	but document only yyoutput (at least until there is some consensus
3214 	on this).
3215 
3216 	* data/c.m4 (yy_symbol_value_print): Also support yyo.
3217 	* data/glr.cc  (yy_symbol_value_print_): Support both yyo and yyoutput.
3218 	* data/lalr1.cc: Also support yyoutput.
3219 	* doc/bison.texinfo: Explicitly use yyoutput in the examples.
3220 	* examples/mfcalc/mfcalc.test: Test the -p option.
3221 
3222 2012-04-16  Akim Demaille  <akim@lrde.epita.fr>
3223 
3224 	doc: mfcalc: demonstrate %printer.
3225 	* doc/bison.texinfo (Printer Decl): New.
3226 	Number mfcalc.y snippets so that they are output in
3227 	the proper order.
3228 	(The mfcalc Main): Use yydebug.
3229 	(Debugging): Simplify the text.
3230 	(Enabling Traces, Mfcalc Traces, The YYPRINT Macro): New.
3231 	(Table of Symbols): Document YYPRINT and YYFPRINTF.
3232 
3233 2012-04-16  Akim Demaille  <akim@lrde.epita.fr>
3234 
3235 	tests: style changes.
3236 	* tests/input.at: Use "print" in %printer instead of "destroy".
3237 	It is unused, so we don't care, yet it is less surprising.
3238 	* tests/actions.at: Comment changes.
3239 
3240 2012-04-10  Akim Demaille  <akim@lrde.epita.fr>
3241 
3242 	build: require Flex.
3243 	* configure.ac: Require Flex.
3244 
3245 2012-04-10  Akim Demaille  <akim@lrde.epita.fr>
3246 
3247 	build: flex.m4: check for Flex.
3248 	* m4/flex.m4 (_AC_PROG_LEX_YYTEXT_DECL): Check that $LEX
3249 	supports some of the Flex options, and exclusive start conditions.
3250 	Define FLEX to 'yes'/'', as AC_PROG_CC does for GCC.
3251 
3252 2012-04-10  Akim Demaille  <akim@lrde.epita.fr>
3253 
3254 	build: flex.m4: quote properly.
3255 	* m4/flex.m4: Use quotes more systematically.
3256 
3257 2012-04-10  Akim Demaille  <akim@lrde.epita.fr>
3258 
3259 	build: flex.m4.
3260 	* m4/flex.m4: New.
3261 	An exact copy of what is in Autoconf currently.
3262 
3263 2012-04-10  Akim Demaille  <akim@lrde.epita.fr>
3264 
3265 	build: autoconf: update.
3266 	* submodules/autoconf: Update.
3267 	There are no changes in data/m4sugar/foreach.m4, and the
3268 	changes in data/m4sugar/m4sugar.m4 are minor.
3269 
3270 2012-04-10  Akim Demaille  <akim@lrde.epita.fr>
3271 
3272 	glr: eliminate last bits of unwanted locations.
3273 	* data/glr.c (YYLTYPE): Do not define when locations are
3274 	not demanded.
3275 	Adjust all dependencies.
3276 
3277 2012-04-10  Akim Demaille  <akim@lrde.epita.fr>
3278 
3279 	NEWS: 2.6 will drop K&R.
3280 	* NEWS: here.
3281 	(glr.c): Fix a spello.
3282 
3283 2012-04-09  Akim Demaille  <akim@lrde.epita.fr>
3284 
3285 	TODO: remove dead items.
3286 	* TODO (Documentation, %printer, Java): Remove, already done (or just
3287 	waiting for approval).
3288 	(Fortran, BTYacc): Remove, there does not seem to be demand.
3289 
3290 2012-04-09  Akim Demaille  <akim@lrde.epita.fr>
3291 
3292 	TODO: import from master.
3293 	* TODO: Copy the current version.
3294 
3295 2012-04-07  Akim Demaille  <akim@lrde.epita.fr>
3296 
3297 	gnulib: update.
3298 	* bootstrap.conf (bootstrap_sync): True again.
3299 	It was disabled while waiting for changes to be integrated
3300 	in gnulib's bootstrap, which was done long ago.
3301 	* bootstrap, gnulib: Update.
3302 
3303 2012-04-04  Akim Demaille  <akim@lrde.epita.fr>
3304 
3305 	maint: update NEWS.
3306 	* NEWS: Fix entry about __attribute__.
3307 	Reorder by "decreasing" order of importance.
3308 
3309 2012-04-04  Akim Demaille  <akim@lrde.epita.fr>
3310 
3311 	doc: fix index.
3312 	http://lists.gnu.org/archive/html/bison-patches/2012-04/msg00006.html
3313 
3314 	* doc/bison.texinfo: Avoid using @def* variant with more
3315 	than the defined entity as main entity, as it results in
3316 	an incorrect index.  For instance, don't document
3317 	{return YYERROR;}, which results in a single index entry
3318 	"return YYERROR;", but rather as typed function whose
3319 	return type is "type", and whose argument list is ";".
3320 
3321 2012-04-04  Akim Demaille  <akim@lrde.epita.fr>
3322 
3323 	doc: fix documentation of YYERROR.
3324 	* doc/bison.texinfo (Table of Symbols): Fix the documentation
3325 	of YYERROR by copying that from "Action Features".
3326 
3327 2012-04-01  Akim Demaille  <akim@lrde.epita.fr>
3328 
3329 	c++: more YY_NULL
3330 	Caught by maintainer-check-g++.
3331 	* data/glr.c, data/lalr1.cc, data/yacc.c, tests/cxx-type.at,
3332 	* tests/glr-regression.at, tests/push.at:
3333 	When simple to do, avoid expliciting the null ptr.
3334 	Otherwise use YY_NULL.
3335 
3336 2012-04-01  Akim Demaille  <akim@lrde.epita.fr>
3337 
3338 	bump to 2012 in skeletons.
3339 	* data/glr.c, data/glr.cc, data/lalr1.cc, data/lalr1.java,
3340 	* data/location.cc, data/yacc.c: Bump copyright year ranges.
3341 
3342 2012-04-01  Akim Demaille  <akim@lrde.epita.fr>
3343 
3344 	build: remove ancient Autoconf tests.
3345 	lib/subpipe.c was removed in 47fa574761319b0a422691223c9b8a9a72f36aa2.
3346 
3347 	* m4/subpipe.m4: Remove.
3348 	* configure.ac (BISON_PREREQ_SUBPIPE): Remove.
3349 
3350 2012-03-31  Akim Demaille  <akim@lrde.epita.fr>
3351 
3352 	doc: c++: complete the location documentation.
3353 	* data/location.cc (position::initialize, location::initialize):
3354 	Also accept line and column, with default values.
3355 	* doc/bison.texinfo (C++ position, C++ location): New nodes.
3356 	Describe more thoroughly these classes.
3357 	Fix several Texinfo misuses.
3358 
3359 2012-03-31  Akim Demaille  <demaille@gostai.com>
3360 
3361 	c++: locations: provide convenience constructors.
3362 	* data/location.cc (position::position): Accept file, line and
3363 	column as arguments with default values.
3364 	Always qualify initial line and column literals as unsigned.
3365 	(location::location): Provide convenience constructors.
3366 
3367 2012-03-31  Akim Demaille  <akim@lrde.epita.fr>
3368 
3369 	c++: locations: remove useless "inline".
3370 	* data/location.cc: "inline" is implicit when defining
3371 	methods in the class definition.
3372 
3373 2012-03-31  Akim Demaille  <akim@lrde.epita.fr>
3374 
3375 	glr: do not use locations when they are not requested
3376 	When the test suite runs with -O2 and warnings enabled, G++
3377 	complains of locations being used, but not initialized.
3378 	The simplest is to not use locations.
3379 
3380 	* data/glr.c (b4_locuser_formals, b4_locuser_args): New.
3381 	Use them when locations should not be used.
3382 	Use b4_locations_if where appropriate.
3383 	(yyuserAction): Modify the order to the arguments to make
3384 	it more alike the other routines, and to make use of
3385 	b4_locuser_args simpler.
3386 
3387 2012-03-31  Akim Demaille  <akim@lrde.epita.fr>
3388 
3389 	c++: use nullptr for C++11.
3390 	C++11 introduces "nullptr" which plays the role of C's NULL, in
3391 	replacement of "0".  Fix the C++ skeletons to avoid warnings about
3392 	uses of "0" in place of "nullptr", and improve C skeletons to also use
3393 	this "nullptr" when compiled with a C++11 compiler.
3394 
3395 	* configure.ac: More C++ warnings.
3396 	* NEWS (2.5.1): Document this.
3397 	* data/c++.m4, data/c.m4 (b4_null_define): New.
3398 	(b4_null): Use YY_NULL instead of 0.
3399 	* data/glr.c, data/lalr1.cc, data/location.cc, data/yacc.c:
3400 	Call b4_null_define/b4_null where appropriate.
3401 	Use YY_NULL instead of NULL.
3402 	* data/location.cc (initialize): Accept a default argument,
3403 	YY_NULL.
3404 	* tests/actions.at, tests/calc.at: Adjust.
3405 
3406 	* data/glr.c, lib/libiberty.h, src/system.h (__attribute__):
3407 	Do not disable it when __STRICT_ANSI__ is defined, as, for
3408 	instance, it disables the __attribute__((unused)) which
3409 	protects us from some compiler warnings.
3410 	This was already done elsewhere in Bison, in 2001, see
3411 	4a0d89369599a2cea01f4fbdf791f426a02cb5a3.
3412 	* tests/regression.at: Adjust output.
3413 
3414 2012-03-30  Akim Demaille  <akim@lrde.epita.fr>
3415 
3416 	build: simplify and improve the compiler warnings for tests.
3417 	* configure.ac (warn_common, warn_c, warn_cxx): New.
3418 	Use them to compute independently the options supported
3419 	by the C and C++ compilers.
3420 	Don't AC_SUBST the variables passed to gl_WARN_ADD: it
3421 	does it for us.
3422 	(WARN_CFLAGS_TEST, WARN_CXXFLAGS_TEST): Don't aggregate
3423 	$WARN_CFLAGS and $WARN_CXXFLAGS in them now, leave it
3424 	to atlocal.in.
3425 	(O0CFLAGS, O0CXXFLAGS): Move their definition to...
3426 	* tests/atlocal.in: here.
3427 	Be more systematic between C and C++.
3428 	Reorder to factor between variables.
3429 	Propagate all of the variables when --compile-c-with-cxx.
3430 
3431 2012-03-30  Akim Demaille  <akim@lrde.epita.fr>
3432 
3433 	gnulib: update.
3434 
3435 2012-03-30  Akim Demaille  <akim@lrde.epita.fr>
3436 
3437 	maint: formatting changes.
3438 	* src/system.h: Indent CPP directives using cppi.
3439 
3440 2012-03-27  Akim Demaille  <akim@lrde.epita.fr>
3441 
3442 	NEWS: update.
3443 	* NEWS: Java fixes, more about the doc changes, liby issues.
3444 
3445 2012-03-27  Tim Landscheidt  <tim@tim-landscheidt.de>
3446 
3447 	Java: Fix syntax error handling without error token.
3448 	* data/lalr1.java (YYParser::parse): Here.
3449 	* tests/java.at: Add test case.
3450 
3451 2012-03-24  Akim Demaille  <akim@lrde.epita.fr>
3452 
3453 	tests: beware of -pedantic on large #line numbers.
3454 	* tests/local.at (AT_TEST_TABLES_AND_PARSE): Don't pass -pedantic
3455 	when compiling large canonical-LR parsers.
3456 	Reported by Tys Lefering.
3457 	http://lists.gnu.org/archive/html/bug-bison/2012-03/msg00025.html
3458 
3459 2012-03-24  Akim Demaille  <akim@lrde.epita.fr>
3460 
3461 	tests: when using the C++ compiler, use its flags too.
3462 	* tests/local.at: Go for colors.
3463 	(--compile-c-with-cxx): New option.
3464 	We used to pass "CC=$CXX" as command line argument,
3465 	but it was not possible to adjust CFLAGS accordingly
3466 	in atlocal, since it is loaded before assignments on
3467 	the command line are honored (so that the command line
3468 	takes precedence).
3469 	* tests/atlocal.in: Implement it.
3470 	* tests/local.mk: Use it.
3471 
3472 2012-03-19  Akim Demaille  <akim@lrde.epita.fr>
3473 
3474 	doc: update the --verbose report format.
3475 	* doc/bison.texinfo (Understanding): Adjust to match the
3476 	current format.
3477 
3478 2012-03-19  Akim Demaille  <akim@lrde.epita.fr>
3479 
3480 	doc: spell check.
3481 	* doc/bison.texinfo: here.
3482 
3483 2012-03-19  Akim Demaille  <akim@lrde.epita.fr>
3484 
3485 	doc: stmt, not stmnt.
3486 	* doc/bison.texinfo: s/stmnt/stmt/g.  This is a
3487 	much more common abbreviation for "statement".
3488 
3489 2012-03-19  Akim Demaille  <akim@lrde.epita.fr>
3490 
3491 	doc: save width.
3492 	* doc/bison.texinfo (Language and Grammar): Use the same
3493 	layout for an example in all the versions, i.e., keep
3494 	as general case what used to be used only for Info.
3495 
3496 2012-03-19  Akim Demaille  <akim@lrde.epita.fr>
3497 
3498 	doc: reformat grammar snippets.
3499 	* doc/bison.texinfo: Convert the grammar examples to
3500 	use a narrower style.  This helps fitting into the
3501 	@smallbook constraints.
3502 	http://lists.gnu.org/archive/html/bison-patches/2012-03/msg00011.html
3503 
3504 2012-03-19  Akim Demaille  <akim@lrde.epita.fr>
3505 
3506 	doc: use only @example, not @smallexample.
3507 	* doc/bison.texinfo: Convert all @smallexamples into @examples.
3508 	Adjust layout where needed.
3509 
3510 2012-03-19  Akim Demaille  <akim@lrde.epita.fr>
3511 
3512 	doc: style changes.
3513 	* doc/bison.texinfo: Avoid line width issues with TeX.
3514 	Upgrade ancient messages.
3515 	Move some comments to better looking places.
3516 	Add more @group.
3517 	(Mfcalc Symbol Table): Reduce variable scopes.
3518 	Prefer size_t for sizes.
3519 	Prefer declarations with an initial value.
3520 	Fix a @group environment.
3521 
3522 2012-03-19  Paul Eggert  <eggert@cs.ucla.edu>
3523 
3524 	doc: minor fixes to "Understanding" section
3525 	* doc/bison.texinfo (Understanding): Minor wording fixes and
3526 	improvements.  Fixes problems reported in
3527 	<https://savannah.gnu.org/patch/?4306>.
3528 
3529 2012-03-13  Akim Demaille  <demaille@gostai.com>
3530 
3531 	tests: minor fixes/simplifications
3532 	* tests/local.at (AT_BISON_CHECK_NO_XML): Simplify sed programs,
3533 	quotation, and default value assignments.
3534 	Ensure a proper value to the numeric variables.
3535 	Reported by Lie Yan.
3536 	http://lists.gnu.org/archive/html/bug-bison/2012-03/msg00000.html
3537 
3538 2012-03-09  Akim Demaille  <demaille@gostai.com>
3539 
3540 	tests: be robust to quote style.
3541 	See <http://lists.gnu.org/archive/html/bug-bison/2012-01/msg00120.html>.
3542 
3543 	* src/main.c (main): Define the quoting style we use.
3544 	* tests/atlocal.in: Use ASCII style quotes during the tests.
3545 
3546 2012-03-09  Akim Demaille  <demaille@gostai.com>
3547 
3548 	maint: update gnulib.
3549 	* gnulib: update.
3550 	* src/scan-gram.l: Don't use the (former version of) STREQ.
3551 
3552 2012-03-06  Akim Demaille  <demaille@gostai.com>
3553 
3554 	tests: be robust to POSIXLY_CORRECT being defined.
3555 	* tests/local.at (AT_BISON_CHECK_NO_XML): Check if
3556 	POSIXLY_CORRECT is defined, not if it is defined to 1.
3557 	Reported by Lie Yan.
3558 	http://lists.gnu.org/archive/html/bug-bison/2012-03/msg00000.html
3559 
3560 2012-02-23  Akim Demaille  <demaille@gostai.com>
3561 
3562 	doc: fix environment issues.
3563 	* doc/bison.texinfo: Do not use @verbatim, in particular when
3564 	we use @group inside.
3565 	Use @quotation instead of @display for frequently asked questions,
3566 	it looks much nicer.
3567 
3568 2012-02-23  Akim Demaille  <demaille@gostai.com>
3569 
3570 	regen.
3571 	* src/parse-gram.h, src/parse-gram.c: regen.
3572 
3573 2012-02-23  Akim Demaille  <demaille@gostai.com>
3574 
3575 	tests: fix regressions.
3576 	Exit status 63 is documented for version-mismatch.
3577 	* bootstrap.conf (gnulib_modules): Remove sysexits.
3578 	* src/system.h (EX_MISMATCH): Define.
3579 	* src/parse-gram.y (version_check): Use it instead of EX_CONFIG.
3580 
3581 	Missing includes.
3582 	* tests/calc.at, tests/named-refs.at: Include assert.h.
3583 
3584 2012-02-21  Akim Demaille  <demaille@gostai.com>
3585 
3586 	glr: fix ambiguity reports.
3587 	* tests/glr-regression.at (Ambiguity reports): New.
3588 
3589 2012-02-19  Akim Demaille  <demaille@gostai.com>
3590 
3591 	doc: stylistic improvements.
3592 	* doc/bison.texinfo: Prefer "continue" to empty loop bodies.
3593 	Add some @group/@end group to avoid poor page breaks.
3594 
3595 2012-02-19  Akim Demaille  <demaille@gostai.com>
3596 
3597 	maint: address sc_prohibit_doubled_word.
3598 	* data/yacc.c, doc/bison.texinfo: Reword to avoid having to
3599 	disable that check.
3600 	* cfg.mk: No longer skip this test.
3601 
3602 2012-02-19  Akim Demaille  <demaille@gostai.com>
3603 
3604 	maint: address sc_prohibit_always-defined_macros.
3605 	* cfg.mk: No longer skip it, except where EXIT_SUCCESS is used
3606 	as a witness for stdlib.h.
3607 	Skip this test when appropriate.
3608 	* data/yacc.c: Drop a note about why EXIT_SUCCESS is defined here.
3609 
3610 2012-02-19  Akim Demaille  <demaille@gostai.com>
3611 
3612 	maint: address sc_bindtextdomain, sc_program_name and sc_prohibit_HAVE_MBRTOWC.
3613 	* bootstrap.conf (gnulib_modules): Require progname.
3614 	* src/complain.c, src/getargs.c, src/getargs.h, src/main.c: Use it.
3615 	* cfg.mk (exclude): New.
3616 	Use it.
3617 	Skip lib/main.c for bindtextdomain and set_program_name.
3618 
3619 2012-02-19  Akim Demaille  <demaille@gostai.com>
3620 
3621 	maint: remove stray file.
3622 	* config.hin: Remove.
3623 
3624 2012-02-19  Akim Demaille  <demaille@gostai.com>
3625 
3626 	maint: address some syntax-issues remaining after cherry-picking from master.
3627 	* cfg.mk: Skip bison generated files, 2.5 is generating trailing
3628 	blanks.  This is already fixed in master.
3629 	* tests/conflicts.at, tests/java.at: Fix white space issues.
3630 
3631 2012-02-19  Akim Demaille  <demaille@gostai.com>
3632 
3633 	regen.
3634 	* src/parse-gram.c, src/parse-gram.h: Regen.
3635 
3636 2012-02-19  Akim Demaille  <demaille@gostai.com>
3637 
3638 	bitset: fix an incorrect error message.
3639 	* lib/bitset_stats.c: here.
3640 	Reported by Stefano Lattarini.
3641 
3642 2012-02-19  Jim Meyering  <meyering@redhat.com>
3643 
3644 	maint: reenable sc_m4_quote_check
3645 	* cfg.mk (local-checks-to-skip): Reenable sc_m4_quote_check.
3646 	* m4/dmalloc.m4: Add quotes.
3647 
3648 2012-02-19  Akim Demaille  <demaille@gostai.com>
3649 
3650 	maint: remove trailing empty lines.
3651 	* cfg.mk: No longer skip sc_prohibit_empty_lines_at_EOF, except
3652 	for parse-gram.h (generated).
3653 	* examples/mfcalc/.gitignore, lib/.gitignore, m4/.gitignore,
3654 	* po/.gitignore, runtime-po/.gitignore: Remove trailing/leading
3655 	empty lines.
3656 
3657 2012-02-19  Akim Demaille  <demaille@gostai.com>
3658 
3659 	maint: avoid "magic number exit".
3660 	* cfg.mk (local-checks-to-skip): No longer skip it.
3661 	* bootstrap.conf (gnulib_modules): Add sysexits.
3662 	* doc/bison.texinfo, etc/bench.pl.in, src/parse-gram.y,
3663 	* src/system.h, tests/calc.at, tests/named-refs.at: Use assert
3664 	where appropriate instead of "if (...) exit".
3665 	Use symbolic exit status elsewhere.
3666 
3667 2012-02-19  Akim Demaille  <demaille@gostai.com>
3668 
3669 	maint: fix some syntax-check issues.
3670 	* cfg.mk (local-checks-to-skip): Remove
3671 	sc_prohibit_quotearg_without_use, sc_prohibit_strcmp,
3672 	sc_unmarked_diagnostics, sc_useless_cpp_parens.
3673 	(sc_unmarked_diagnostics): Skip DJGPP.
3674 	* data/yacc.c, src/LR0.c, src/closure.c,
3675 	* src/flex-scanner.h, src/gram.c, src/lalr.c,
3676 	* src/print-xml.c, src/print.c, src/print_graph.c,
3677 	* src/reader.c, src/reduce.c, src/tables.c:
3678 	Don't use parens with cpp's defined.
3679 	Remove useless includes.
3680 
3681 2012-02-19  Akim Demaille  <demaille@gostai.com>
3682 
3683 	maint: address a couple of syntax-check errors.
3684 	* cfg.mk (local-checks-to-skip): Remove sc_error_message_period
3685 	and sc_error_message_uppercase.
3686 	Address the uncovered issues.
3687 	* po/POTFILES.in: Add missing files.
3688 	* src/symtab.c: Remove useless includes.
3689 	* lib/bitset_stats.c, src/files.c, tests/glr-regression.at: Use
3690 	conformant error messages.
3691 
3692 2012-02-19  Akim Demaille  <demaille@gostai.com>
3693 
3694 	maint: gnulib: upgrade.
3695 
3696 2012-02-15  Akim Demaille  <demaille@gostai.com>
3697 
3698 	maint: rely on Automake for parsers.
3699 	* Makefile.am (AM_YFLAGS): Automake looks for "-d" alone.
3700 	Move other options in here.
3701 	(BISON): New.
3702 	(YACC): Use it.
3703 	(bison_SOURCES): Now that automake can see `-d' in AM_YFLAGS,
3704 	we can rely on it to compile and ship the parser header
3705 	files.
3706 
3707 	Based on commit 737406a32c201471699bfa0843d1f432f3ec29ab and
3708 	commit 3d6ca339083c278d907c9f030f4ba6bc5ecb07f2.
3709 
3710 2012-02-14  Akim Demaille  <demaille@gostai.com>
3711 
3712 	maint: more authors.
3713 	* AUTHORS: here.
3714 	Suggested by Tys Lefering.
3715 
3716 2012-02-14  Akim Demaille  <demaille@gostai.com>
3717 
3718 	maint: add license headers.
3719 	* examples/calc++/test, examples/variant.yy, AUTHORS, THANKS,
3720 	* tests/atlocal.in, tests/bison.in: Add license headers.
3721 	Reported by Tys Lefering.
3722 
3723 2012-02-14  Akim Demaille  <demaille@gostai.com>
3724 
3725 	maint: remove obsolete file.
3726 	* etc/make-ChangeLogs: Remove (used for rcs to cvs migration!).
3727 	Reported by Tys Lefering.
3728 
3729 2012-02-08  Akim Demaille  <demaille@gostai.com>
3730 
3731 	use a more consistent quoting style.
3732 	See <http://lists.gnu.org/archive/html/bug-bison/2012-01/msg00120.html>.
3733 	Use quotearg as often as possible instead of leaving the choice of
3734 	the quotes to the translators.  Use shorter messages.  Factor similar
3735 	messages to a single format, to make localization easier.
3736 
3737 	* src/files.c, src/getargs.c, src/muscle-tab.c, src/reader.c
3738 	* src/scan-code.l, src/scan-gram.l, src/symtab.c:
3739 	Use quote() or quotearg_colon() on printf arguments instead of
3740 	quotes in the format string.
3741 	* data/bison.m4: Keep sync with the changes in muscle-tab.c.
3742 
3743 	* tests/skeletons.at, tests/input.at, tests/regression.at: Adjust
3744 	expected messages.
3745 
3746 2012-01-31  Akim Demaille  <demaille@gostai.com>
3747 
3748 	maint: remove stray debug code.
3749 	* src/Makefile.am (echo): Remove.
3750 
3751 2012-01-31  Akim Demaille  <demaille@gostai.com>
3752 
3753 	maint: space changes.
3754 	* src/Makefile.am: Use 2 leading spaces for variable definition
3755 	spreading over several lines.
3756 
3757 2012-01-31  Akim Demaille  <demaille@gostai.com>
3758 
3759 	maint: more silent-rules.
3760 	* doc/local.mk, src/local.mk, examples/calc++/Makefile.am: Use
3761 	$(AM_V_GEN) and $(AM_V_at) where appropriate.
3762 
3763 2012-01-31  Jim Meyering  <meyering@redhat.com>
3764 
3765 	do not ignore errors like ENOSPC,EIO when writing to stdout
3766 	Standard output was never explicitly closed, so we could not
3767 	detect failure.  Thus, bison would ignore the errors of writing
3768 	to a full file system and getting an I/O error on write, but only
3769 	for standard output, e.g., for --print-localedir, --print-datadir,
3770 	--help and some verbose output.
3771 	Now, "bison --print-datadir > /dev/full" reports the write failure:
3772 	bison: write error: No space left on device
3773 	Before, it would exit 0 with no diagnostic, implying success.
3774 	This is not an issue for "--output=-" or the other FILE-accepting
3775 	command-line options, because unlike most other GNU programs,
3776 	an output file argument of "-" is treated as the literal "./-",
3777 	rather than standard output.
3778 	* bootstrap.conf (gnulib_modules): Add closeout.
3779 	* src/main.c: Include "closeout.h".
3780 	Use atexit to ensure we close stdout.
3781 	* .gitignore: Ignore new files pulled in via gnulib-tool.
3782 
3783 2012-01-26  Akim Demaille  <demaille@gostai.com>
3784 
3785 	tests: fix expected output.
3786 	* tests/actions.at (YYBACKUP): here.
3787 
3788 2012-01-26  Akim Demaille  <demaille@gostai.com>
3789 
3790 	yacc: fix YYBACKUP.
3791 	Reported by David Kastrup:
3792 	https://lists.gnu.org/archive/html/bug-bison/2011-10/msg00002.html.
3793 
3794 	* data/yacc.c (YYBACKUP): Accept rhs size.
3795 	Restore the proper state value.
3796 	* TODO (YYBACKUP): Make it...
3797 	* tests/actions.at: a new test case.
3798 	* NEWS, THANKS: Update.
3799 
3800 2012-01-26  Akim Demaille  <demaille@gostai.com>
3801 
3802 	maint: update TODO.
3803 	* TODO (Labeling the symbols): Remove, it's done ("Name references").
3804 
3805 2012-01-26  Akim Demaille  <demaille@gostai.com>
3806 
3807 	maint: update THANKS.
3808 	* THANKS: Update Tys's address, on his request.
3809 
3810 2012-01-26  Akim Demaille  <demaille@gostai.com>
3811 
3812 	maint: fix --gcc-warnings support.
3813 	* configure.ac: Use enable_gcc_warnings instead of enableval,
3814 	which is valid only with AC_ARG_ENABLE.
3815 
3816 2012-01-26  Akim Demaille  <demaille@gostai.com>
3817 
3818 	maint: silent-rules.
3819 	* configure.ac: Ask for silent-rules support.
3820 	Enable it by default.
3821 
3822 2012-01-26  Akim Demaille  <demaille@gostai.com>
3823 
3824 	maint: remove trailing blanks.
3825 	* src/scan-code.l: Here.
3826 
3827 2012-01-25  Paul Eggert  <eggert@cs.ucla.edu>
3828 
3829 	tests: port to Solaris 10 'diff -u'
3830 	* tests/regression.at (parse-gram.y: LALR = IELR): Port to Solaris 10,
3831 	where "diff -u X X" outputs "No differences encountered"
3832 	instead of outputting nothing.  Reported by Tomohiro Suzuki in
3833 	<http://lists.gnu.org/archive/html/bug-bison/2012-01/msg00101.html>.
3834 
3835 2012-01-25  Jim Meyering  <meyering@redhat.com>
3836 
3837 	build: avoid possibly-replaced fprintf in liby-source, yyerror.c
3838 	* lib/yyerror.c (yyerror): Use fputs and fputc rather than fprintf
3839 	with a mere "%s\n" format.  Always return 0 now, on the assumption
3840 	that the return value was never used anyway.
3841 	Don't include <config.h> after all.  This avoids a problem
3842 	reported by Thiru Ramakrishnan in
3843 	http://lists.gnu.org/archive/html/help-bison/2011-11/msg00000.html
3844 	* cfg.mk: Exempt lib/yyerror.c from the sc_require_config_h_first test.
3845 	* THANKS: Update.
3846 
3847 2012-01-24  Jim Meyering  <meyering@redhat.com>
3848 
3849 	maint: generate ChangeLog from git log
3850 	* Makefile.am (gen-ChangeLog): New rule.
3851 	(dist-hook): Depend on it.
3852 	(EXTRA_DIST): Distribute the two ChangeLog-* files.
3853 	* bootstrap.conf (gnulib_modules): Add gitlog-to-changelog.
3854 	(bootstrap_post_import_hook): Ensure that ChangeLog exists.
3855 	* build-aux/git-log-fix: New file.
3856 	* ChangeLog-2012: Renamed ...
3857 	* ChangeLog: ... from this.
3858 	* ChangeLog-1998: Renamed ...
3859 	* OChangeLog: ...from this
3860 	* .gitignore: Add ChangeLog.
3861 
3862 2012-01-24  Jim Meyering  <meyering@redhat.com>
3863 
3864 	change more quotes in source, and adjust tests to match
3865 	Run this command to change each `%s' to '%s' in source directories:
3866 	  git grep -l '`%s'\' src djgpp data \
3867 	    |xargs perl -pi -e '$q="'\''";s/`%s$q/$q%s$q/g'
3868 	* data/bison.m4: Affected per the above.
3869 	* djgpp/subpipe.c: Likewise.
3870 	* src/files.c: Likewise.
3871 	* src/getargs.c: Likewise.
3872 	* src/muscle-tab.c: Likewise.
3873 	* src/reader.c: Likewise.
3874 	* tests/glr-regression.at: Adjust to match.
3875 	* tests/input.at: Likewise.
3876 	* tests/push.at: Likewise.
3877 	* tests/skeletons.at: Likewise.
3878 
3879 2012-01-23  Jim Meyering  <meyering@redhat.com>
3880 
3881 	quote consistently and make tests pass with new quoting from gnulib
3882 	Updating to gnulib pulled in new quote and quotarg modules,
3883 	by which quoting is now done like 'this' rather than `this'.
3884 	That change induces many "make check" test failures.  This change
3885 	adapts code and tests so that "make check" passes once again.
3886 	* src/scan-code.l: Quote like 'this', not like `this'.
3887 	* src/scan-gram.l: Likewise.
3888 	* src/symtab.c: Likewise.
3889 	* tests/actions.at: Adjust tests to match.
3890 	* tests/input.at: Likewise.
3891 	* tests/named-refs.at: Likewise.
3892 	* tests/output.at: Likewise.
3893 	* tests/regression.at: Likewise.
3894 	* lib/.gitignore: Regenerate.
3895 	* m4/.gitignore: Likewise.
3896 
3897 2012-01-23  Jim Meyering  <meyering@redhat.com>
3898 
3899 	build: update gnulib and autoconf submodules to latest (cherry picked from commit 728415f885e5cb8e518c8576fa6e1f541e384130)
3900 
3901 2012-01-23  Jim Meyering  <meyering@redhat.com>
3902 
3903 	build: manually update bootstrap from gnulib, and adapt
3904 	Updating to the latest bootstrap from gnulib involves more of a
3905 	change than usual, and updating to the latest gnulib would involve
3906 	its own set of challenges with the upcoming quoting changes, so
3907 	we update bootstrap manually and separately.
3908 	* bootstrap: Update from gnulib.
3909 	* lib/Makefile.am: Initialize more variables to empty, so that gnulib.mk
3910 	can append to them with "+=".
3911 	* bootstrap.conf (gnulib_mk_hook): Remove.  No longer honored.
3912 	(gnulib_tool_option_extras): Generate gnulib.mk.
3913 
3914 2012-01-23  Jim Meyering  <meyering@redhat.com>
3915 
3916 	maint: include <config.h> first
3917 	* cfg.mk (exclude_file_name_regexp--sc_require_config_h_first):
3918 	Exempt data/glr.c and data/yacc.c from the include-config.h-first
3919 	requirement.
3920 
3921 2012-01-23  Jim Meyering  <meyering@redhat.com>
3922 
3923 	build: include <config.h> from lib/yyerror.c
3924 	* lib/yyerror.c: Include <config.h>.
3925 
3926 2012-01-23  Jim Meyering  <meyering@redhat.com>
3927 
3928 	maint: list djgpp/subpipe.c in po/POTFILES.in
3929 	* po/POTFILES.in: Add djgpp/subpipe.c.
3930 
3931 2012-01-23  Jim Meyering  <meyering@redhat.com>
3932 
3933 	maint: placate the space-TAB syntax-check
3934 	* cfg.mk (exclude_file_name_regexp--sc_space_tab): Exempt
3935 	tests/input.at and tests/c++.at, since they appear to use
3936 	SP-TAB sequences deliberately.
3937 	* OChangeLog: Remove space-before-TAB.
3938 
3939 2012-01-23  Jim Meyering  <meyering@redhat.com>
3940 
3941 	doc: correct typo: s/can not/cannot/
3942 	* doc/bison.texinfo (Bug Reports): s/can not/cannot/
3943 	And remove trailing blanks.
3944 
3945 2012-01-22  Jim Meyering  <meyering@redhat.com>
3946 
3947 	maint: get gpl-3.0 from gnulib
3948 	* bootstrap.conf (gnulib_modules): Add gpl-3.0.
3949 	* doc/gpl-3.0.texi: Remove from version control, now that
3950 	we get it via gnulib.
3951 	* doc/.gitignore: Ignore it.
3952