CHANGES revision 235723
12012-01-15  Thomas E. Dickey  <tom@invisible-island.net>
2
3	* package/debian/copyright: bump
4
5	* test/run_make.sh: workaround for breakage due to GNU make 3.82
6
7	* test/run_make.sh:
8	tested with Solaris 10 (bison 1.875) and added scripting to exercise
9	the /usr/ccs/bin/yacc executable
10
11	* test/grammar.tab.c: regen
12
13	* test/grammar.y: modify to also build with Solaris yacc
14
15	* VERSION, package/debian/changelog, package/byacc.spec: bump
16
17	* test/calc1.output, test/calc1.tab.c: regen
18
19	* test/calc1.y:
20	undo the change made to appease bison, since it was only a warning.
21
22	* test/pure_calc.tab.c, test/pure_error.tab.c: regen
23
24	* test/run_make.sh: another fix for running from top-level directory
25
26	* makefile.in:
27	ensure that check_make rule depends on having byacc built.
28
29	* test/run_make.sh: fixes for building from parent directory
30
31	* test/pure_error.y, test/pure_calc.y: bison-fixes
32
33	* test/calc2.tab.c, test/calc3.tab.c, test/code_error.code.c, test/ftp.tab.c, test/pure_calc.tab.c, test/pure_error.tab.c:
34	regen
35
36	* test/calc2.y, test/calc3.y, test/code_error.y, test/ftp.y:
37	byacc already declares yyerror
38
39	* test/pure_error.y, test/pure_calc.y:
40	modified to help make the files build with bison
41
42	* test/run_make.sh:
43	supply a "%pure-parser" directive when bison needs it.
44
45	* test/code_calc.code.c: regen
46
47	* test/code_calc.y: modified to help make the files build with bison
48
49	* yacc.1:
50	in testing, found that %expect did not work as documented for bison.
51	do not recommend it for portable code.
52
53	* test/run_make.sh: workaround breakage in bison's %expect directive
54
55	* test/grammar.y: modified to help make the files build with bison
56
57	* test/calc1.output, test/calc1.tab.c, test/grammar.tab.c: regen
58
59	* test/calc1.y: quiet a spurious warning from bison 2.3
60
61	* test/calc1.tab.c: regen
62
63	* test/calc1.y: modified to help make the files build with bison
64
65	* yacc.1: comment on "-y" and "-P" options.
66
67	* yacc.1: comment on portability
68
69	* test/ftp.tab.c, test/quote_calc-s.tab.c, test/quote_calc.tab.c, test/quote_calc2-s.tab.c, test/quote_calc3-s.tab.c:
70	regen
71
72	* test/ftp.y: modified to help make the files build with bison
73	(bison's "-y" option is of no use in providing "yacc" compatibility)
74
75	* test/quote_calc2.tab.c, test/quote_calc3.tab.c, test/quote_calc4-s.tab.c, test/quote_calc4.tab.c:
76	regen
77
78	* test/code_calc.y, test/quote_calc2.y, test/quote_calc.y, test/quote_calc4.y, test/quote_calc3.y:
79	modified to help make the files build with bison
80
81	* test/calc.tab.c: regen
82
83	* test/calc.y: modified to help make the files build with bison
84
85	* test/error.tab.c: regen
86
87	* test/error.y: modified to help make the files build with bison
88
89	* test/calc2.tab.c, test/calc3.tab.c, test/code_error.code.c: regen
90
91	* test/run_make.sh:
92	check for older bisons which (2.3 for instance) do not support pure parsers
93
94	* test/code_error.y, test/calc3.y, test/calc2.y:
95	modified to help make the files build with bison
96
97	* test/run_test.sh: use $opt2 in filenames of the generated files
98
99	* test/quote_calc2-s.tab.c, test/quote_calc3-s.tab.c, test/quote_calc4-s.tab.c, test/quote_calc-s.tab.c, test/quote_calc.tab.c, test/quote_calc2.tab.c, test/quote_calc3.tab.c, test/quote_calc4.tab.c:
100	regen
101
1022012-01-14  Thomas E. Dickey  <tom@invisible-island.net>
103
104	* test/calc2.tab.c, test/code_calc.code.c, test/code_error.code.c, test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c, test/calc.tab.c, test/calc1.tab.c:
105	regen
106
107	* output.c: Several changes:
108		a) add YYLEX_PARAM_TYPE, like YYPARSE_PARAM_TYPE, but for yylex.
109		b) modify definitions for YYLEX_DECL to be more like YYPARSE_DECL,
110		   using YYLEX_PARAM_TYPE and YYLEX_PARAM.
111		c) add ifdef's around #define's for YYERROR_DECL and YYERROR_CALL,
112		   to help with redefinitions.
113
114	* test/pure_calc.tab.c:
115	modified to help make the files build with bison
116
117	* test/run_make.sh:
118	start work on followup, to check if the generated files build with bison.
119
120	* test/pure_calc.y, test/pure_error.tab.c:
121	modified to help make the files build with bison
122
123	* test/calc3.tab.c: regen
124
125	* test/quote_calc-s.output, test/quote_calc-s.tab.c, test/quote_calc-s.tab.h, test/quote_calc2-s.output, test/quote_calc2-s.tab.c, test/quote_calc2-s.tab.h, test/quote_calc3-s.output, test/quote_calc3-s.tab.c, test/quote_calc3-s.tab.h, test/quote_calc4-s.output, test/quote_calc4-s.tab.c, test/quote_calc4-s.tab.h:
126	RCS_BASE
127
128	* test/run_test.sh: generate/test with "-s" option applied.
129
1302012-01-13  Thomas E. Dickey  <tom@invisible-island.net>
131
132	* package/debian/changelog, package/byacc.spec, VERSION: bump
133
134	* yacc.1: improve documentation of -s option
135
136	* yacc.1: note that yacc ignores -y
137
138	* main.c: add -s option to usage message.
139
140	* test/quote_calc3.output, test/quote_calc3.tab.c, test/quote_calc4.output, test/quote_calc4.tab.c, test/quote_calc4.tab.h, test/quote_calc3.y, test/quote_calc.tab.h, test/quote_calc.output, test/quote_calc.tab.c, test/quote_calc2.output, test/quote_calc2.tab.c, test/quote_calc2.tab.h, test/quote_calc3.tab.h, test/quote_calc4.y, test/quote_calc.y, test/quote_calc2.y:
141	RCS_BASE
142
143	* configure: regen
144
145	* aclocal.m4: resync with my-autoconf, i.e., fixes for CF_XOPEN_SOURCE
146
1472011-12-19  Thomas E. Dickey  <tom@invisible-island.net>
148
149	* package/debian/changelog, package/byacc.spec, VERSION: bump
150
151	* yacc.1, output.c, main.c, defs.h:
152	add "-s" option to suppress generating #define's based on string contents
153	in a %token statement.  For instance
154		%token EQLS "Equals"
155	would generate
156		#define EQLS 256
157		#define Equals 257
158	Simply suppressing the second #define makes the behavior closer to yacc.
159	(report by Paulo Andrade).
160
1612011-09-08  Thomas E. Dickey  <tom@invisible-island.net>
162
163	* package/debian/changelog, package/byacc.spec, VERSION: bump
164
165	* output.c:
166	fix some more interaction between -i and -d flags to ensure YYERRCODE
167	and YYSTYPE are declared, tested with cproto.
168
1692011-09-07  Thomas E. Dickey  <tom@invisible-island.net>
170
171	* yacc.1: document "-i" option.
172
173	* package/debian/changelog, package/byacc.spec, VERSION: bump
174
175	* output.c: fix an interaction between -i and -d
176
177	* test/code_error.code.c, test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c, test/pure_calc.tab.c, test/pure_error.tab.c, test/calc.tab.c, test/calc1.tab.c, test/calc2.tab.c, test/calc3.tab.c, test/code_calc.code.c:
178	regen - changes for "-i" option move the global/impure variables near the
179	macros that may add a prefix, etc.
180
181	* skeleton.c, output.c, defs.h: changes to support "-i" option.
182
1832011-09-06  Thomas E. Dickey  <tom@invisible-island.net>
184
185	* reader.c: pass explicit file-pointer to write_section()
186
187	* main.c:
188	add "-i" option, to generate interface-file (suggested by Denis M. Wilson)
189
1902011-09-05  Thomas E. Dickey  <tom@invisible-island.net>
191
192	* configure: regen
193
194	* aclocal.m4:
195	resync with my-autoconf: CF_ANSI_CC_CHECK (check for $CFLAGS in $CC)
196	and CF_XOPEN_SOURCE (update aix, cygwin and netbsd checks)
197
198	* defs.h, error.c, reader.c:
199	add check for missing "}" on %parse-param and %lex-param lines (report by Denis M Wilson)
200
2012011-04-01  Thomas E. Dickey  <tom@invisible-island.net>
202
203	* config.sub: 2011-04-01
204
2052011-02-02  Thomas E. Dickey  <tom@invisible-island.net>
206
207	* config.guess: 2011-01-01
208
2092010-12-29  Thomas E. Dickey  <tom@invisible-island.net>
210
211	* defs.h, skeleton.c:
212	add const qualifier to skeleton data, per NetBSD changes (report by Christos Zoulas)
213
214	* defs.h:
215	mark all of the error-functions as non-returning (report by Christos Zoulas)
216
217	* test/grammar.tab.c, test/pure_calc.tab.c, test/pure_error.tab.c, test/calc.tab.c, test/calc1.tab.c, test/calc2.tab.c, test/calc3.tab.c, test/code_calc.code.c, test/code_error.code.c, test/error.tab.c, test/ftp.tab.c:
218	regen
219
220	* skeleton.c:
221	use only realloc() rather than realloc+malloc, agree that systems needing this
222	are very rare (prompted by NetBSD change).
223
224	* test/ftp.tab.c: regen
225
2262010-12-29  Christos.Zoulas
227
228	* test/ftp.y:
229	improve example, which was stuck in 19XX and assumed file sizes were longs.
230
2312010-12-29  Thomas E. Dickey  <tom@invisible-island.net>
232
233	* test/ftp.tab.c, test/grammar.tab.c, test/pure_calc.tab.c, test/pure_error.tab.c, test/calc.tab.c, test/calc1.tab.c, test/calc2.tab.c, test/calc3.tab.c, test/code_calc.code.c, test/code_error.code.c, test/error.tab.c:
234	regen
235
236	* test/pure_error.y, test/pure_calc.y, test/ftp.y, test/error.y, test/code_error.y, test/code_calc.y, test/calc.y, test/calc3.y, test/calc2.y, test/calc1.y:
237	use byacc's YYLEX_DECL/YYERROR_DECL symbols to prototype yylex/yyerror
238
239	* skeleton.c:
240	remove explicit prototype for yylex() via YYLEX_DECL() macro, since that
241	would prevent declaring yylex() static (request by Christos Zoulas).
242
243	* test/calc2.tab.c, test/calc3.tab.c: regen
244
2452010-12-29  Christos.Zoulas
246
247	* output.c: correct definition for YYERROR_DECL()
248
2492010-12-29  Thomas E. Dickey  <tom@invisible-island.net>
250
251	* package/debian/changelog, package/byacc.spec, VERSION: bump
252
2532010-12-26  Thomas E. Dickey  <tom@invisible-island.net>
254
255	* defs.h, main.c:
256	change return-type of allocate() to avoid warnings of alignment problems
257
258	* main.c: Solaris declares chmod() in <sys/stat.h>
259
260	* configure: regen
261
262	* main.c: ifdef'd use of fcntl.h
263
264	* configure.in: add configure checks for fcntl.h, atexit and mkstemp
265
266	* main.c: for cases where mkstemp() is not available, use tempnam/open
267
268	* aclocal.m4: add CF_MKSTEMP
269
270	* aclocal.m4:
271	improve quoting, deprecate ${name-value} in favor of standard ${name:-value}
272
2732010-12-25  Thomas E. Dickey  <tom@invisible-island.net>
274
275	* main.c:
276	start revising use of tmpfile(), to make this work with MinGW.  Start by
277	implementing a mkstemp() alternative - noting that mkstemp() also is broken
278	for MinGW.
279
280	* package/debian/changelog, package/byacc.spec, VERSION: bump
281
2822010-11-27  Thomas E. Dickey  <tom@invisible-island.net>
283
284	* package/byacc.spec, package/debian/changelog, VERSION: bump
285
286	* test/calc2.tab.c, test/calc3.tab.c: regen
287
288	* output.c:
289	corrected use of %parse-param value in yyerror(); it doesn't use &yylval
290	(report by Clifford Yapp)
291
2922010-11-26  Thomas E. Dickey  <tom@invisible-island.net>
293
294	* skeleton.c: typo
295
296	* output.c:
297	correct line-numbering when "-r" option is used; the 'outline' variable
298	should only be incremented when writing to the code-file.
299
300	* test/code_calc.code.c, test/code_error.code.c: regen
301
302	* yacc.1: bump date
303
304	* yacc.1: comment on -b option vs -r
305
306	* test/calc2.tab.c, test/calc2.y, test/calc3.tab.c, test/calc3.y, test/ftp.tab.c, test/grammar.tab.c, test/pure_calc.tab.c, test/pure_error.tab.c, test/calc.tab.c, test/calc1.tab.c, test/code_calc.code.c, test/code_error.code.c, test/error.tab.c:
307	regen
308
309	* output.c:
310	improve on YYERROR_DECL(), adding dummy params which can be used for the
311	actual function declaration.  Also add YYERROR_CALL().  The two macros
312	simplify maintaining sets of grammars which may/may not be pure.
313
314	* test/calc1.y, test/ftp.tab.c, test/grammar.tab.c, test/pure_calc.tab.c, test/pure_error.tab.c, test/calc.tab.c, test/calc1.tab.c, test/calc2.tab.c, test/calc3.tab.c, test/code_calc.code.c, test/code_error.code.c, test/error.tab.c:
315	regen
316
317	* output.c: generate yyerror() calls in output.c
318	This is for compatibility with bison, which passes the yylval to yyerror
319	when the %parse-param feature is used.
320
321	* skeleton.c, defs.h: generate yyerror() calls in output.c
322
323	* output.c: simplified a little, using putc_code() and putl_code()
324
325	* test/calc1.tab.h: regen
326
327	* reader.c:
328	improve ifdef for YYSTYPE union declaration (report by Clifford Yapp)
329
330	* reader.c:
331	accept underscore as a replacement for dash in command names, e.g.,
332	"%pure_parser" vs "%pure-parser".
333
334	* test/calc1.tab.c: regen
335
336	* output.c, reader.c:
337	also ifdef YYSTYPE declaration in the generated code (report by Clifford Yapp)
338
339	* package/debian/changelog, package/byacc.spec, VERSION: bump
340
3412010-11-24  Thomas E. Dickey  <tom@invisible-island.net>
342
343	* main.c, defs.h, symtab.c, error.c: reduce global variables
344
345	* package/debian/changelog, package/byacc.spec, VERSION: bump
346
347	* reader.c:
348	amend fix for Redhat #112617 to still call default_action_warning() for
349	empty rules (report by Bruce Cran).
350
3512010-11-22  Thomas E. Dickey  <tom@invisible-island.net>
352
353	* output.c:
354	add ifdef to guard against redefinition of YYSTYPE union (request by Clifford Yapp).
355
356	* test/calc1.tab.c: regen
357
358	* test/calc1.y: cleanup compiler warnings
359
360	* test/grammar.y: add "%expect"
361
362	* test/calc1.tab.h: regen
363
364	* test/calc1.output, test/calc1.tab.c, test/calc1.tab.h: RCS_BASE
365
366	* test/calc2.tab.c, test/calc3.tab.c: regen
367
368	* test/calc1.y:
369	advanced example from Steve Johnson's paper, uses unions
370
371	* test/calc3.y, test/calc2.y: init 'base', so examples can run
372
373	* test/ftp.tab.c, test/ftp.y: tweaks to compile with g++
374
375	* output.c: compensate for fix in reader.c
376
377	* reader.c:
378	add/use putc_both() and puts_both(), incidentally fixing a place where
379	a union copied to the union_file may be missing the end of the last line.
380
381	* package/debian/changelog, package/byacc.spec, VERSION: bump
382
3832010-09-28  Thomas E. Dickey  <tom@invisible-island.net>
384
385	* config.guess: 2010-09-24
386
3872010-09-10  Thomas E. Dickey  <tom@invisible-island.net>
388
389	* config.sub: 2010-09-11
390
3912010-06-10  Thomas E. Dickey  <tom@invisible-island.net>
392
393	* yacc.1, package/debian/changelog, package/byacc.spec, VERSION:
394	bump to 2010/06/10
395
3962010-06-09  Thomas E. Dickey  <tom@invisible-island.net>
397
398	* reader.c: free declarations in leak-testing code.
399
400	* main.c: close code_file if -r option used, for leak-testing
401
402	* defs.h, reader.c:
403	improve %lex-param / %parse-param implementation by allowing for arrays to
404	be passed as parameters, e.g., "int regs[26]".
405
406	* test/calc3.tab.c, test/calc3.y, test/calc3.output, test/calc3.tab.h, test/calc2.tab.c, test/calc2.y, test/calc2.tab.h, test/calc2.output:
407	RCS_BASE
408
409	* output.c:
410	improve %lex-param / %parse-param implementation by allowing for arrays to
411	be passed as parameters, e.g., "int regs[26]".
412
413	* test/calc.tab.c, test/calc.y:
414	test-cases and reference files for %lex-param / %parse-param
415
416	* makefile.in: add docs-rule, for html/pdf/txt form of manpage
417
418	* configure: regen
419
420	* aclocal.m4: add CF_XOPEN_SOURCE, etc.
421
422	* configure.in:
423	use CF_XOPEN_SOURCE check to ensure that strdup is in scope, e.g., for c89
424
425	* test/ftp.tab.c, test/ftp.y, reader.c, symtab.c, verbose.c, lr0.c, main.c, mkpar.c, output.c, defs.h, closure.c:
426	fix warnings from clang --analyze
427
4282010-06-08  Thomas E. Dickey  <tom@invisible-island.net>
429
430	* output.c: fix to build with c89, etc.
431
432	* reader.c: gcc warning
433
434	* test/ftp.tab.c, test/ftp.y, test/calc.tab.c, test/code_calc.code.c, test/code_error.code.c, test/code_error.y, test/code_calc.y, test/calc.y, test/pure_error.tab.c, test/error.tab.c, test/error.y, test/pure_error.y, test/pure_calc.tab.c, test/pure_calc.y:
435	modified test-cases to allow them to compile, to validate pure-parser changes.
436	updated reference files to match.
437
438	* output.c:
439	move call for output_stype() earlier since it is used in pure-parser declarations
440
441	* test/grammar.tab.c, test/grammar.y:
442	modified test-cases to allow them to compile, to validate pure-parser changes.
443	updated reference files to match.
444
445	* test/calc.tab.c, test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c:
446	regen
447
448	* yacc.1: document %lex-param and %parse-param
449
450	* test/run_lint.sh, test/run_make.sh: RCS_BASE
451
452	* test/run_test.sh:
453	further modify to allow build-directory to be in a different location by
454	passing this directory's location as a parameter to the script.
455
456	* makefile.in:
457	add check_make and check_lint rules to help validate the generated files
458	in the test-directory
459
4602010-06-07  Thomas E. Dickey  <tom@invisible-island.net>
461
462	* test/pure_calc.tab.c, test/pure_error.tab.c: RCS_BASE
463
464	* test/run_test.sh:
465	provide for testing -r and -P options by checking if the ".y" filename
466	begins with "code_" or "pure_", respectively.
467
468	* test/code_error.code.c, test/code_error.tab.c, test/code_error.tab.h, test/code_calc.code.c, test/code_calc.tab.c, test/code_calc.tab.h, test/pure_calc.output, test/pure_calc.tab.h, test/pure_error.output, test/pure_error.tab.h, test/code_calc.output, test/code_error.output:
469	RCS_BASE
470
471	* test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c: regen
472
473	* test/run_test.sh:
474	changes to support running "make check" in a separate build-tree
475
476	* main.c: add "-P" to usage message
477
478	* reader.c: use UCH() macro to hide casts.
479
4802010-06-07  Andres.Mejia
481
482	* main.c, output.c, reader.c, defs.h, skeleton.c:
483	Fix the output order of the generated parse code file.  This allows for
484	the use of YYPARSE_PARAM, by having the output that checks for
485	YYPARSE_PARAM to be defined come after the C code block in the
486	definitions section of a yacc file.
487
488	Implement support for YYLEX_PARAM, similar to bison.  This is useful for
489	support for building reentrant lexers with flex.
490
491	Fix a compatibility issue with bison's pure-parser option.  Bison
492	defines yylex as sending at least one parameter, &yylval, as the first
493	parameter and doesn't seem to have an easy way to remove that parameter.
494	This on the other hand is rather convenient to support saving to yylval
495	from flex when building reentrant lexers and parsers.
496
497	Add support for the %parse-param and %lex-param directives used in
498	bison.  This change bears some similarity to NetBSD's changes to byacc
499	at http://www.mail-archive.com/source-changes-full@netbsd.org/msg08143.html
500
501	Bison allows for POSIX yacc emulation via a yacc directive in the yacc
502	file, and also via a command line switch.  Implement this feature as a
503	no-op for byacc, since byacc is designed to be POSIX yacc compatible
504	anyway.  This allows for better compatibility with yacc sources written
505	for bison.
506
5072010-06-07  Thomas E. Dickey  <tom@invisible-island.net>
508
509	* VERSION: bump to 2010/06/07
510
5112010-06-06  Thomas E. Dickey  <tom@invisible-island.net>
512
513	* test/calc.tab.c, configure: regen
514
515	* skeleton.c:
516	move #include's down into the generated code, to allow user-defined code
517	to override feature definitions, particularly with stdlib.h (request by
518	Marcus Kool).
519
520	* lr0.c, error.c, reader.c, defs.h:
521	strict gcc 3.4.6 warnings on 64-bit platform
522
523	* aclocal.m4, configure.in: add check for lint
524
525	* makefile.in: add lint rule
526
527	* defs.h, closure.c, lr0.c, warshall.c, main.c:
528	fix gcc warnings, mostly for 64-bit platform
529
530	* aclocal.m4:
531	add macros for checking ctags/etags, e.g., to work with NetBSD pkgsrc
532
533	* makefile.in: add etags/TAGS if available
534
535	* configure.in: add configure check for actual ctags and etags programs
536
537	* package/debian/copyright: add copyright notices for non-PD files
538
539	* package/debian/changelog:
540	incorporated scripts in upstream to use for test-builds
541
542	* makefile.in: drop mkdirs.sh, just use "mkdir -p"
543
544	* AUTHORS: nicknames for some contributors (see CHANGES for details)
545
546	* package/byacc.spec: RPM file for byacc
547
548	* VERSION: bump to 2010/06/06
549
550	* aclocal.m4: add copyright notice, from "my-autoconf" macros
551		http://invisible-island.net/autoconf/autoconf.html
552
553	* package/RCS, package/debian/RCS, package/debian/source/RCS, package/pkgsrc/RCS:
554	PERMIT FILE
555
556	* aclocal.m4: resync with my-autoconf.  summary of changes:
557		a) CF_ADD_CFLAGS, etc., improve quoting of ifelse() parameter
558		b) CF_DISABLE_ECHO, change indent-convention for substituted makefile
559		c) CF_GCC_VERSION, ignore stderr
560		d) CF_GCC_WARNINGS, adjust options to work with c89 wrapper of gcc
561
5622010-04-20  Thomas E. Dickey  <tom@invisible-island.net>
563
564	* package/debian/changelog, package/debian/compat, package/debian/control, package/debian/copyright, package/debian/docs, package/debian/postinst, package/debian/prerm, package/debian/rules, package/debian/watch:
565	scripts from Debian package
566
5672010-02-16  Thomas E. Dickey  <tom@invisible-island.net>
568
569	* yacc.1: document -P and bison-extensions
570
571	* test/ftp.tab.c, test/grammar.tab.c, test/calc.tab.c, test/error.tab.c:
572	regen
573
574	* output.c: implement %pure-parser
575
576	* skeleton.c:
577	implement %pure-parser, like bison.  To help with this, changed the stack
578	variables, putting them into a struct.
579
580	* reader.c: implement %pure-parser
581
582	* defs.h: modified skeleton to support %pure-parser feature
583
584	* main.c: add -P option to set %pure-parser
585
586	* output.c:
587	make -r and -p options work together.  The -r option splits the generated
588	parser into code/table files; for this case we cannot use static data.
589	Also, we have to repeat the #define's used for prefix (-p) as well as the
590	redeclaration of yyparse().  Finally, allow any of the prefixed names to
591	be overridden, e.g., by passing a -D option to the compiler.  Make that
592	a little more readable by putting a blank line before each chunk.
593
594	* defs.h: add definitions for %pure-parser
595
596	* skeleton.c:
597	put blank line before/after the redeclaration of yyparse()
598
599	* output.c: allow for other program redefining yylex()
600
601	* skeleton.c:
602	split-off xdecls[] array, to move declaration of yyparse() after #define's
603
604	* defs.h: split-out xdecls[]
605
606	* VERSION: bump
607
608	* configure: regen
609
610	* aclocal.m4: add CF_REMOVE_DEFINE, needed by CF_ADD_CFLAGS
611
612	* aclocal.m4:
613	resync with my-autoconf CF_ADD_CFLAGS and CF_DISABLE_ECHO changes.
614
6152010-02-16  Ostap.Cherkashi
616
617	* skeleton.c: fix a memory leak in the generated skeleton
618
6192010-01-01  Thomas E. Dickey  <tom@invisible-island.net>
620
621	* package/debian/source/format: scripts from Debian package
622
6232009-12-31  Thomas E. Dickey  <tom@invisible-island.net>
624
625	* config.guess: 2009-12-30
626
627	* config.sub: 2009-12-31
628
6292009-10-27  Thomas E. Dickey  <tom@invisible-island.net>
630
631	* VERSION: 20091027
632
633	* output.c, mkpar.c, defs.h, lalr.c, closure.c, graph.c, lr0.c, verbose.c, main.c, reader.c:
634	strict compiler warnings
635
6362009-10-26  Thomas E. Dickey  <tom@invisible-island.net>
637
638	* test/ftp.tab.c, test/grammar.tab.c, test/calc.tab.c, test/error.tab.c:
639	resync
640
641	* main.c, defs.h: introduce some typedefs for portability, etc.
642
643	* makefile.in:
644	don't remove "*.log" in mostlyclean rule since it interferes with regression
645	script.
646
647	* configure: regen
648
649	* aclocal.m4: resync with my-autoconf
650
6512009-08-25  Thomas E. Dickey  <tom@invisible-island.net>
652
653	* config.guess, config.sub: 2009-08-19
654
6552009-02-21  Thomas E. Dickey  <tom@invisible-island.net>
656
657	* VERSION: bump
658
659	* output.c: restore "yylval" symbol, omitted in cleanup on 2008/8/25
660
6612008-12-26  Thomas E. Dickey  <tom@invisible-island.net>
662
663	* configure: regen with autoconf-2.52 (patched)
664
6652008-12-25  Thomas E. Dickey  <tom@invisible-island.net>
666
667	* test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c, test/calc.tab.c:
668	regenerated
669
6702008-12-24  Thomas E. Dickey  <tom@invisible-island.net>
671
672	* VERSION: bump
673
674	* skeleton.c:
675	remove ifdef-lint from goto yyerrlab, to quiet gcc warning
676
6772008-11-26  Thomas E. Dickey  <tom@invisible-island.net>
678
679	* verbose.c, main.c, defs.h, mkpar.c, reader.c:
680	completed implementation of "%expect" (report by Perry E. Metzger).
681	add "%expect-rr", which is (unlike bison) allowable in LALR parsers.
682
6832008-11-24  Thomas E. Dickey  <tom@invisible-island.net>
684
685	* closure.c, defs.h, error.c, graph.c, lalr.c, lr0.c, main.c, mkpar.c, output.c, reader.c, skeleton.c, symtab.c, verbose.c, warshall.c:
686	change indent-style (request by Perry E. Metzger)
687
6882008-08-27  Thomas E. Dickey  <tom@invisible-island.net>
689
690	* test/calc.tab.c, test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c:
691	better implementation of YYPARSE_PARAM, using YYPARSE_DECL() macro
692
693	* VERSION: bump
694
695	* skeleton.c:
696	better implementation of YYPARSE_PARAM, using YYPARSE_DECL() macro
697
698	* test/calc.tab.c, test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c, skeleton.c:
699	change YYRECOVERING to YYRECOVERING(), for compatibility with other yacc's.
700
701	* configure: regen'd
702
703	* configure.in: add -Wwrite-strings to warnings
704
705	* test/ftp.tab.c, test/grammar.tab.c, test/calc.tab.c, test/error.tab.c:
706	add YYPARSE_PARAM and YYPARSE_PARAM_TYPE
707
708	* skeleton.c:
709	add YYPARSE_PARAM (bison) and YYPARSE_PARAM_TYPE (FreeBSD) features.
710
711	* main.c, defs.h, output.c, skeleton.c, symtab.c, error.c, reader.c:
712	fixes for gcc -Wwrite-strings
713
714	* test/calc.tab.c, test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c:
715	generate the tables as static-const (this is an interface change)
716
717	* output.c: realign columns in start_table()
718
719	* output.c:
720	generate the tables as static-const (this is an interface change)
721
722	* output.c: reorder functions to eliminate forward-references
723
724	* test/calc.tab.c, test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c:
725	remove 'register' keywords
726
7272008-08-26  Thomas E. Dickey  <tom@invisible-island.net>
728
729	* warshall.c, verbose.c, symtab.c, skeleton.c, reader.c, output.c, mkpar.c, main.c, lr0.c, lalr.c, graph.c, error.c, closure.c:
730	remove 'register' keywords
731
7322008-08-25  Thomas E. Dickey  <tom@invisible-island.net>
733
734	* test/ftp.tab.c: regen'd
735
736	* reader.c:
737	improve the left-curly fix by testing after blanks, to avoid having a
738	" {" at the beginning of a line.
739
740	* test/error.tab.c, test/grammar.tab.c: regen'd
741
742	* output.c:
743	move the remaining newline-counting into write_XXX functions.
744
745	* test/calc.tab.c: regen'd
746
747	* output.c:
748	simplify part of the output_file formatting using new functions, e.g.,
749	start_int_table(), output_newline().
750
751	* reader.c:
752	modify copy_action() to indent the first character, it if is is left-curly
753	brace.  That makes the output look more like the original, as well as makes
754	it simpler to edit (not confuse editors which look for a left-curly in the
755	first column as if it were the beginning of a function).
756
757	* skeleton.c: minor fixes to avoid gcc -Wconversion warnings
758
759	* output.c: align the #define's produced for "-p" option
760
761	* test/run_test.sh: use the "-p" option for better coverage.
762
763	* output.c: simplify output_prefix() with new define_prefixed()
764
765	* skeleton.c: include string.h, for memset()
766	change stack size to unsigned to fix gcc -Wconversion warnings.
767
768	* VERSION: bump to 2008/8/25
769
770	* makefile.in: add dependency on VERSION file.
771
7722008-08-24  Thomas E. Dickey  <tom@invisible-island.net>
773
774	* VERSION: bump
775
776	* lalr.c: improved memory-leak checking by freeing data in includes[]
777
778	* test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c, test/calc.tab.c:
779	update to match skeleton-change
780
781	* configure: regen'd
782
783	* skeleton.c: Add fix for stack discussed
784		http://undeadly.org/cgi?action=article&sid=20080708155228
785	and applied
786		http://www.openbsd.org/cgi-bin/cvsweb/src/usr.bin/yacc/skeleton.c.diff?r1=1.28&r2=1.29
787
788	* aclocal.m4: resync with my-autoconf (no major changes)
789
7902008-07-24  Thomas E. Dickey  <tom@invisible-island.net>
791
792	* package/pkgsrc/Makefile, package/pkgsrc/distinfo:
793	scripts from NetBSD pkgsrc, for test-builds
794
7952008-03-14  Thomas E. Dickey  <tom@invisible-island.net>
796
797	* config.sub: update to 2008-03-08
798
799	* config.guess: update to 2008-03-12
800
8012007-05-09  Thomas E. Dickey  <tom@invisible-island.net>
802
803	* main.c: close graph, verbose files if opened, on exit.
804
805	* main.c:
806	audit memory leaks - valgrind reported some memory still in use on exit.
807
808	* lalr.c, output.c, reader.c, mkpar.c, lr0.c:
809	add hook for auditing memory leaks
810
811	* defs.h: add hooks for auditing memory leaks
812
813	* configure: regen'd
814
815	* configure.in:
816	use CF_DISABLE_LEAKS, which combines --disable-leaks, --with-valgrind,
817	--with-dbmalloc and --with-dmalloc
818
819	* aclocal.m4: add CF_DISABLE_LEAKS and CF_WITH_VALGRIND
820
821	* aclocal.m4: improve version-checking in CF_GCC_VERSION
822	rework dbmalloc/dmalloc options using CF_NO_LEAKS_OPTION macro
823
824	* VERSION: 2007/5/9
825
826	* main.c: file_prefix did not always have a trailing null.
827
8282007-03-25  Thomas E. Dickey  <tom@invisible-island.net>
829
830	* mkdirs.sh: improved version for "make -j"
831
8322006-12-22  Thomas E. Dickey  <tom@invisible-island.net>
833
834	* config.guess: 2006/12/22
835
8362006-12-08  Thomas E. Dickey  <tom@invisible-island.net>
837
838	* config.sub: 2006/12/08
839
8402005-08-13  Thomas E. Dickey  <tom@invisible-island.net>
841
842	* main.c: add -V to usage message
843
844	* makefile.in: remove -t option from ctags
845
846	* VERSION: 2005/8/13
847
8482005-08-13  schmitz
849
850	* main.c: Sylvain Schmitz:
851	modify the '-o' option to work like bison's, which sets the file-prefix.
852
8532005-08-13  Matt.Kraai
854
855	* output.c:
856	Debian #322858 (don't close union_file, which contained data).
857	This feature is used in groff.
858
8592005-08-13  Thomas E. Dickey  <tom@invisible-island.net>
860
861	* configure: regenerated
862
863	* aclocal.m4: improve checks for Intel compiler warnings
864
8652005-06-25  Thomas E. Dickey  <tom@invisible-island.net>
866
867	* config.sub: 2005/6/2
868
869	* config.guess: 2005/5/27
870
8712005-05-05  Thomas E. Dickey  <tom@invisible-island.net>
872
873	* defs.h: add a fallback for GCC_UNUSED
874
8752005-05-04  Thomas E. Dickey  <tom@invisible-island.net>
876
877	* makefile.in: add "." to include-path to pickup config.h
878
879	* reader.c:
880	apply fix suggested by Steve Dum for end_rule() in Redhat Bugzilla #112617.
881
882	* output.c:
883	correct a limit check in pack_vector() - report/analysis by William Evans
884
885	* main.c:
886	exit after printing version.  Otherwise "yacc -V" will exit with an erro
887	after printing the usage message.
888
889	* test/calc.tab.c, test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c:
890	regenerated after skeleton-changes
891
892	* skeleton.c: replace a few -1's with YYEMPTY
893
894	* skeleton.c:
895	delete yynewerror (no one uses it any more, and it just makes compiler warnings)
896
897	* skeleton.c: adapt yygrowstack() and related definitions from FreeBSD
898
899	* test/run_test.sh:
900	filter out lines with YYPATCH, since that will change with each update
901
902	* yacc.1: add -V option
903
904	* main.c: add -V option to print the version.
905	simplify option-parsing by moving the duplicate logic for setting flags into
906	new function setflag().
907
908	* skeleton.c:
909	move the actual definition of YYMAJOR and YYMINOR to defs.h (as numbers).
910	add YYPATCH here so it can be tested by applications.
911
912	* defs.h:
913	add macros to define VERSION in terms of the (numeric) YYMAJOR, YYMINOR and
914	YYPATCH symbols.
915
916	* lalr.c, lr0.c, mkpar.c, defs.h, closure.c, warshall.c, output.c, verbose.c, graph.c, reader.c, main.c, symtab.c:
917	reduce externs by making static the procedures that are not referenced outside
918	the module in which they are defined.
919
920	* makefile.in:
921	the VERSION file holds the patch-date.  Define YYPATCH, so this will be
922	compiled into the skeleton.
923
924	* VERSION: patch-level for byacc
925
926	* main.c:
927	add "-o" to usage message.  It is too long for a single line; rewrite usage()
928	to show one option per line.
929
9302005-05-03  Thomas E. Dickey  <tom@invisible-island.net>
931
932	* main.c: add -o option, to work with scripts that assume bison.
933	simplify create_file_names() with a macro.
934	simplify done() with a macro.
935	adapt fix from FreeBSD for signal race, e.g., if done() is interrupted by
936	onintr(), do not flush output via exit(), but use _exit() instead.
937
938	* defs.h: remove unnecessary externs for main.c
939
940	* yacc.1: add -o option
941
942	* graph.c: remove unused parameter
943
944	* mkpar.c, defs.h, reader.c:
945	add support for "%expect", a bison feature from FreeBSD sources
946
947	* lr0.c, reader.c, main.c, skeleton.c, graph.c, symtab.c, closure.c, mkpar.c, lalr.c, error.c, warshall.c, verbose.c, output.c:
948	indent'd
949
950	* configure: regenerated for 2005/5/5
951
952	* aclocal.m4: miscellaneous updates (adds CF_INTEL_COMPILER)
953
9542005-04-27  schmitz
955
956	* defs.h, graph.c, lr0.c, main.c, makefile.in, reader.c, yacc.1:
957	Sylvain Schmitz <schmitz@i3s.unice.fr>:
958	add graphical output of the LALR(1) automaton for graphviz,
959	associated with command-line option `-g'
960
9612005-04-16  Thomas E. Dickey  <tom@invisible-island.net>
962
963	* config.sub: 2005/2/10
964
965	* config.guess: 2005/3/24
966
9672005-04-13  Thomas E. Dickey  <tom@invisible-island.net>
968
969	* package/pkgsrc/PLIST: scripts from NetBSD pkgsrc, for test-builds
970
9712005-03-21  Thomas E. Dickey  <tom@invisible-island.net>
972
973	* package/pkgsrc/DESCR: scripts from NetBSD pkgsrc, for test-builds
974
9752004-03-28  Thomas E. Dickey  <tom@invisible-island.net>
976
977	* test/calc.tab.c, test/error.tab.c, test/ftp.tab.c, test/grammar.tab.c:
978	updates due to adding yyparse() prototype
979
980	* configure: RCS_BASE
981
982	* configure.in:
983	add AC_ARG_PROGRAM to make --program-prefix, etc., work.
984
985	* makefile.in: first cut of script to support --program-prefix
986
987	* configure.in:
988	reorder AC_INIT/AC_CONFIG_HEADER to make this "work" with autoconf 2.52
989
990	* makefile.in: modify so DESTDIR works
991
992	* makefile.in: use EXEEXT and OBJEXT
993
994	* configure.in: use CF_PROG_EXT
995	generate a config.h
996
997	* defs.h: make this use the generated config.h
998
999	* skeleton.c: add a forward-reference for yyparse()
1000
1001	* aclocal.m4: add CF_CHECK_CACHE, needed for CF_PROG_EXT
1002
1003	* yacc.1: remove the discussion of TMPDIR since it is obsolete
1004
1005	* skeleton.c: fix a couple of minor compiler-warnings in the skeleton
1006
1007	* defs.h: remove action_file_name, etc., since we use tmpfile() now.
1008
1009	* main.c:
1010	use tmpfile() for opening the working files.  This quiets a warning
1011	advising the use of mkstemp().
1012
1013	* output.c:
1014	Do not close temporary-files here, since they are opened with tmpfile().
1015	Just rewind them, and they're ready to read back the data stored in them.
1016
1017	* test/grammar.output, test/grammar.tab.c, test/grammar.tab.h: RCS_BASE
1018
1019	* makefile.in: turn on "make check" rule
1020
1021	* test/calc.output, test/run_test.sh, test/calc.tab.h: RCS_BASE
1022
1023	* test/ftp.tab.c: yyparse() is now yyparse(void)
1024
1025	* test/calc.tab.c: RCS_BASE
1026
1027	* test/error.tab.c: yyparse() is now yyparse(void)
1028
1029	* test/README: RCS_BASE
1030
1031	* yacc.1: various typography fixes prompted by Debian #100947
1032
1033	* aclocal.m4, makefile.in, configure.in: RCS_BASE
1034
1035	* README: updated to note that this is not the original
1036
10372004-03-24  Thomas E. Dickey  <tom@invisible-island.net>
1038
1039	* test/grammar.y: RCS_BASE
1040
10412004-02-23  Thomas E. Dickey  <tom@invisible-island.net>
1042
1043	* config.sub: RCS_BASE
1044
10452004-02-17  Thomas E. Dickey  <tom@invisible-island.net>
1046
1047	* config.guess: RCS_BASE
1048
10492003-11-29  Thomas E. Dickey  <tom@invisible-island.net>
1050
1051	* install-sh: improved quoting
1052
10532002-06-29  Thomas E. Dickey  <tom@invisible-island.net>
1054
1055	* mkdirs.sh:
1056	don't use character range, since some locales don't work as expected
1057
10582001-06-22  Thomas E. Dickey  <tom@invisible-island.net>
1059
1060	* install-sh: RCS_BASE
1061
10622000-11-20  Thomas E. Dickey  <tom@invisible-island.net>
1063
1064	* test/calc.y: RCS_BASE
1065
1066	* test/code_calc.y, test/pure_calc.y: copy of calc.y
1067
1068	* vmsbuild.com: original version
1069
10702000-02-23  Thomas E. Dickey  <dickey@invisible-island.net>
1071
1072	* test/RCS, RCS: PERMIT FILE
1073
10742000-02-14  Thomas E. Dickey  <tom@invisible-island.net>
1075
1076	* main.c: fix for VMS port - making pathname for temp-file
1077
1078	* descrip.mms: original version
1079
10802000-02-13  Thomas E. Dickey  <tom@invisible-island.net>
1081
1082	* defs.h, verbose.c, reader.c, main.c, skeleton.c, warshall.c, symtab.c, closure.c, mkpar.c, lalr.c, lr0.c, output.c, error.c:
1083	ansify
1084
10851999-11-30  Thomas E. Dickey  <tom@invisible-island.net>
1086
1087	* mkdirs.sh: RCS_BASE
1088
10891995-01-01  Thomas E. Dickey  <tom@invisible-island.net>
1090
1091	* config_h.in: RCS_BASE
1092
10931993-12-23  unknown
1094
1095	* README.DOS, main.c: MSDOS-port
1096
10971993-12-22  unknown
1098
1099	* reader.c, defs.h: MSDOS-port
1100
11011993-03-02  unknown
1102
1103	* README: original version
1104
11051993-02-22  unknown
1106
1107	* test/ftp.output, test/ftp.tab.c, test/ftp.tab.h, test/error.output, test/error.tab.c, test/error.tab.h:
1108	RCS_BASE
1109
1110	* skeleton.c, warshall.c, main.c, output.c, reader.c, closure.c, NOTES:
1111	original version
1112
11131992-10-12  unknown
1114
1115	* yacc.1: original version
1116
11171992-10-11  unknown
1118
1119	* defs.h: original version
1120
11211991-01-20  unknown
1122
1123	* mkpar.c, verbose.c: original version
1124
11251991-01-14  unknown
1126
1127	* lr0.c, Makefile, Makefile.old: original version
1128
11291990-07-16  unknown
1130
1131	* NEW_FEATURES: original version
1132
11331990-06-03  unknown
1134
1135	* ACKNOWLEDGEMENTS: original version
1136
11371990-02-05  unknown
1138
1139	* symtab.c, lalr.c, error.c: original version
1140
11411990-01-16  Thomas E. Dickey  <tom@invisible-island.net>
1142
1143	* test/code_error.y, test/pure_error.y: RCS_BASE
1144
11451990-01-16  unknown
1146
1147	* test/error.y: RCS_BASE
1148
11491989-11-22  unknown
1150
1151	* NO_WARRANTY: original version
1152
11531989-09-23  unknown
1154
1155	* test/ftp.y: RCS_BASE
1156
1157