]> git.saurik.com Git - bison.git/blame - ChangeLog
* src/bison.simple: Update and add '%%' directives.
[bison.git] / ChangeLog
CommitLineData
a8289c62
RA
12001-08-25 Robert Anisko <robert.anisko@epita.fr>
2
3 * src/bison.simple: Update and add '%%' directives.
4
b6610515
RA
52001-08-25 Robert Anisko <robert.anisko@epita.fr>
6
7 * src/reader.c (reader): Remove calls to 'output_headers' and
8 'output_trailers'. Remove some C output.
9 (readgram): Disable a piece of code that was writing a default
10 definition for 'YYSTYPE'.
11 (reader_output_yylsp): Remove.
12 (packsymbols): Output token defintions to a macro.
13 (copy_definition): Disable C output.
14
15 * src/reader.c (parse_macro_decl): New function used to parse macro
16 declarations.
17 (copy_string2): Put the body of copy_string into this new function.
18 Add a parameter to let the caller choose whether he wants to copy the
19 string delimiters or not.
20 (copy_string): Be a simple call to copy_string2 with the last argument
21 bound to true.
22 (read_declarations): Add case for macro definition.
23 (copy_identifier): New.
24 (parse_macro_decl): Read macro identifiers using copy_identifier
25 rather than lex.
26
26f609ff
RA
272001-08-25 Robert Anisko <robert.anisko@epita.fr>
28
29 * src/output.c (prepare): Add prefixed names.
30 (output_parser): Output semantic actions.
31 (output_parser): Fix bug on '%%line' directives.
32
33 * src/output.c (output_headers): Remove. The C code printed by this
34 function should now be in the skeletons.
35 (output_trailers): Remove.
36 (output): Disable call to 'reader_output_yylsp'.
37 (output_rule_data): Do not output tables to the table obstack.
38
39 * src/output.c: Remove some C dedicated output.
40 Improve the use of macro and output obstacks.
41 (output_defines): Remove.
42
43 * src/output.c (output_token_translations): Associate 'translate'
44 table with a macro. No output to the table obstack.
45 (output_gram): Same for 'rhs' and 'prhs'.
46 (output_stos): Same for 'stos'.
47 (output_rule_data): Same for 'r1' and 'r2'.
48 (token_actions): Same for 'defact'.
49 (goto_actions): Same for 'defgoto'.
50 (output_base): Same for 'pact' and 'pgoto'.
51 (output_table): Same for 'table'.
52 (output_check): Same for 'check'.
53
54 * src/output.c (output_table_data): New function.
55 (output_short_table): Remove.
56 (output_short_or_char_table): Remove.
57
58 * src/output.c (output_parser): Replace most of the skeleton copy code
59 with something new. Skeletons are now processed character by character
60 rather than line by line, and Bison looks for '%%' macros. This is the
61 first step in making Bison's output process (a lot) more flexible.
62 (output_parser): Use the macro table.
63
6f43b113
RA
642001-08-25 Robert Anisko <robert.anisko@epita.fr>
65
66 * src/main.c (main): Initialize the macro table.
67
dd3127cf
RA
682001-08-25 Robert Anisko <robert.anisko@epita.fr>
69
70 * src/lex.c (percent_table): Add tok_define.
71 * src/lex.h: Add tok_define.
72
aa321494
RA
732001-08-25 Robert Anisko <robert.anisko@epita.fr>
74
75 * src/macrotab.c: New file.
76 * src/macrotab.h: New file.
77 * src/Makefile.am: Update.
78
68bd3b6b
RA
792001-08-25 Robert Anisko <robert.anisko@epita.fr>
80
81 * lib/hash.c: New file.
82 * lib/hash.h: New file.
83 * lib/Makefile.am: Update.
84
45f8dd1e
AD
852001-08-15 Akim Demaille <akim@epita.fr>
86
87 Version 1.28c.
88
bbb5bcc6 892001-08-15 Marc Autret <prog@epita.fr>
0b8afb77
AD
90
91 * src/reader.c (readgram): Indent output macro YYSTYPE.
92 (packsymbols): Likewise.
93 (output_token_defines): Likewise.
94 * src/files.c: Standardize.
95 (compute_header_macro): New.
96 (defines_obstack_save): New. Use compute_header_macro.
97 (output_files): Update. Use defines_obstack_save.
98
f9a8293a
AD
992001-08-15 Akim Demaille <akim@epita.fr>
100
101 * doc/bison.texinfo (Table of Symbols): Document
102 YYSTACK_USE_ALLOCA.
103
150ca7a7
AD
1042001-08-15 Akim Demaille <akim@epita.fr>
105
106 * missing: Update from CVS Automake.
107 * config/config.guess, config/config.sub, config/texinfo.tex:
108 Update from gnu.org.
109
69b5cec4
AD
1102001-08-15 Akim Demaille <akim@epita.fr>
111
112 * Makefile.maint: Sync with CVS Autoconf.
113
f2b5126e
PB
1142001-08-14 Pascal Bart <pascal.bart@epita.fr>
115
69b5cec4 116 * doc/bison.texinfo: Include GNU Free Documentation License from
f2b5126e
PB
117 `fdl.texi'.
118 * doc/fdl.texi: Add to package.
119
4ecbf796
MA
1202001-08-14 Marc Autret <autret_m@epita.fr>
121
122 Turn on %{source,header}_extension features.
123
69b5cec4 124 * src/lex.c (percent_table): Un-CPP out header_extension and
4ecbf796
MA
125 source_extension.
126 * src/files.c (compute_exts_from_gf): Compare pointers with NULL.
69b5cec4 127 (compute_exts_from_src): Remove conditions. It restores priorities
4ecbf796
MA
128 between options.
129
95fb5662
MA
1302001-08-14 Marc Autret <autret_m@epita.fr>
131
132 * src/files.c (compute_base_names): Add extensions computing when
133 `--file-prefix' used.
134 Standardize function calls.
135
78d09da9
MA
1362001-08-13 Marc Autret <autret_m@epita.fr>
137
69b5cec4 138 * src/bison.simple (YYSTACK_USE_ALLOCA): Changed to allow users
78d09da9
MA
139 defining it (defined but null disables alloca).
140
5a009f2c
MA
1412001-08-13 Marc Autret <autret_m@epita.fr>
142
143 * src/bison.simple (_yy_memcpy): CPP reformat.
144
1e41465a
PB
1452001-08-13 Pascal Bart <pascal.bart@epita.fr>
146
147 * tests/atconfig.in (CPPFLAGS): Fix.
148
c67a198d
PB
1492001-08-10 Pascal Bart <pascal.bart@epita.fr>
150
79282c6c 151 * doc/bison.texinfo: Include GNU General Public License from
c67a198d
PB
152 `gpl.texi'.
153 * doc/gpl.texi: Add to package.
154
09a6de7e
MA
1552001-08-10 Marc Autret <autret_m@epita.fr>
156
157 * src/print_graph.h: Fix.
158 * src/reader.c (read_declarations): Use parse_header_extension_decl ().
159
b77b9ee0
AD
1602001-08-10 Akim Demaille <akim@epita.fr>
161
162 * src/system.h: Provide default declarations for stpcpy, strndup,
163 and strnlen.
164
3e259915
MA
1652001-08-10 Robert Anisko <anisko_r@epita.fr>
166
167 * doc/bison.texinfo (Locations): Update @$ stuff.
168
ca96bc2d
MA
1692001-08-09 Robert Anisko <anisko_r@epita.fr>
170
171 * src/bison.simple (YYLLOC_DEFAULT): Update.
172 (yyparse): Adjust.
173
fdc6758b
MA
1742001-08-08 Marc Autret <autret_m@epita.fr>
175
b77b9ee0 176 * doc/bison.texinfo: Change @samp{$<@dots{}>} to
fdc6758b
MA
177 @samp{$<@dots{}>@var{n}} in Section Actions in Mid-Rule.
178 Reported by Fabrice Bauzac.
957d4dbf 179
600cad3b
MA
1802001-08-08 Marc Autret <autret_m@epita.fr>
181
182 * src/vcg_default.h: Use NULL instead of 0 to initialize pointers.
183 * src/vcg.c (output_node): Fix.
184 * src/vcg.h: Cleanup.
185 * src/print_graph.c: Add comments.
b77b9ee0 186 (node_output_size): New global variable. Simplify the formatting of
600cad3b 187 the VCG graph output.
b77b9ee0 188 (print_actions): Unused code is now used. It notifies the final state
600cad3b 189 and no action states in the VCG graph. It also give the reduce actions.
b77b9ee0 190 The `shift and goto' edges are red and the `go to state' edges are
600cad3b
MA
191 blue.
192 Get the current node name and node_obstack by argument.
193 (node_obstack): New variable.
194 (print_state): Manage node_obstack.
195 (print_core): Use node_obstack given by argument.
196 A node is not only computed here but in print_actions also.
197 (print_graph): CPP out useless code instead of commenting it.
198
976e528f
AD
1992001-08-07 Pascal Bart <pascal.bart@epita.fr>
200
201 * tests/atconfig.in (CPPFLAGS): Fix.
202
20e8e5ca
AD
2032001-08-07 Akim Demaille <akim@epita.fr>
204
205 * src/print_graph.c (quote): New.
206 (print_core): Use it.
207
957d4dbf 2082001-08-06 Akim Demaille <akim@epita.fr>, Marc Autret <autret_m@epita.fr>
3e3da797 209
3e3da797
AD
210 * src/vcg.c (complain.h): Include it.
211 Unepitaize `return' invocations.
c4b66126 212 [NDEBUG] (main): Remove.
79282c6c 213 * src/vcg.h (node_t, edge_t, graph_t): Constify the char * members.
c4b66126
AD
214 * src/files.c (open_files): Initialize graph_obstack.
215 * src/print_graph.c (print_actions): CPP out useless code.
216 (print_core): Don't output the last `\n' in labels.
217 Use `quote'.
218 * src/files.c (output_files): Output the VCG file.
219 * src/main.c (main): Invoke print_graph ();
3e3da797 220
957d4dbf 2212001-08-06 Marc Autret <autret_m@epita.fr>
22c2cbc0
AD
222
223 Automaton VCG graph output.
224 Using option ``-g'' or long option ``--graph'', you can generate
225 a gram_filename.vcg file containing a VCG description of the LALR (1)
226 automaton of your grammar.
227
228 * src/main.c: Call to print_graph() function.
229 * src/getargs.h: Update.
230 * src/getargs.c (options): Update to catch `-g' and `--graph' options.
231 (graph_flag): New flag.
232 (longopts): Update.
233 (getargs): Add case `g'.
234 * src/files.c (graph_obstack): New obstack struct.
235 (open_files): Initialize new obstack.
236 (output_files): Saves graph_obstack if required.
237 * src/files.h (graph_obstack): New extern declaration.
238 * src/Makefile.am: Add new source files.
239
957d4dbf 2402001-08-06 Marc Autret <autret_m@epita.fr>
ce4d5ce0
AD
241
242 * src/print_graph.c, src/print_graph.h (graph): New.
243 * src/vcg.h: New file.
244 * src/vcg.c: New file, VCG graph handling.
245
7333d403
AD
2462001-08-06 Marc Autret <autret_m@epita.fr>
247
248 Add of %source_extension and %header_extension which specify
249 the source or/and the header output file extension.
250
251 * src/files.c (compute_base_names): Remove initialisation of
252 src_extension and header_extension.
253 (compute_exts_from_gf): Update.
254 (compute_exts_from_src): Update.
255 (output_files): Update.
256 * src/reader.c (parse_header_extension_decl): New.
257 (parse_source_extension_decl): New.
258 (read_declarations): New case statements for the new tokens.
259 * src/lex.c (percent_table): Add entries for %source_extension
260 and %header_extension.
261 * src/lex.h (token_e): New tokens tok_hdrext and tok_srcext.
262
84163231
AD
2632001-08-06 Marc Autret <autret_m@epita.fr>
264
265 * configure.in: Bump to 1.28c.
266 * doc/bison.texinfo: Texinfo thingies.
267
8303fc42
AD
2682001-08-04 Pascal Bart <pascal.bart@epita.fr>
269
270 * tests/atconfig.in (CPPFLAGS): Add.
271 * tests/calc.at (AT_CHECK): Use CPPFLAGS.
272
70a84437
AD
2732001-08-03 Akim Demaille <akim@epita.fr>
274
275 Version 1.28b.
276
2ce10144
AD
2772001-08-03 Akim Demaille <akim@epita.fr>
278
279 * tests/Makefile.am (check-local): Ship testsuite.
280 * tests/calc.at (_AT_DATA_CALC_Y): Prototype all the functions.
281 Include `string.h'.
282
1e3e4bc1
AD
2832001-08-03 Akim Demaille <akim@epita.fr>
284
285 * configure.in: Try using -Wformat when compiling.
286
42b45b7f
AD
2872001-08-03 Akim Demaille <akim@epita.fr>
288
289 * configure.in: Bump to 1.28b.
290
8f13fe33
AD
2912001-08-03 Akim Demaille <akim@epita.fr>
292
293 * src/complain.c: Adjust strerror_r portability issues.
294
b37ba92c
AD
2952001-08-03 Akim Demaille <akim@epita.fr>
296
297 Version 1.28a.
298
b0ce6046
AD
2992001-08-03 Akim Demaille <akim@epita.fr>
300
301 * src/getargs.c, src/getarg.h (skeleton)): Constify.
302 * src/lex.c (literalchar): Avoid name clashes on `buf'.
303 * src/getargs.c: Include complain.h.
304 * src/files.c, src/files.h (skeleton_find): Avoid name clashes.
305 * lib/quotearg.c, lib/quotearg.h: Update from fileutils 4.1.
306
d01c415b
AD
3072001-08-03 Akim Demaille <akim@epita.fr>
308
309 * src/reader.c (readgram): Display hidden chars in error messages.
310
459dd1a6
AD
3112001-08-03 Akim Demaille <akim@epita.fr>
312
313 Update to gettext 0.10.39.
314
53b74c0c
AD
3152001-08-03 Akim Demaille <akim@epita.fr>
316
317 * lib/strspn.c: New.
318
234a3be3
AD
3192001-08-01 Marc Autret <autret_m@epita.fr>
320
321 * doc/bison.texinfo: Update.
322 * doc/bison.1 (mandoc): Update.
323 * src/system.h (EXT_GUARD_C, EXT_STYPE_H): Remove .c and .h.
324 * src/files.c: Support output files extensions computing.
325 (src_extension): New static variable.
326 (header_extension): New static variable.
327 (tr): New function.
328 (get_extension_index): New function, gets the index of an extension
329 filename in a string.
330 (compute_exts_from_gf): New function, computes extensions from the
331 grammar file extension.
332 (compute_exts_from_src): New functions, computes extensions from the
333 C source file extension, file given by ``-o'' option.
334 (compute_base_names): Update.
335 (output_files): Update.
336
847bf1f5
AD
3372001-08-01 Robert Anisko <anisko_r@epita.fr>
338
d995fee7 339 * doc/bison.texi: Document @$.
847bf1f5
AD
340 (Locations): New section.
341
d074a105
AD
3422001-07-18 Akim Demaille <akim@epita.fr>
343
344 * Makefile.maint, GNUmakefile: New, from Autoconf 2.52.
345 * config/prev-version.txt, config/move-if-change: New.
346 * Makefile.am: Adjust.
347
3419715d
AD
3482001-07-08 Pascal Bart <pascal.bart@epita.fr>
349
350 * src/bison.simple (yyparse): Suppress warning `comparaison
351 between signed and unsigned'.
352
62ab6972
AD
3532001-07-05 Pascal Bart <pascal.bart@epita.fr>
354
355 * src/getargs.h (raw_flag): Remove.
356 * src/getargs.c: Die on `-r'/`--raw'.
357 * src/lex.c (parse_percent_token): Die on `%raw'.
358 * src/reader.c (output_token_defines): Suppress call to `raw_flag'.
359 * tests/calc.at: Suppress test with option `--raw'.
360
1e24cc5b
AD
3612001-07-14 Akim Demaille <akim@epita.fr>
362
363 * config/: New.
364 * configure.in: Require Autoconf 2.50.
365 Update to gettext 0.10.38.
366
32dfccf8
AD
3672001-03-16 Akim Demaille <akim@epita.fr>
368
369 * doc/bison.texinfo: ANSIfy the examples.
370
cd5bd6ac
AD
3712001-03-16 Akim Demaille <akim@epita.fr>
372
373 * getargs.c (skeleton): New variable.
374 (longopts): --skeleton is a new option.
375 (shortopts, getargs): -S is a new option.
376 * getargs.h: Declare skeleton.
377 * output.c (output_parser): Use it.
378
5141b016
AD
3792001-03-16 Akim Demaille <akim@epita.fr>
380
381 * m4/strerror_r.m4: New.
382 * m4/error.m4: Run AC_FUNC_STRERROR_R.
383 * lib/error.h, lib/error.c: Update.
384
447992b9
AD
3852001-03-16 Akim Demaille <akim@epita.fr>
386
387 * src/getargs.c (longopts): Clean up.
388
274d42ce
AD
3892001-02-21 Akim Demaille <akim@epita.fr>
390
391 * src/reader.c (gensym): `gensym_count' is your own.
392 Use a static buf to create the symbol name, as token_buffer is no
393 longer a buffer.
394
22c821f3
AD
3952001-02-08 Akim Demaille <akim@epita.fr>
396
397 * src/conflicts.c (conflict_report): Be sure not to append to res
398 between two calls, which could happen if both first sprintf were
399 skipped, but not the first cp += strlen.
400
18569462
AD
4012001-02-08 Akim Demaille <akim@epita.fr>
402
403 * lib/memchr.c, lib/stpcpy.c, lib/strndup.c, lib/strnlen.c:
404 New, from fileutils 4.0.37.
405 * configure.in: Require Autoconf 2.49c. I took some time before
406 making this decision. This is the only way out for portability
407 issues in Bison, it would mean way too much duplicate effort to
408 import in Bison features implemented in 2.49c since 2.13.
409 AC_REPLACE_FUNCS and AC_CHECK_DECLS the functions above.
410
0d8f3c8a
AD
4112001-02-02 Akim Demaille <akim@epita.fr>
412
413 * lib/malloc.c, lib/realloc.c: New, from the fileutils 4.0.37.
66075dcf 414 * lib/xalloc.h, lib/xmalloc.c: Update.
0d8f3c8a 415
f17bcd1f
AD
4162001-01-19 Akim Demaille <akim@epita.fr>
417
418 Get rid of the ad hoc handling of token_buffer in the scanner: use
419 the obstacks.
420
421 * src/lex.c (token_obstack): New.
422 (init_lex): Initialize it. No longer call...
423 (grow_token_buffer): this. Remove it.
424 Adjust all the places which used it to use the obstack.
425
511e79b3
AD
4262001-01-19 Akim Demaille <akim@epita.fr>
427
428 * src/lex.h: Rename all the tokens:
429 s/\bENDFILE\b/tok_eof/g;
430 s/\bIDENTIFIER\b/tok_identifier/g;
431 etc.
432 Let them be enums, not #define, to ease debugging.
433 Adjust all the code.
434
0d6508ef
AD
4352001-01-18 Akim Demaille <akim@epita.fr>
436
437 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
438 * src/lex.c (maxtoken, grow_token_buffer): Static.
439
6deb4447
AD
4402001-01-18 Akim Demaille <akim@epita.fr>
441
442 Since we now use obstacks, more % directives can be enabled.
443
444 * src/lex.c (percent_table): Also accept `%yacc',
445 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
446 `%debug'.
447 Handle the actions for `%semantic_parser' and `%pure_parser' here,
448 instead of returning a token.
449 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
450 * src/reader.c (read_declarations): Adjust.
451 * src/files.c (open_files): Don't call `compute_base_names', don't
452 compute `attrsfile' since they depend upon data which might be
453 *in* the input file now.
454 (output_files): Do it here.
455 * src/output.c (output_headers): Document the fact that this patch
456 introduces a guaranteed SEGV for semantic parsers.
457 * doc/bison.texinfo: Document them.
458 * tests/suite.at: Exercise these %options.
459
ff4423cc
AD
4602000-12-20 Akim Demaille <akim@epita.fr>
461
462 Also handle the output file (--verbose) with obstacks.
463
464 * files.c (foutput): Remove.
465 (output_obstack): New.
466 Adjust all dependencies.
467 * src/conflicts.c: Return a string.
468 * src/system.h (obstack_grow_string): Rename as...
469 (obstack_sgrow): this. Be ready to work with non literals.
470 (obstack_fgrow4): New.
471
956dba3a
AD
4722000-12-20 Akim Demaille <akim@epita.fr>
473
474 * src/files.c (open_files): Fix the computation of short_base_name
475 in the case of `-o foo.tab.c'.
476
337bab46
AD
4772000-12-20 Akim Demaille <akim@epita.fr>
478
479 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
480 (copy_dollar): Now that everything uses obstacks, get rid of the
481 FILE * parameters.
482
5d3214b8
AD
4832000-12-20 Akim Demaille <akim@epita.fr>
484
485 * src/files.c (open_files): Actually the `.output' file is based
486 on the short_base_name, not base_name.
487 * tests/suite.at (Checking output file names): Adjust.
488
29092a57
AD
4892000-12-20 Akim Demaille <akim@epita.fr>
490
491 * src/bison.s1: Remove, we now use directly...
492 * src/bison.simple: this.
493 * src/Makefile.am: Use pkgdata instead of data.
494
ea5607fd
AD
4952000-12-20 Akim Demaille <akim@epita.fr>
496
497 * src/files.c (guard_obstack): New.
498 (open_files): Initialize it.
499 (output_files): Dump it...
500 * src/files.h: Export it.
501 * src/reader.c (copy_guard): Use it.
502
27110317
AD
5032000-12-19 Akim Demaille <akim@epita.fr>
504
505 * src/files.c (outfile, defsfile, actfile): Removed as global
506 vars.
507 (open_files): Don't compute them.
508 (output_files): Adjust.
509 (base_name, short_base_name): Be global.
510 Adjust dependencies.
511
19c50364
AD
5122000-12-19 Akim Demaille <akim@epita.fr>
513
514 * src/files.c (strsuffix): New.
515 (stringappend): Be just like strcat but allocate.
516 (base_names): Eve out from open_files.
517 Try to simplify the rather hairy computation of base_name and
518 short_base_name.
519 (open_files): Use it.
520 * tests/suite.at (Checking output file names): New test.
521
573c1d9f
AD
5222000-12-19 Akim Demaille <akim@epita.fr>
523
524 * src/system.h (obstack_grow_literal_string): Rename as...
525 (obstack_grow_string): this.
526 * src/output.c (output_parser): Recognize `%% actions' instead of
527 `$'.
528 * src/bison.s1: s/$/%% actions/.
529 * src/bison.hairy: Likewise.
530
ef7ddedd
AD
5312000-12-19 Akim Demaille <akim@epita.fr>
532
533 * src/output.c (output_parser): Compute the `#line' lines when
534 there are.
535 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
536 Suggested by Hans Aberg.
537
ff61dabd
AD
5382000-12-19 Akim Demaille <akim@epita.fr>
539
540 Let the handling of the skeleton files be local to the procedures
541 that use it.
542
543 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
544 longer static.
545 (fparser, open_extra_files): Remove.
546 (open_files, output_files): Don't take care of fparser.
547 * src/files.h: Adjust.
548 * src/output.c (output_parser): Open and close the file to the
549 skeleton.
550 * src/reader.c (read_declarations): When %semantic_parser, open
551 fguard.
552
55b96341
AD
5532000-12-19 Akim Demaille <akim@epita.fr>
554
555 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
556 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
557
358c15b7
AD
5582000-12-19 Akim Demaille <akim@epita.fr>
559
560 * src/files.c (open_files): Yipee! We no longer need all the code
561 looking for `/tmp' since we have no tmp file.
562
7de3329e
AD
5632000-12-19 Akim Demaille <akim@epita.fr>
564
565 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
566 New macros.
567 * src/files.c (open_files): Less dependency on MSDOS etc.
568
3abcd459
AD
5692000-12-14 Akim Demaille <akim@epita.fr>
570
571 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
572 Provide a default definition.
573 Use it when executing the default @ action.
574 * src/reader.c (reader_output_yylsp): No longer include
575 `timestamp' and `text' in the default YYLTYPE.
576
2a91a95e
AD
5772000-12-12 Akim Demaille <akim@epita.fr>
578
579 * src/reader.c (copy_definition, parse_union_decl, copy_action)
580 (copy_guard): Quote the file names.
581 Reported by Laurent Mascherpa.
582
14d3eb9b
AD
5832000-12-12 Akim Demaille <akim@epita.fr>
584
585 * src/output.c (output_headers, output_program, output): Be sure
586 to escape special characters when outputting filenames.
587 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
588 (output_headers): Don't depend on them, Use ACTSTR.
589
d7045ec6
AD
5902000-11-17 Akim Demaille <akim@epita.fr>
591
592 * lib/obstack.h: Formatting changes.
593 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
594 prevents type checking.
595 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
596 cast the value to (void *): assigning a `foo *' to a `void *'
597 variable is valid.
598 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
599 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
600 append characters.
601
6fd54b73
AD
6022000-11-17 Akim Demaille <akim@epita.fr>
603
604 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
605 as...
606 (suite.m4, regression.m4, calc.m4): these.
607 * tests/atgeneral.m4: Update from CVS Autoconf.
608
4c50eae6
AD
6092000-11-17 Akim Demaille <akim@epita.fr>
610
611 * tests/regression.m4 (%union and --defines): New test,
612 demonstrating a current bug in the obstack implementation.
613
a35f64ea
AD
6142000-11-17 Akim Demaille <akim@epita.fr>
615
616 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
617 macros.
618 Use them to declare the variables which are global or local to
619 `yyparse'.
620
7de23534
AD
6212000-11-17 Akim Demaille <akim@epita.fr>
622
623 * acconfig.h: Remove, no longer used.
624
aa7815f5
AD
6252000-11-07 Akim Demaille <akim@epita.fr>
626
627 * src: s/Copyright (C)/Copyright/g.
628
5af1f549
AD
6292000-11-07 Akim Demaille <akim@epita.fr>
630
631 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
632 defining.
633 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
634
553e2b22
AD
6352000-11-07 Akim Demaille <akim@epita.fr>
636
637 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
638 Merge in a single CPP if/else.
639
8a4f41d6
AD
6402000-11-07 Akim Demaille <akim@epita.fr>
641
642 * src/output.c (output): Remove useless variables.
643 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
644 argument `data' for consistency with the prototypes.
645 Qualify it `const'.
646 (obstack_copy, obstack_copy0): Rename the second argument as
647 `address' for consistency. Qualify it `const'.
648 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
649 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
650 `const' their input argument (`data' or `address').
651 Adjust the corresponding macros to include `const' in casts.
652
095a3fb5
AD
6532000-11-03 Akim Demaille <akim@epita.fr>
654
655 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
656 s/PFILE1/BISON_HAIRY/.
657 Adjust dependencies.
658
d1cdce7c
AD
6592000-11-03 Akim Demaille <akim@epita.fr>
660
090c5ebf 661 For some reason, this was not applied.
d1cdce7c
AD
662
663 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
664 `unlink': it's no longer used.
665
9311529b
AD
6662000-11-03 Akim Demaille <akim@epita.fr>
667
668 * src/files.c (skeleton_find): New function, eved out of...
669 (open_files, open_extra_files): here.
670
d8880f69
AD
6712000-11-03 Akim Demaille <akim@epita.fr>
672
673 Don't use `atexit'.
674
675 * src/files.c (obstack_save): New function.
676 (done): Rename as...
677 (output_files): this.
678 Use `obstack_save'.
679 * src/main.c (main): Don't use `atexit' to register `done', since
680 it no longer has to remove tmp files, just call `output_files'
681 when there are no errors.
682
0dbb648e
AD
6832000-11-02 Akim Demaille <akim@epita.fr>
684
685 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
686 `unlink': it's no longer used.
687 * src/files.h: Formatting changes.
688
896fe5c1
AD
6892000-11-02 Akim Demaille <akim@epita.fr>
690
691 Remove the last uses of mktemp and unlink/delete.
692
693 * src/files.c (fdefines, ftable): Removed.
694 (defines_ostack, table_obstack): New.
695 Adjust dependencies of the former into uses of the latter.
696 * src/output.c (output_short_or_char_table, output_short_table):
697 Convert to using obstacks.
698 * src/reader.c (copy_comment2): Accept one FILE * and two
699 obstacks.
700 (output_token_defines, reader_output_yylsp): Use obstacks.
701 * src/system.h (obstack_fgrow3): New.
702
dd60faec
AD
7032000-11-01 Akim Demaille <akim@epita.fr>
704
705 Change each use of `fattrs' into a use of `attrs_obstack'.
706
707 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
708 * src/files.c (fattrs): Remove.
709 (attrs_obstack): New.
710 Adjust all dependencies.
711 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
712
8c7ebe49
AD
7132000-11-01 Akim Demaille <akim@epita.fr>
714
715 Introduce obstacks.
716 Change each use of `faction' into a use of `action_obstack'.
717
718 * lib/obstack.h, lib/obstack.c: New files.
719 * src/files.c (faction): Remove.
720 (action_obstack): New.
721 Adjust all dependencies.
722
77aee789
AD
7232000-10-20 Akim Demaille <akim@epita.fr>
724
725 * lib/quote.h (PARAMS): New macro. Use it.
726
43591cec
AD
7272000-10-16 Akim Demaille <akim@epita.fr>
728
729 * src/output.c (output_short_or_char_table): New function.
730 (output_short_table, output_token_translations): Use it.
731 (goto_actions): Use output_short_table.
732
1e9798d5
AD
7332000-10-16 Akim Demaille <akim@epita.fr>
734
735 * src/symtab.c (bucket_new): New function.
736 (getsym): Use it.
737
738 * src/output.c (output_short_table): New argument to display the
739 comment associated with the table.
740 Adjust dependencies.
741 (output_gram): Use it.
742 (output_rule_data): Nicer output layout for YYTNAME.
743
f282676b
AD
7442000-10-16 Akim Demaille <akim@epita.fr>
745
746 * src/lex.c (read_typename): New function.
747 (lex): Use it.
748 * src/reader.c (copy_dollar): Likewise.
749
550a72a3
AD
7502000-10-16 Akim Demaille <akim@epita.fr>
751
752 * src/reader.c (copy_comment2): Expect the input stream to be on
753 the `/' which is suspected to open a comment, instead of being
754 called after `//' or `/*' was read.
755 (copy_comment, copy_definition, parse_union_decl, copy_action)
756 (copy_guard): Adjust.
757
131e2fef
AD
7582000-10-16 Akim Demaille <akim@epita.fr>
759
760 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
761 `read_signed_integer'.
762
79282c5a
AD
7632000-10-16 Akim Demaille <akim@epita.fr>
764
765 * src/reader.c (copy_dollar): New function.
766 (copy_guard, copy_action): Use it.
767
ff4a34be
AD
7682000-10-16 Akim Demaille <akim@epita.fr>
769
770 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
771 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
772 New files, from Fileutils 4.0.27.
773 * src/main.c (printable_version): Remove.
774 * src/lex.c, src/reader.c: Use `quote'.
775
7762000-10-04 Akim Demaille <akim@epita.fr>
777
778 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
779
14ded682
AD
7802000-10-04 Akim Demaille <akim@epita.fr>
781
782 * doc/bison.texinfo: Various typos spotted by Neil Booth.
783
8e03724b
AD
7842000-10-04 Akim Demaille <akim@epita.fr>
785
786 When a literal string is used to define two different tokens,
787 `bison -v' segfaults.
788 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
789
790 * tests/regression.m4: New file.
791 Include the core of the sample provided by Piotr Gackiewicz.
792 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
793 properly.
794
a9e64249
AD
7952000-10-04 Akim Demaille <akim@epita.fr>
796
797 * src/reader.c (parse_expect_decl): Keep `count' within the size
798 of `buffer'.
799 From Neil Booth.
800
da9abf43
AD
8012000-10-02 Paul Eggert <eggert@twinsun.com>
802
803 * bison.s1 (yyparse): Assign the default value
804 unconditionally, to avoid a GCC warning and make the parser a
805 tad smaller.
806
c33638bb
AD
8072000-10-02 Akim Demaille <akim@epita.fr>
808
809 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
810 options.
811
444c570a
AD
8122000-10-02 Akim Demaille <akim@epita.fr>
813
814 * src/derives.c, src/print.c, src/reduce.c: To ease the
815 translation, move some `\n' out of the translated strings.
816
89cab50d
AD
8172000-10-02 Akim Demaille <akim@epita.fr>
818
819 The location tracking mechanism is precious for parse error
820 messages. Nevertheless, it is enabled only when `@n' is used in
821 the grammar, which is a different issue (you can use it in error
822 message, but not in the grammar per se). Therefore, there should
823 be another means to enable it.
824
825 * src/getargs.c (getargs): Support `--locations'.
826 (usage): Report it.
827 * src/getargs.h (locationsflag): Export it.
828 * src/lex.c (percent_table): Support `%locations'.
829 * src/reader.c (yylsp_needed): Remove this variable, now replaced
830 with `locationsflag'.
831 * doc/bison.texinfo: Document `--locations' and `%locations'.
832 Sort the options.
833 * tests/calc.m4: Test it.
834
835 For regularity of the names, replace each
836 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
837 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
838 In addition replace each `flag' with `_flag'.
839
d6c2cba0
AD
8402000-10-02 Akim Demaille <akim@epita.fr>
841
842 Also test parse error messages, including with YYERROR_VERBOSE.
843
844 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
845 associative).
846 Use it to check the computations.
847 Use it to check `nonassoc' is honored.
848 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
849 `--yyerror-verbose'.
850 (_AT_CHECK_CALC): Adjust to this option.
851 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
852
5a35a6cb
AD
8532000-10-02 Akim Demaille <akim@epita.fr>
854
855 Test also `--verbose', `--defines' and `--name-prefix'. Testing
856 the latter demonstrates a flaw in the handling of non debugging
857 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
858 was used in order to simplify:
859
860 #if YYDEBUG
861 if (yydebug)
862 {
863 ...
864 }
865 #endif
866
867 into
868
869 if (yydebug)
870 {
871 ...
872 }
873
874 unfortunately this leads to a CPP conflict when
875 `--name-prefix=foo' is used since it produces `#define yydebug
876 foodebug'.
877
878 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
879 (YYDPRINTF): New macro.
880 Spread its use.
881 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
882 the bison options.
883 Also test `--verbose', `--defines' and `--name-prefix'.
884
71da9eea
AD
8852000-10-02 Akim Demaille <akim@epita.fr>
886
887 Improve the readability of the produced parsers.
888
889 * src/bison.s1: Formatting changes.
890 Improve the comment related to the `$' mark.
891 (yydefault): Don't fall through to `yyresume': `goto' there.
892 * src/output.c (output_parser): When the `$' is met, skip the end
893 of its line.
894 New variable, `number_of_dollar_signs', to check there's exactly
895 one `$' in the parser skeleton.
896
95e36146
AD
8972000-10-02 Akim Demaille <akim@epita.fr>
898
899 * lib/xstrdup.c: New file, from the fileutils.
900 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
901 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
902 instead of strlen + xmalloc + strcpy.
903 * src/symtab.c (copys): Remove, use xstrdup instead.
904
d7020c20
AD
9052000-10-02 Akim Demaille <akim@epita.fr>
906
907 * src/gram.h (associativity): New enum type which replaces the
908 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
909 `right_assoc', `left_assoc' and `non_assoc'.
910 Adjust all dependencies.
911 * src/reader.c: Formatting changes.
912 (LTYPESTR): Don't define it, use it as a literal in
913 `reader_output_yylsp'.
914 * src/symtab.h (symbol_class): New enum type which replaces the
915 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
916 `sunknown', `stoken and `snterm'.
917
1916f98e
AD
9182000-10-02 Akim Demaille <akim@epita.fr>
919
920 * src/getargs.c (fixed_outfiles): Rename as...
921 (yaccflag): for consistency and accuracy.
922 Adjust dependencies.
923
d7913476
AD
9242000-10-02 Akim Demaille <akim@epita.fr>
925
926 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
927 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
928 difficult and introduced a lot of core dump. It turns out that
929 Bison used an implementation of `xmalloc' based on `calloc', and
930 at various places it does depend upon the initialization to 0. I
931 have not tried to isolate the pertinent places, and all the former
932 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
933 someone should address this issue.
934
935 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
936 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
937 files.
938 Adjust dependencies.
939 * src/warshall.h: New file.
940 Propagate.
941
340ef489
AD
9422000-10-02 Akim Demaille <akim@epita.fr>
943
944 Various anti-`extern in *.c' changes.
945
946 * src/system.h: Include `assert.h'.
947
b2ca4022
AD
9482000-10-02 Akim Demaille <akim@epita.fr>
949
950 * src/state.h (nstates, final_state, first_state, first_shift)
951 (first_reduction): Move their exportation from here...
952 * src/LR0.h: to here.
953 Adjust dependencies.
954 * src/getargs.c (statisticsflag): New variable.
955 Add support for `--statistics'.
956 Adjust dependencies.
957
958 Remove a lot of now useless `extern' statements in most files.
959
403b315b
AD
9602000-10-02 Akim Demaille <akim@epita.fr>
961
962 * src/LR0.h: New file.
963 Propagate its use.
964
07a58c13
AD
9652000-10-02 Akim Demaille <akim@epita.fr>
966
967 * src/print.h: New file.
968 Propagate its use.
969 * src/print.c: Formatting and ordering changes.
970 (verbose, terse): Replace with...
971 (print_results): this new function.
972 Adjust dependencies.
973
0619caf0
AD
9742000-10-02 Akim Demaille <akim@epita.fr>
975
976 * src/conflicts.c (conflict_report): New function.
977 (conflict_log, verbose_conflict_log): Replace with...
978 (print_conflicts): this function.
979 Adjust dependencies.
980 * src/conflicts.h: New file.
981 Propagate its inclusion.
982
3519ec76
AD
9832000-10-02 Akim Demaille <akim@epita.fr>
984
985 * src/nullable.h: New file.
986 Propagate its inclusion.
987 * src/nullable.c: Formatting changes.
988
015acc48
AD
9892000-10-02 Akim Demaille <akim@epita.fr>
990
991 * src/reduce.h: New file.
992 Propagate its inclusion.
993 * src/reduce.c: Topological sort and other formatting changes.
994 (bool, TRUE, FALSE): Move their definition to...
995 * src/system.h: here.
996
8963a27b
AD
9972000-10-02 Akim Demaille <akim@epita.fr>
998
999 * src/files.c: Formatting changes.
1000 (tryopen, tryclose, openfiles): Rename as...
1001 (xfopen, xfclose, open_files): this.
1002 (stringappend): static.
1003 * src/files.h: Complete the list of exported symbols.
1004 Propagate its use.
1005
a70083a3
AD
10062000-10-02 Akim Demaille <akim@epita.fr>
1007
1008 * src/reader.h: New file.
1009 Propagate its use instead of tedious list of `extern' and
1010 prototypes.
1011 * src/reader.c: Formatting changes, topological sort,
1012 s/register//.
1013
abadc117
AD
10142000-10-02 Akim Demaille <akim@epita.fr>
1015
1016 * src/lex.h: Prototype `lex.c' exported functions.
1017 * src/reader.c: Adjust.
1018 * src/lex.c: Formatting changes.
1019 (safegetc): Rename as...
1020 (xgetc): this.
1021
720d742f
AD
10222000-10-02 Akim Demaille <akim@epita.fr>
1023
1024 * src/lalr.h: New file.
1025 Propagate its inclusion instead of prototypes and `extern'.
1026 * src/lalr.c: Formatting changes, topological sorting etc.
1027
f2acea59
AD
10282000-10-02 Akim Demaille <akim@epita.fr>
1029
1030 * src/output.c (token_actions): Introduce a temporary array,
1031 YYDEFACT, that makes it possible for this function to use
1032 output_short_table.
1033
d019d655
AD
10342000-10-02 Akim Demaille <akim@epita.fr>
1035
1036 `user_toknums' is output as a `short[]' in `output.c', while it is
1037 defined as a `int[]' in `reader.c'. For consistency with the
1038 other output tables, `user_toknums' is now defined as a table of
1039 shorts.
1040
1041 * src/reader.c (user_toknums): Be a short table instead of an int
1042 table.
1043 Adjust dependencies.
1044
1045 Factor the short table outputs.
1046
1047 * src/output.c (output_short_table): New function.
1048 * src/output.c (output_gram, output_stos, output_rule_data)
1049 (output_base, output_table, output_check): Use it.
1050
6c89f1c1
AD
10512000-10-02 Akim Demaille <akim@epita.fr>
1052
1053 * src/output.c (output): Topological sort of the functions, in
1054 order to get rid of the `static' prototypes.
1055 No longer use `register'.
1056 * src/output.h: New file.
1057 Propagate its inclusion in files explicitly prototyping functions
1058 from output.c.
1059
d9efd181
AD
10602000-09-21 Akim Demaille <akim@epita.fr>
1061
1062 * src/atgeneral.m4: Update from Autoconf.
1063
c29240e7 10642000-09-21 Akim Demaille <akim@epita.fr>
2fa6973e
AD
1065
1066 * src/closure.h: New file.
1067 * src/closure.c: Formatting changes, topological sort over the
1068 functions, use of closure.h.
1069 (initialize_closure, finalize_closure): Rename as...
1070 (new_closure, free_closure): these. Adjust dependencies.
1071 * src/LR0.c: Formatting changes, topological sort, use of
1072 cloture.h.
1073 (initialize_states): Rename as...
1074 (new_states): this.
1075 * src/Makefile.am (noinst_HEADERS): Adjust.
1076
499daa50
AD
10772000-09-20 Akim Demaille <akim@epita.fr>
1078
1079 * src/acconfig.h: Don't protect config.h against multiple
1080 inclusion.
1081 Don't define PARAMS.
1082 * src/system.h: Define PARAMS.
1083 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
1084 purpose of config.h. system.h must not try to fix wrong
1085 definitions in config.h.
1086
cc84fd5d
AD
10872000-09-20 Akim Demaille <akim@epita.fr>
1088
1089 * src/derives.h: New file.
1090 * src/main.c, src/derives.h: Use it.
1091 Formatting changes.
1092 * src/Makefile.am (noinst_HEADERS): Adjust.
1093
db5b3a89
AD
10942000-09-20 Akim Demaille <akim@epita.fr>
1095
1096 * tests/atgeneral.m4: Update from Autoconf.
1097 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
1098 (AT_CHECK_CALC): New macros.
1099 Use these macros to test bison with options `', `--raw',
1100 `--debug', `--yacc', `--yacc --debug'.
1101
ceed8467
AD
11022000-09-19 Akim Demaille <akim@epita.fr>
1103
1104 * src/output.c: Formatting changes.
1105 * src/machine.h: Remove, leaving its contents in...
1106 * src/system.h: here.
1107 Include stdio.h.
1108 Adjust all dependencies on stdio.h and machine.h.
1109 * src/getargs.h: New file.
1110 Let all `extern' declarations about getargs.c be replaced with
1111 inclusion of `getargs.h'.
1112 * src/Makefile.am (noinst_HEADERS): Adjust.
1113
1114 * tests/calc.m4 (yyin): Be initialized in main, not on the global
1115 scope.
1116 (yyerror): Returns void, not int.
1117 * doc/bison.texinfo: Formatting changes.
1118
05a1d24b
AD
11192000-09-19 Akim Demaille <akim@epita.fr>
1120
1121 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
1122 portable.
1123
cbd25751
AD
11242000-09-18 Akim Demaille <akim@epita.fr>
1125
1126 * configure.in: Append WARNING_CFLAGS to CFLAGS.
1127 * src/Makefile.am (INCLUDES): Don't.
1128 Be ready to fetch headers in lib/.
1129
13863333
AD
11302000-09-18 Akim Demaille <akim@epita.fr>
1131
1132 * doc/bison.texinfo: Update the copyright.
1133 ANSIfy and GNUify the examples.
1134 Remove the old menu.
1135
0d533154
AD
11362000-09-18 Akim Demaille <akim@epita.fr>
1137
1138 First set of tests: use the `calc' example from the documentation.
1139
1140 * src/bison.s1 (yyparse): Condition the code using `yytname' which
1141 is defined only when YYDEBUG is.
1142 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
1143 * src/files.c (tryopen, tryclose): Formatting changes.
1144 Move to the top and be static.
1145 * src/reader.c (read_signed_integer): Likewise.
1146 * tests/calc.m4: New file.
1147 * Makefile.am, suite.m4: Adjust.
1148 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
1149
e79137ac
AD
11502000-09-18 Akim Demaille <akim@epita.fr>
1151
1152 Add support for an Autotest test suite for Bison.
1153
1154 * m4/m4.m4, m4/atconfig.m4: New files.
1155 * m4/Makefile.am (EXTRA_DIST): Adjust.
1156 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
1157 files.
1158 * src/getargs.c: Display a more standard --version message.
1159 * src/reader.c (reader): Formatting changes.
1160 No longer depend upon VERSION_STRING.
1161 * configure.in: No longer use `dnl'.
1162 Set up the test suite and the new directory `tests/.
1163 (VERSION_STRING): Remove.
1164
27821bff
AD
11652000-04-14 Akim Demaille <akim@epita.fr>
1166
1167 * src/reader.c (copy_comment2): New function, same as former
1168 `copy_comment', but outputs into two FILE *.
1169 (copy_comment): Use it.
1170 (parse_union_decl): Use it.
1171 (get_type, parse_start_decl): Use the same `invalid' message.
1172 (parse_start_decl, parse_union_decl): Use the same `multiple'
1173 message.
1174 (parse_union_decl, copy_guard, copy_action): Use the same
1175 `unmatched' message.
1176 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
1177
cfe5fbc0
AD
11782000-03-31 Akim Demaille <akim@epita.fr>
1179
1180 * src/files.c (tryopen, tryclose): Move to the top.
1181 Be static.
1182
cb7db13e
AD
11832000-03-31 Akim Demaille <akim@epita.fr>
1184
1185 * src/main.c (main): Don't call `done', exit does it.
1186
a0f6b076
AD
11872000-03-31 Akim Demaille <akim@epita.fr>
1188
36281465
AD
1189 * allocate.c: s/return (foo)/return foo/.
1190 * lalr.c: Likewise.
1191 * LR0.c: Likewise.
1192 * output.c: Likewise.
1193 * reader.c: Likewise.
1194 * symtab.c: Likewise.
1195 * vmsgetargs.c: Likewise.
1196
11972000-03-31 Akim Demaille <akim@epita.fr>
1198
1199 Clean up the error reporting functions.
a0f6b076
AD
1200
1201 * src/report.c: New file.
1202 * src/report.h: Likewise.
1203 * src/Makefile.am: Adjust.
1204 * m4/error.m4: New file.
1205 * m4/Makefile.am: Adjust.
1206 * configure.in (jm_PREREQ_ERROR): Call it.
1207 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
1208 Remove.
1209 (fatal, fatals): Remove. All callers use complain.c::fatal.
1210 (warn, warni, warns, warnss, warnss): Remove. All callers use
1211 complain.c::complain.
1212 (toomany): Remove, use fatal instead.
1213 * src/files.c (done): No argument, use complain_message_count.
1214 * src/main.c (main): Register `done' to `atexit'.
1215
1216 * src/getargs.c (usage): More `fputs', less `fprintf'.
1217
18539825
AD
12182000-03-28 Akim Demaille <akim@epita.fr>
1219
1220 * lib/: New directory.
1221 * Makefile.am (SUBDIRS): Adjust.
1222 * configure.in: Adjust.
1223 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
1224 useless.
1225 * src/alloca.c: Moved to lib/.
1226 * src/getopt.c: Likewise.
1227 * src/getopt1.c: Likewise.
1228 * src/getopt.h: Likewise.
1229 * src/ansi2knr.c: Likewise.
1230 * src/ansi2knr.1: Likewise.
1231 * src/Makefile.am: Adjust.
1232 * lib/Makefile.am: New file.
1233
9f306f2a
AD
12342000-03-28 Akim Demaille <akim@epita.fr>
1235
1236 * src/getargs.c (usage): Refresh the help message.
1237
0ba347b6
AD
12382000-03-17 Akim Demaille <akim@epita.fr>
1239
1240 * src/getopt1.c: Updated from textutils 2.0e
1241 * src/getopt.c: Likewise.
1242 * src/getopt.h: Likewise.
1243
dbe7f271
AD
12442000-03-17 Akim Demaille <akim@epita.fr>
1245
1246 * src/Makefile.am (bison.simple): Fix the awk program: quote only
1247 the file name, not the whole `#line LINE FILE'.
1248
75bbe78d
AD
12492000-03-17 Akim Demaille <akim@epita.fr>
1250
1251 On syntax errors, report the token on which we choked.
1252
aa5fd0ee
AD
1253 * src/bison.s1 (yyparse): In the label yyerrlab, when
1254 YYERROR_VERBOSE, add yychar in msg.
75bbe78d 1255
7b306f52
AD
12562000-03-17 Akim Demaille <akim@epita.fr>
1257
aa5fd0ee 1258 * src/reader.c (copy_at): New function.
7b306f52
AD
1259 (copy_guard): Use it.
1260 (copy_action): Use it.
1261
e87b5700
AD
12622000-03-17 Akim Demaille <akim@epita.fr>
1263
1264 Be kind to translators, save some useless translations.
1265
aa5fd0ee 1266 * src/main.c (banner): New function.
e87b5700
AD
1267 (fatal_banner): Use it.
1268 (warn_banner): Use it.
1269
ae3c3164
AD
12702000-03-17 Akim Demaille <akim@epita.fr>
1271
aa5fd0ee
AD
1272 * src/reader.c (copy_definition): Use copy_string and
1273 copy_comment. Removed now unused `match', `ended',
1274 `cplus_comment'.
ae3c3164
AD
1275 (copy_comment, copy_string): Moved, to be visible from
1276 copy_definition.
1277
4dc58e7c
AD
12782000-03-17 Akim Demaille <akim@epita.fr>
1279
aa5fd0ee
AD
1280 * src/reader.c (copy_string): Declare `static inline'. No
1281 problems with inline, since it is checked by configure.
4dc58e7c
AD
1282 (copy_comment): Likewise.
1283
0a6384c4
AD
12842000-03-17 Akim Demaille <akim@epita.fr>
1285
aa5fd0ee 1286 * src/reader.c (packsymbols): Formatting changes.
0a6384c4 1287
3cef001a
AD
12882000-03-17 Akim Demaille <akim@epita.fr>
1289
aa5fd0ee 1290 * src/reader.c (copy_comment): New function, factored out from:
3cef001a
AD
1291 (copy_action): Use it. Removed now unused `match', `ended',
1292 `cplus_comment'.
1293 (copy_guard): Likewise.
1294
ca36d2ef
AD
12952000-03-17 Akim Demaille <akim@epita.fr>
1296
aa5fd0ee 1297 * src/reader.c (copy_string): New function, factored out from:
ca36d2ef
AD
1298 (copy_action): Use it.
1299 (copy_guard): Likewise.
1300
6666f98f
AD
13012000-03-17 Akim Demaille <akim@epita.fr>
1302
1303 Change the handling of @s so that they behave exactly like $s.
1304 There is now a pseudo variable @$ (readble and writable), location
1305 of the lhs of the rule (by default ranging from the location of
1306 the first symbol of the rhs, to the location of the last symbol,
1307 or, if the rhs is empty, YYLLOC).
1308
1309 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
1310 yyval.
1311 (yyparse): When providing a default semantic action, provide a
1312 default location action.
1313 (after the $): No longer change `*YYLSP', just stack YYLOC the
1314 same way you stack YYVAL.
1315 * src/reader.c (read_declarations): Use warns.
1316 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
1317 (copy_action, case '@'): Likewise.
1318 Use a standard error message, to save useless work from
1319 translators.
1320
41aca2e0
AD
13212000-03-17 Akim Demaille <akim@epita.fr>
1322
aa5fd0ee
AD
1323 * src/bison.s1: Formatting and cosmetics changes.
1324 * src/reader.c: Likewise.
41aca2e0
AD
1325 Update the Copyright notice.
1326
dc08c1d5
AD
13272000-03-17 Akim Demaille <akim@epita.fr>
1328
aa5fd0ee
AD
1329 * src/bison.s1 (#line): All set to `#line' only, since the
1330 Makefile now handles them.
dc08c1d5 1331
9ee3c97b
AD
13322000-03-16 Akim Demaille <akim@epita.fr>
1333
1334 * src/output.c (output_rule_data): Output the documentation of
1335 some of the tables.
1336 (Copyright notice): Update.
1337 Formatting changes.
1338
0de741ca
AD
13392000-03-16 Akim Demaille <akim@epita.fr>
1340
1341 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
1342 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
1343 One `#if YYDEBUG' remains, since it uses variables which are
1344 defined only if `YYDEBUG != 0'.
1345
bb10be54
AD
13462000-03-16 Akim Demaille <akim@epita.fr>
1347
1348 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
1349 and related variables so that the similarities are highlighted.
1350
b07b484a
AD
13512000-03-16 Akim Demaille <akim@epita.fr>
1352
1353 * src/bison.s1: Properly indent CPP directives.
1354
361f60b3
AD
13552000-03-16 Akim Demaille <akim@epita.fr>
1356
1357 * src/bison.s1: Properly indent the `alloca' CPP section.
1358
8c44d3ec
AD
13592000-03-16 Akim Demaille <akim@epita.fr>
1360
1361 Do not hard code values of directories in `configure.in'.
1362 Update the `configure' tool chain.
1363
1364 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
1365 src/makefile.am.
1366 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
1367 (AC_OUTPUT): Add m4/Makefile.
1368 Bump to bison 1.28a, 1.29 has never been released.
1369 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
1370 handled via src/Makefile.am.
1371 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
1372 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
1373 autoheader.
1374 * Makefile.am (SUBDIRS): Add m4.
1375 (ACLOCAL_AM_FLAGS): New variable.
1376 (AUTOMAKE_OPTIONS): Add check-news.
1377 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
1378 the proper line number and file name.
1379 (DEFS): Propagate the location of bison library files and of the
1380 locale files.
1381 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
1382 builddir.
1383 * acinclude.m4: Remove, replaced by the directory m4.
1384 * m4/Makefile.am (EXTRA_DIST): New variable.
1385 * m4/gettext.m4: New file, from the fileutils.
1386 * m4/lcmessage.m4: Likewise
1387 * m4/progtest.m4: Likewise.
1388 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
1389
f95997e7
AD
13902000-03-10 Akim Demaille <akim@epita.fr>
1391
1392 * src/closure.c:
1393 Formatting changes of various comments.
1394 Respect the GNU coding standards at various places.
1395 Don't use `_()' when no translation is needed.
1396
13971999-12-13 Jesse Thilo <jthilo@gnu.org>
1398
1399 * src/files.c:
1400 OS/2 honors TMPDIR environment variable.
1401
14021999-12-13 Jesse Thilo <jthilo@gnu.org>
1403
1404 * doc/bison.texinfo: Tweaked spelling and grammar.
1405 Updated ISBN.
1406 Removed reference to price of printed copy.
1407 Mention BISON_SIMPLE and BISON_HAIRY.
1408
14091999-12-13 Jesse Thilo <jthilo@gnu.org>
1410
1411 * configure.in, NEWS:
1412 Bison 1.29 released.
1413
14141999-10-27 Jesse Thilo <jthilo@gnu.org>
1415
1416 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
1417 Added reference card.
1418
14191999-07-26 Jesse Thilo <jthilo@gnu.org>
1420
1421 * po/ru.po: Added Russian translation.
1422
14231999-07-26 Jesse Thilo <jthilo@gnu.org>
1424
1425 * configure.in: Added Russian translation.
1426
14271999-07-06 Jesse Thilo <jthilo@gnu.org>
1428
1429 * configure.in, NEWS, README:
1430 Released version 1.28.
1431
14321999-06-14 Jesse Thilo <jthilo@gnu.org>
1433
1434 * src/system.h:
1435 Squashed redefinition warning on some systems.
1436
1437 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
1438 Have configure build version string instead of relying on ANSI string
1439 concatentation.
1440
14411999-06-14 Jesse Thilo <jthilo@gnu.org>
1442
1443 * po/POTFILES.in: Got rid of version.c.
1444
14451999-06-14 Jesse Thilo <jthilo@gnu.org>
1446
1447 * acconfig.h, configure.in:
1448 Have configure build version string instead of relying on ANSI string
1449 concatentation.
1450
14511999-06-08 Jesse Thilo <jthilo@gnu.org>
1452
1453 * doc/bison.1:
1454 Dropped mention of `+' for long-named options.
1455
14561999-05-30 Jesse Thilo <jthilo@gnu.org>
1457
1458 * src/files.c: Added <unistd.h> for unlink().
1459
1460 * src/Makefile.am, src/system.h:
1461 I18n fixes.
1462
14631999-05-30 Jesse Thilo <jthilo@gnu.org>
1464
1465 * README: Added a FAQ list.
1466
1467 * configure.in, acconfig.h:
1468 I18n fixes.
1469
14701999-05-30 Jesse Thilo <jthilo@gnu.org>
1471
1472 * doc/FAQ, doc/Makefile.am:
1473 Added a FAQ list.
1474
14751999-05-19 Jesse Thilo <jthilo@gnu.org>
1476
1477 * src/alloc.h, src/symtab.h, src/version.c:
1478 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1479
14801999-04-18 Jesse Thilo <jthilo@gnu.org>
1481
1482 * src/.cvsignore, src/Makefile.am:
1483 Reorganized: sources in `src', documentation in `doc'.
1484
1485 * src/lex.c (literalchar):
1486 fixed the code for escaping double quotes (thanks
1487 Jonathan Czisny.)
1488
14891999-04-18 Jesse Thilo <jthilo@gnu.org>
1490
1491 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1492 Adjusted paths to reflect directory reorganization.
1493
14941999-04-18 Jesse Thilo <jthilo@gnu.org>
1495
1496 * doc/.cvsignore, doc/Makefile.am:
1497 Reorganized: sources in `src', documentation in `doc'.
1498
14991999-04-18 Jesse Thilo <jthilo@gnu.org>
1500
1501 * configure.in:
1502 Updated AC_INIT file to reflect directory reorganization.
1503
1504 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1505 Reorganized: sources in `src', documentation in `doc'.
1506
15071999-04-13 Jesse Thilo <jthilo@gnu.org>
1508
1509 * src/allocate.c:
1510 Don't declare calloc() and realloc() if not necessary.
1511
15121999-04-13 Jesse Thilo <jthilo@gnu.org>
1513
1514 * configure.in, acconfig.h, acinclude.m4:
1515 Don't declare calloc() and realloc() if not necessary.
1516
15171999-03-23 Jesse Thilo <jthilo@gnu.org>
1518
1519 * po/.cvsignore: Added i18n support.
1520
15211999-03-23 Jesse Thilo <jthilo@gnu.org>
1522
1523 * acconfig.h, configure.in, Makefile.am:
1524 Added i18n support.
1525
15261999-03-22 Jesse Thilo <jthilo@gnu.org>
1527
1528 * src/bison.s1: Fixed #line numbers.
1529
15301999-03-15 Jesse Thilo <jthilo@gnu.org>
1531
1532 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1533 Added PO files from Translation Project.
1534
15351999-03-03 Jesse Thilo <jthilo@gnu.org>
1536
1537 * Makefile.am:
1538 Added support for non-ANSI compilers (ansi2knr).
1539
15401999-02-16 Jesse Thilo <jthilo@gnu.org>
1541
1542 * configure.in: Bumped version number to 1.27.
1543
1544 * Makefile.am:
1545 Added `bison.simple' to list of files removed by `make distclean'.
1546
15471999-02-12 Jesse Thilo <jthilo@gnu.org>
1548
1549 * src/files.c, src/files.h:
1550 Defined locations of parser files in config.h instead of Makefile.
1551
15521999-02-12 Jesse Thilo <jthilo@gnu.org>
1553
1554 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1555 Defined locations of parser files in config.h instead of Makefile.
1556
15571999-02-09 Jesse Thilo <jthilo@gnu.org>
1558
1559 * Makefile.am:
1560 Removed inappropriate use of $< macro.
1561
15621999-02-05 Jesse Thilo <jthilo@gnu.org>
1563
1564 * po/Makefile.in.in, po/POTFILES.in:
1565 Add `po' directory skeleton.
1566
15671999-01-27 Jesse Thilo <jthilo@gnu.org>
1568
1569 * README: Document help-bison list.
1570
1571 * configure.in: Add check for mkstemp().
1572
15731999-01-20 Jesse Thilo <jthilo@gnu.org>
1574
1575 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1576 Hush a few compiler warnings.
1577
1578 * src/files.c:
1579 Add tryclose(), which verifies that fclose was successful.
1580 Hush a couple of compiler warnings.
1581
15821999-01-20 Jesse Thilo <jthilo@gnu.org>
1583
1584 * Makefile.am, OChangeLog:
1585 ChangeLog is now automatically generated. Include the old version as
1586 OChangeLog.
1587
15881999-01-14 Jesse Thilo <jthilo@gnu.org>
1589
1590 * src/gram.h, src/lalr.c, src/lex.c, src/lex.h, src/machine.h, src/main.c, src/nullable.c, src/output.c, src/print.c, src/reader.c, src/reduce.c, src/state.h, src/symtab.c, src/symtab.h, src/types.h, src/vmsgetargs.c, src/warshall.c, src/allocate.c, src/alloc.h, src/bison.s1, src/closure.c, src/conflicts.c, src/derives.c, src/files.c, src/files.h, src/getargs.c, src/gram.c, src/LR0.c:
1591 Update FSF address.
1592
15931999-01-14 Jesse Thilo <jthilo@gnu.org>
1594
1595 * doc/bison.texinfo: Fix formatting glitch.
1596
1597 * doc/bison.texinfo: Update FSF address.
1598
15991999-01-14 Jesse Thilo <jthilo@gnu.org>
1600
1601 * acconfig.h: Update FSF address.
1602
16031999-01-08 Jesse Thilo <jthilo@gnu.org>
1604
1605 * src/system.h:
1606 Don't define PACKAGE here, since config.h defines it.
1607
16081998-12-30 Jesse Thilo <jthilo@gnu.org>
1609
1610 * src/reader.c: Update copyright date.
1611
1612 * src/main.c:
1613 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1614 favor of output directly to stderr (avoids buffer overruns).
1615
1616 * src/reader.c: Some checks for premature EOF.
1617
1618 * src/allocate.c, src/alloc.h, src/closure.c, src/conflicts.c, src/derives.c, src/getargs.c, src/gram.c, src/lalr.c, src/lex.c, src/LR0.c, src/main.c, src/nullable.c, src/output.c, src/print.c, src/reduce.c, src/symtab.c, src/symtab.h, src/warshall.c:
1619 Use prototypes if the compiler understands them.
1620
1621 * src/files.c: Honor TMPDIR on Unix hosts.
1622 Use prototypes if the compiler understands them.
1623
1624 * src/reader.c:
1625 Fix a couple of buffer overrun bugs.
1626 Use prototypes if the compiler understands them.
1627
1628 * src/system.h: Include unistd.h and ctype.h.
1629 Use #ifdef instead of #if for NLS symbols.
1630
16311998-12-30 Jesse Thilo <jthilo@gnu.org>
1632
1633 * doc/bison.texinfo:
1634 Delete comment "consider using @set for edition number, etc..." since
1635 we now are doing so.
1636
16371998-12-30 Jesse Thilo <jthilo@gnu.org>
1638
1639 * configure.in:
1640 Use prototypes if the compiler understands them.
1641
1642 * NEWS: Document 1.26 highlights.
1643
1644 * Makefile.am: Require Automake 1.3 or later.
1645
1646 * acconfig.h:
1647 Use prototypes if the compiler understands them.
1648
16491998-12-29 Jesse Thilo <jthilo@gnu.org>
1650
1651 * src/version.c:
1652 Use VERSION symbol from automake for version number.
1653
16541998-12-29 Jesse Thilo <jthilo@gnu.org>
1655
1656 * acconfig.h, configure.in, version.cin:
1657 Use VERSION symbol from automake for version number.
1658
16591998-11-28 Jesse Thilo <jthilo@gnu.org>
1660
1661 * Makefile.am:
1662 Distribute original version of simple parser (bison.s1), not built
1663 version (bison.simple).
1664
16651998-11-28 Jesse Thilo <jthilo@gnu.org>
1666
1667 * doc/bison.texinfo: Add info dir entry.
1668
1669 * doc/bison.texinfo:
1670 Let automake put version number into documentation.
1671
16721998-11-26 Jesse Thilo <jthilo@gnu.org>
1673
1674 * src/bison.cld, src/build.com, src/vmshlp.mar:
1675 Add non-RCS files from /gd/gnu/bison.
1676
16771998-11-26 Jesse Thilo <jthilo@gnu.org>
1678
1679 * doc/bison.1:
1680 Document the BISON_HAIRY and BISON_SIMPLE variables.
1681
16821998-11-25 Jesse Thilo <jthilo@gnu.org>
1683
1684 * src/version.c: Build version.c automatically.
1685
1686 * src/reader.c:
1687 Fix token numbering (used to start at 258, not 257).
1688
1689 * src/system.h: Include config.h.
1690
1691 * src/getargs.c: Update bug report address.
1692
1693 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1694 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1695
16961998-11-25 Jesse Thilo <jthilo@gnu.org>
1697
1698 * Makefile.am:
1699 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1700
1701 * configure.in, version.cin:
1702 Build version.c automatically.
1703
1704 * AUTHORS: Add AUTHORS file.
1705
1706 * README: Update bug report address.
1707
1708 * bison.simple:
1709 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1710
1711 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1712 Add automake stuff.
1713
17141998-11-25 Jesse Thilo <jthilo@gnu.org>
1715
1716 * doc/bison.texinfo: Clean up some formatting.
1717
17181998-05-05 Richard Stallman <rms@gnu.org>
1719
1720 * doc/bison.texinfo:
1721 Explain better why to make a pure parser.
1722
17231998-01-05 Richard Stallman <rms@gnu.org>
1724
1725 * src/files.c (openfiles):
1726 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1727 find a temporary directory, if possible. Do not unlink files while
1728 they are open.
1729
17301997-08-25 Richard Stallman <rms@gnu.org>
1731
1732 * src/reader.c (stack_offset;):
1733 Change some warni to warns.
1734
1735 * src/lex.c (literalchar): Use warns, not warni.
1736
17371997-06-28 Richard Stallman <rms@gnu.org>
1738
1739 * src/bison.s1: Add a Bison version comment.
1740
1741 * src/main.c (fatal, warn, berror):
1742 Use program_name.
1743
17441997-06-28 Richard Stallman <rms@gnu.org>
1745
1746 * Makefile.in (bison_version): New variable.
1747 (dist): Use that variable.
1748 (bison.s1): Substitute the Bison version into bison.simple.
1749
1750 * bison.simple: Add a Bison version comment.
1751
17521997-06-18 Richard Stallman <rms@gnu.org>
1753
1754 * src/main.c (fatal, warn, berror):
1755 Make error messages standard.
1756 (toomany): Improve error message text.
1757
1758 * src/LR0.c, src/closure.c, src/conflicts.c, src/derives.c, src/files.c, src/lalr.c, src/lex.c, src/nullable.c, src/output.c, src/print.c, src/reader.c, src/reduce.c, src/symtab.c:
1759 new.h renamed to alloc.h.
1760
17611997-06-18 Richard Stallman <rms@gnu.org>
1762
1763 * Makefile.in: new.h renamed to alloc.h.
1764
17651997-05-24 Richard Stallman <rms@gnu.org>
1766
1767 * src/lex.c (literalchar):
1768 Fix the code for escaping \, " and '.
1769
1770 (lex): Avoid trouble when there are many chars
1771 to discard in a char literal with just several chars in it.
1772
17731997-05-17 Richard Stallman <rms@gnu.org>
1774
1775 * src/bison.s1:
1776 Use malloc, if using alloca is troublesome.
1777 (YYSTACK_USE_ALLOCA): New flag macro.
1778 Define it for some systems and compilers.
1779 (YYSTACK_ALLOC): New macro.
1780 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1781 If it was malloc'd, free it.
1782
17831997-05-17 Richard Stallman <rms@gnu.org>
1784
1785 * bison.simple:
1786 Use malloc, if using alloca is troublesome.
1787 (YYSTACK_USE_ALLOCA): New flag macro.
1788 Define it for some systems and compilers.
1789 (YYSTACK_ALLOC): New macro.
1790 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1791 If it was malloc'd, free it.
1792
17931997-04-23 Richard Stallman <rms@gnu.org>
1794
1795 * src/bison.s1:
1796 (alloca) [__hpux]: Always define as __builtin_alloca.
1797
17981997-04-23 Richard Stallman <rms@gnu.org>
1799
1800 * bison.simple:
1801 (alloca) [__hpux]: Always define as __builtin_alloca.
1802
18031997-04-22 Richard Stallman <rms@gnu.org>
1804
1805 * src/bison.s1:
1806 [__hpux]: Include alloca.h (right for HPUX 10)
1807 instead of declaring alloca (right for HPUX 9).
1808
1809 * src/bison.s1 (__yy_memcpy):
1810 Declare arg `count' as unsigned int.
1811 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1812
18131997-04-22 Richard Stallman <rms@gnu.org>
1814
1815 * bison.simple:
1816 [__hpux]: Include alloca.h (right for HPUX 10)
1817 instead of declaring alloca (right for HPUX 9).
1818
1819 * bison.simple (__yy_memcpy):
1820 Declare arg `count' as unsigned int.
1821 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1822
18231997-01-03 Richard Stallman <rms@gnu.org>
1824
1825 * src/allocate.c: [__STDC__ or _MSC_VER]:
1826 Declare calloc and realloc to return void *.
1827
18281997-01-02 Richard Stallman <rms@gnu.org>
1829
1830 * src/system.h:
1831 [_MSC_VER]: Include stdlib.h and process.h.
1832 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
1833
1834 * src/main.c (main): Return FAILURE as a value.
1835 (printable_version): Declare arg as int, not char.
1836
18371997-01-02 Richard Stallman <rms@gnu.org>
1838
1839 * Makefile.in (dist):
1840 Explicitly check for symlinks, and copy them.
1841
18421996-12-19 Richard Stallman <rms@gnu.org>
1843
1844 * src/files.c:
1845 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
1846
18471996-12-18 Paul Eggert <eggert@gnu.org>
1848
1849 * src/bison.s1 (yyparse):
1850 If __GNUC__ and YYPARSE_PARAM are both defined,
1851 declare yyparse to have a void * argument.
1852
18531996-12-18 Paul Eggert <eggert@gnu.org>
1854
1855 * bison.simple (yyparse):
1856 If __GNUC__ and YYPARSE_PARAM are both defined,
1857 declare yyparse to have a void * argument.
1858
18591996-12-17 Richard Stallman <rms@gnu.org>
1860
1861 * src/reduce.c (nbits): Add some casts.
1862
18631996-08-12 Richard Stallman <rms@gnu.org>
1864
1865 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
1866
18671996-08-12 Richard Stallman <rms@gnu.org>
1868
1869 * bison.simple: Test _MSDOS as well as _MSDOS_.
1870
18711996-07-31 Richard Stallman <rms@gnu.org>
1872
1873 * src/bison.s1:
1874 [__sun && __i386]: Include alloca.h.
1875
18761996-07-31 Richard Stallman <rms@gnu.org>
1877
1878 * bison.simple:
1879 [__sun && __i386]: Include alloca.h.
1880
18811996-07-30 Richard Stallman <rms@gnu.org>
1882
1883 * src/bison.s1: Comment change.
1884
1885 * src/bison.s1: Test _MSDOS_, not MSDOS.
1886
18871996-07-30 Richard Stallman <rms@gnu.org>
1888
1889 * bison.simple: Comment change.
1890
1891 * bison.simple: Test _MSDOS_, not MSDOS.
1892
18931996-06-01 Richard Stallman <rms@gnu.org>
1894
1895 * src/reduce.c, src/reader.c, src/print.c, src/output.c, src/nullable.c, src/lex.c, src/lalr.c, src/getargs.c, src/derives.c, src/conflicts.c, src/closure.c, src/allocate.c:
1896 Insert `_' macro around many string constants.
1897
1898 * src/main.c:
1899 Insert `_' macro around many string constants.
1900
1901 (main): Call setlocale, bindtextdomain and textdomain.
1902
1903 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
1904 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
1905 [ENABLE_NLS]: Include libintl.h.
1906 [ENABLE_NLS] (gettext): Define.
1907 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
1908 (N_, PACKAGE, LOCALEDIR): New macros.
1909
19101996-06-01 Richard Stallman <rms@gnu.org>
1911
1912 * POTFILES.in: New file.
1913
1914 * Makefile.in (allocate.o):
1915 Define target explicitly.
1916
1917 * Makefile.in (CFLAGS): Set to @CFLAGS@.
1918 (LDFLAGS): Set to @LDFLAGS@.
1919 (configure): Run autoconf only if preceding `cd' succeeds.
1920 (bison.s1): Redirect output to temporary file then move the
1921 temporary to the target, rather than redirecting directly to bison.s1.
1922 (clean): Remove config.status and config.log.
1923 (distclean): Don't remove config.status here.
1924
19251996-05-12 Richard Stallman <rms@gnu.org>
1926
1927 * src/bison.s1:
1928 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1929
19301996-05-12 Richard Stallman <rms@gnu.org>
1931
1932 * bison.simple:
1933 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1934
19351996-05-11 Richard Stallman <rms@gnu.org>
1936
1937 * src/bison.s1 (__yy_memcpy):
1938 Really reorder the args, as was supposedly done on Feb 14 1995.
1939 (yyparse): Calls changed accordingly.
1940
19411996-05-11 Richard Stallman <rms@gnu.org>
1942
1943 * Makefile.in (dist): Don't use $(srcdir).
1944
1945 * bison.simple (__yy_memcpy):
1946 Really reorder the args, as was supposedly done on Feb 14 1995.
1947 (yyparse): Calls changed accordingly.
1948
19491996-01-27 Richard Stallman <rms@gnu.org>
1950
1951 * src/output.c (output_rule_data):
1952 Test YYERROR_VERBOSE in the conditional
1953 around the definition of ttyname.
1954
19551995-12-29 Richard Stallman <rms@gnu.org>
1956
1957 * src/bison.s1:
1958 Fix line numbers in #line commands.
1959
19601995-12-29 Richard Stallman <rms@gnu.org>
1961
1962 * bison.simple:
1963 Fix line numbers in #line commands.
1964
19651995-12-27 Richard Stallman <rms@gnu.org>
1966
1967 * src/bison.s1 (YYPARSE_PARAM_DECL):
1968 In C++, make it always null.
1969 (YYPARSE_PARAM_ARG): New macro.
1970 (yyparse): Use YYPARSE_PARAM_ARG.
1971
19721995-12-27 Richard Stallman <rms@gnu.org>
1973
1974 * bison.simple (YYPARSE_PARAM_DECL):
1975 In C++, make it always null.
1976 (YYPARSE_PARAM_ARG): New macro.
1977 (yyparse): Use YYPARSE_PARAM_ARG.
1978
19791995-11-29 Richard Stallman <rms@gnu.org>
1980
1981 * doc/bison.texinfo:
1982 Describe literal string tokens, %raw, %no_lines, %token_table.
1983
19841995-11-29 Daniel Hagerty <hag@gnu.org>
1985
1986 * doc/bison.texinfo: Fixed update date
1987
19881995-10-16 Richard Stallman <rms@gnu.org>
1989
1990 * src/version.c: Version 1.25.
1991
19921995-10-16 Richard Stallman <rms@gnu.org>
1993
1994 * NEWS: *** empty log message ***
1995
19961995-10-16 Richard Stallman <rms@gnu.org>
1997
1998 * doc/bison.1, doc/bison.rnh:
1999 Add new options.
2000
20011995-10-15 Richard Stallman <rms@gnu.org>
2002
2003 * src/vmsgetargs.c, src/getargs.c:
2004 Added -n, -k, and -raw switches.
2005 (noparserflag, toknumflag, rawtoknumflag): New variables.
2006
2007 * src/symtab.h (SALIAS):
2008 New #define for adding aliases to %token.
2009 (struct bucket): Added `alias' field.
2010
2011 * src/reduce.c (reduce_grammar):
2012 Revise error message.
2013 (print_notices): Remove final `.' from error message.
2014
2015 * src/reader.c (reader_output_yylsp):
2016 New function.
2017 (readgram): Use `#if 0' around code that accepted %command
2018 inside grammar rules: The documentation doesn't allow it,
2019 and it will fail since the %command processors scan for the next %.
2020 (parse_token_decl): Extended the %token
2021 declaration to allow a multi-character symbol as an alias.
2022 (parse_thong_decl): New function.
2023 (read_declarations): Added %thong declarations.
2024 (read_declarations): Handle NOOP to deal with allowing
2025 % declarations as another means to specify the flags.
2026 (readgram): Allow %prec prior to semantics embedded in a rule.
2027 (skip_to_char, read_declarations, copy_definition)
2028 (parse_token_decl, parse_start_decl, parse_type_decl)
2029 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
2030 (get_type_name, copy_guard, copy_action, readgram)
2031 (get_type, packsymbols): Revised most error messages.
2032 Changed `fatal' to `warnxxx' to avoid aborting for error.
2033 Revised and use multiple warnxxx functions to avoid using VARARGS1.
2034 (read_declarations): Improve the error message for
2035 an invalid character. Do not abort.
2036 (read_declarations, copy_guard, copy_action): Use
2037 printable_version to avoid unprintable characters in printed output.
2038 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
2039 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
2040 Allow the type of a non-terminal can be given
2041 more than once, as long as all specifications give the same type.
2042
2043 * src/output.c:
2044 (output_headers, output_trailers, output, output_gram)
2045 (output_rule_data): Implement noparserflag variable.
2046 Implement toknumflag variable.
2047 (output): Call reader_output_yylsp to output LTYPESTR.
2048
2049 * src/main.c (main):
2050 If reader sees an error, don't process the grammar.
2051 (fatals): Updated to not use VARARGS1.
2052 (printable_version, int_to_string, warn, warni, warns, warnss)
2053 (warnsss): New error reporting functions. Avoid abort for error.
2054
2055 * src/lex.h:
2056 Added THONG and NOOP for alias processing.
2057 Added SETOPT for the new code that allows setting options with %flags.
2058
2059 * src/lex.c:
2060 Include getopt.h. Add some extern decls.
2061 (safegetc): New function to deal with EOF gracefully.
2062 (literalchar); new function to deal with reading \ escapes.
2063 (lex): Use literalchar.
2064 (lex): Implemented "..." tokens.
2065 (literalchar, lex, parse_percent_token): Made tokenbuffer
2066 always contain the token. This includes growing the token
2067 buffer while reading an integer.
2068 (parse_percent_token): Replaced if-else statement with percent_table.
2069 (parse_percent_token): Added % declarations as another
2070 way to specify the flags -n, -l, and -r. Also added hooks for
2071 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
2072 major changes to files.c.
2073 (lex) Retain in the incoming stream a character following
2074 an incorrect '/'.
2075 (skip_white_space, lex): Revised most error messages
2076 and changed fatal to warn to avoid aborting.
2077 (percent_table): Added %thong declarations.
2078
2079 * src/gram.h: Comment changes.
2080
2081 * src/files.c (openfiles, open_extra_files, done):
2082 Add faction flag
2083 and actfile file. Handle noparserflag. Both for -n switch.
2084
2085 * src/conflicts.c (resolve_sr_conflict):
2086 Remove use of alloca.
2087
20881995-06-01 Jim Meyering <meyering@gnu.org>
2089
2090 * doc/bison.texinfo: *** empty log message ***
2091
20921995-05-06 Richard Stallman <rms@gnu.org>
2093
2094 * src/bison.s1: Comment change.
2095
20961995-05-06 Richard Stallman <rms@gnu.org>
2097
2098 * bison.simple: Comment change.
2099
21001995-05-03 Richard Stallman <rms@gnu.org>
2101
2102 * src/version.c: Version now 1.24.
2103
2104 * src/bison.s1: Change distribution terms.
2105
2106 * src/version.c: Version now 1.23.
2107
21081995-05-03 Richard Stallman <rms@gnu.org>
2109
2110 * doc/bison.texinfo:
2111 Rewrite "Conditions for Using Bison".
2112 Update version to 1.24.
2113
21141995-05-03 Richard Stallman <rms@gnu.org>
2115
2116 * bison.simple: Change distribution terms.
2117
21181995-02-23 Richard Stallman <rms@gnu.org>
2119
2120 * src/files.c: Test __VMS_POSIX as well as VMS.
2121
21221995-02-14 Jim Meyering <meyering@gnu.org>
2123
2124 * src/bison.s1 (__yy_memcpy):
2125 Renamed from __yy_bcopy to avoid
2126 confusion. Reverse FROM and TO arguments to be consistent with
2127 those of memcpy.
2128
21291995-02-14 Jim Meyering <meyering@gnu.org>
2130
2131 * bison.simple (__yy_memcpy):
2132 Renamed from __yy_bcopy to avoid
2133 confusion. Reverse FROM and TO arguments to be consistent with
2134 those of memcpy.
2135
21361994-11-10 David J. MacKenzie <djm@gnu.org>
2137
2138 * NEWS: reformat
2139
2140 * NEWS: New file.
2141
2142 * Makefile.in (DISTFILES): Include NEWS.
2143
2144 * Makefile.in (DISTFILES):
2145 Include install-sh, not install.sh.
2146
2147 * configure.in: Update to Autoconf v2 macro names.
2148
21491994-10-05 David J. MacKenzie <djm@gnu.org>
2150
2151 * Makefile.in: fix typo
2152
2153 * Makefile.in (prefix, exec_prefix):
2154 Let configure set them.
2155
21561994-09-28 David J. MacKenzie <djm@gnu.org>
2157
2158 * Makefile.in: Set datadir to $(prefix)/share.
2159
21601994-09-15 Richard Stallman <rms@gnu.org>
2161
2162 * src/bison.s1:
2163 Update copyright notice and GPL version.
2164
21651994-09-15 Richard Stallman <rms@gnu.org>
2166
2167 * bison.simple:
2168 Update copyright notice and GPL version.
2169
21701994-07-12 Richard Stallman <rms@gnu.org>
2171
2172 * src/reduce.c, src/reader.c:
2173 entered into RCS
2174
21751994-05-05 David J. MacKenzie <djm@gnu.org>
2176
2177 * Makefile.in: entered into RCS
2178
21791994-03-26 Richard Stallman <rms@gnu.org>
2180
2181 * src/bison.s1: entered into RCS
2182
21831994-03-26 Richard Stallman <rms@gnu.org>
2184
2185 * bison.simple: entered into RCS
2186
21871994-03-25 Richard Stallman <rms@gnu.org>
2188
2189 * src/main.c: entered into RCS
2190
21911994-03-24 Richard Stallman <rms@gnu.org>
2192
2193 * src/conflicts.c: entered into RCS
2194
21951994-01-02 Richard Stallman <rms@gnu.org>
2196
2197 * Makefile.in: *** empty log message ***
2198
21991993-11-21 Richard Stallman <rms@gnu.org>
2200
2201 * src/bison.s1: *** empty log message ***
2202
22031993-11-21 Richard Stallman <rms@gnu.org>
2204
2205 * doc/bison.texinfo: entered into RCS
2206
2207 * doc/bison.texinfo: *** empty log message ***
2208
22091993-11-21 Richard Stallman <rms@gnu.org>
2210
2211 * bison.simple: *** empty log message ***
2212
22131993-10-25 David J. MacKenzie <djm@gnu.org>
2214
2215 * doc/bison.texinfo: *** empty log message ***
2216
22171993-10-19 Richard Stallman <rms@gnu.org>
2218
2219 * src/bison.s1: *** empty log message ***
2220
22211993-10-19 Richard Stallman <rms@gnu.org>
2222
2223 * bison.simple: *** empty log message ***
2224
22251993-10-14 Richard Stallman <rms@gnu.org>
2226
2227 * src/bison.s1: *** empty log message ***
2228
22291993-10-14 Richard Stallman <rms@gnu.org>
2230
2231 * bison.simple: *** empty log message ***
2232
22331993-09-14 David J. MacKenzie <djm@gnu.org>
2234
2235 * doc/bison.texinfo: *** empty log message ***
2236
22371993-09-13 Noah Friedman <friedman@gnu.org>
2238
2239 * Makefile.in: *** empty log message ***
2240
22411993-09-10 Richard Stallman <rms@gnu.org>
2242
2243 * src/conflicts.c: *** empty log message ***
2244
2245 * src/system.h: entered into RCS
2246
22471993-09-10 Richard Stallman <rms@gnu.org>
2248
2249 * doc/bison.1: entered into RCS
2250
22511993-09-06 Noah Friedman <friedman@gnu.org>
2252
2253 * src/version.c: entered into RCS
2254
22551993-09-06 Noah Friedman <friedman@gnu.org>
2256
2257 * Makefile.in: *** empty log message ***
2258
22591993-07-30 David J. MacKenzie <djm@gnu.org>
2260
2261 * Makefile.in: *** empty log message ***
2262
22631993-07-24 Richard Stallman <rms@gnu.org>
2264
2265 * src/bison.s1: *** empty log message ***
2266
22671993-07-24 Richard Stallman <rms@gnu.org>
2268
2269 * bison.simple: *** empty log message ***
2270
22711993-07-08 David J. MacKenzie <djm@gnu.org>
2272
2273 * Makefile.in: *** empty log message ***
2274
22751993-07-04 Richard Stallman <rms@gnu.org>
2276
2277 * src/bison.s1: *** empty log message ***
2278
22791993-07-04 Richard Stallman <rms@gnu.org>
2280
2281 * bison.simple: *** empty log message ***
2282
22831993-06-26 David J. MacKenzie <djm@gnu.org>
2284
2285 * src/getargs.c: entered into RCS
2286
22871993-06-26 David J. MacKenzie <djm@gnu.org>
2288
2289 * doc/bison.texinfo: *** empty log message ***
2290
2291 * doc/bison.1: New file.
2292
22931993-06-25 Richard Stallman <rms@gnu.org>
2294
2295 * src/getargs.c: New file.
2296
22971993-06-16 Richard Stallman <rms@gnu.org>
2298
2299 * src/bison.s1: *** empty log message ***
2300
23011993-06-16 Richard Stallman <rms@gnu.org>
2302
2303 * bison.simple: *** empty log message ***
2304
23051993-06-03 Richard Stallman <rms@gnu.org>
2306
2307 * src/bison.s1: New file.
2308
23091993-06-03 Richard Stallman <rms@gnu.org>
2310
2311 * doc/bison.texinfo: *** empty log message ***
2312
23131993-06-03 Richard Stallman <rms@gnu.org>
2314
2315 * bison.simple: New file.
2316
23171993-05-19 Richard Stallman <rms@gnu.org>
2318
2319 * doc/bison.texinfo: New file.
2320
23211993-05-07 Noah Friedman <friedman@gnu.org>
2322
2323 * Makefile.in: *** empty log message ***
2324
23251993-04-28 Noah Friedman <friedman@gnu.org>
2326
2327 * src/reader.c: *** empty log message ***
2328
23291993-04-23 Noah Friedman <friedman@gnu.org>
2330
2331 * src/alloc.h: entered into RCS
2332
23331993-04-20 David J. MacKenzie <djm@gnu.org>
2334
2335 * src/version.c: *** empty log message ***
2336
2337 * src/files.c, src/allocate.c:
2338 entered into RCS
2339
2340 * src/reader.c: *** empty log message ***
2341
2342 * src/lex.c: entered into RCS
2343
2344 * src/conflicts.c: New file.
2345
2346 * src/symtab.c: entered into RCS
2347
2348 * src/alloc.h: New file.
2349
2350 * src/LR0.c: entered into RCS
2351
23521993-04-18 Noah Friedman <friedman@gnu.org>
2353
2354 * src/reader.c: New file.
2355
2356 * src/version.c: *** empty log message ***
2357
23581993-04-18 Noah Friedman <friedman@gnu.org>
2359
2360 * Makefile.in: *** empty log message ***
2361
23621993-04-17 Noah Friedman <friedman@gnu.org>
2363
2364 * Makefile.in: *** empty log message ***
2365
23661993-04-15 Richard Stallman <rms@gnu.org>
2367
2368 * src/main.c, src/files.c:
2369 New file.
2370
23711993-04-15 Noah Friedman <friedman@gnu.org>
2372
2373 * configure.in: entered into RCS
2374
2375 * configure.in: *** empty log message ***
2376
2377 * configure.in: New file.
2378
23791993-04-14 Richard Stallman <rms@gnu.org>
2380
2381 * Makefile.in: New file.
2382
23831993-04-13 Richard Stallman <rms@gnu.org>
2384
2385 * src/version.c: New file.
2386
23871993-03-25 Richard Stallman <rms@gnu.org>
2388
2389 * src/output.c: entered into RCS
2390
23911992-09-25 Richard Stallman <rms@gnu.org>
2392
2393 * configure.bat: entered into RCS
2394
23951992-06-22 Richard Stallman <rms@gnu.org>
2396
2397 * src/vmsgetargs.c: entered into RCS
2398
23991992-06-22 Richard Stallman <rms@gnu.org>
2400
2401 * doc/bison.rnh: entered into RCS
2402
24031992-04-20 David J. MacKenzie <djm@gnu.org>
2404
2405 * README: entered into RCS
2406
24071992-01-22 Richard Stallman <rms@gnu.org>
2408
2409 * src/machine.h: entered into RCS
2410
24111991-12-21 Richard Stallman <rms@gnu.org>
2412
2413 * src/lalr.c, src/closure.c:
2414 entered into RCS
2415
24161991-12-20 Richard Stallman <rms@gnu.org>
2417
2418 * src/state.h: entered into RCS
2419
24201991-12-18 Richard Stallman <rms@gnu.org>
2421
2422 * src/print.c, src/nullable.c, src/derives.c:
2423 entered into RCS
2424
24251991-11-03 David J. MacKenzie <djm@gnu.org>
2426
2427 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
2428 entered into RCS
2429
24301988-09-09 Richard Stallman <rms@gnu.org>
2431
2432 * src/bison.hairy: entered into RCS
2433
24341987-12-16 Richard Stallman <rms@gnu.org>
2435
2436 * REFERENCES: entered into RCS