]> git.saurik.com Git - bison.git/blame_incremental - ChangeLog
* src/reader.c (read_additionnal_code): Rename %%user_code to
[bison.git] / ChangeLog
... / ...
CommitLineData
12001-08-31 Pascal Bart <pascal.bart@epita.fr>, Marc Autret <autret_m@epita.fr>
2
3 * src/reader.c (read_additionnal_code): Rename %%user_code to
4 %%epilogue.
5 * src/output.c (output): Rename %%declarations to %%prologue.
6 * src/bison.simple: Echo modifications.
7
82001-08-31 Marc Autret <autret_m@epita.fr>
9
10 * src/reader.c (readgram): CleanUp.
11 (output_token_defines): Likewise.
12 (packsymbols): Likewise.
13 (reader): Likewise.
14 * src/output.c (output): CPP-out useless code.
15
162001-08-31 Pascal Bart <pascal.bart@epita.fr>
17
18 * src/reader.c (reader): Delete obsolete call to function
19 output_trailers and output_headers.
20 * src/output.h: Remove obsolete functions prototypes of output_headers
21 and output_trailers.
22
232001-08-30 Pascal Bart <pascal.bart@epita.fr>
24
25 * src/main.c: Include macrotab.h.
26 * src/macrotab.h (macro_entry_s): Constify fields.
27 Adjust functions prototypes.
28 * src/macrotab.c (macro_insert): Constify key and value.
29 (macro_find): Constify key.
30 (macro_insert): Include 'xalloc.h'
31 (macro_insert): Use XMALLOC.
32 (macro_find): Constify return value.
33 * src/output.c (output_table_data): Rename table to table_data.
34 (output_parser): Constify macro_key, macro_value.
35
362001-08-30 Marc Autret <autret_m@epita.fr>
37
38 * src/reader.c (parse_skel_decl): New.
39 (read_declarations): Add case `tok_skel', call parse_skel_decl ().
40 * src/lex.h (token_t): New token `tok_skel'.
41 * src/lex.c (percent_table): Add skeleton option entry.
42 Standardize.
43
442001-08-29 Marc Autret <autret_m@epita.fr>
45
46 * src/bison.simple: Add %%user_code directive at the end.
47 * src/reader.c (read_additionnal_code): New.
48 (reader): Use it.
49 * src/output.c (output_program): Remove.
50 (output): Update.
51
522001-08-28 Marc Autret <autret_m@epita.fr>
53
54 * src/output.c (output_actions): Clean up.
55 (output_gram): CPP-out useless code.
56 * src/reader.c (reader): Clean up, CPP-out useless code.
57
582001-08-28 Pascal Bart <pascal.bart@epita.fr>
59
60 * src/output.c (output): Copy attrs_obstack in the '%%definitions'
61 directive.
62 * src/bison.simple: Add `%%definitions'.
63
642001-08-28 Marc Autret <autret_m@epita.fr>
65
66 * config/depcomp: New file.
67
682001-08-27 Paul Eggert <eggert@twinsun.com>
69
70 * src/bison.simple (yyparse): Don't take the address of an
71 item before the start of an array, as that doesn't conform to
72 the C Standard.
73
742001-08-27 Robert Anisko <robert.anisko@epita.fr>
75
76 * src/output.c (output): Remove the initialization of the macro
77 obstack. It was done too late here.
78
79 * src/reader.c (parse_macro_decl): Fix. Use of the macro obstack was
80 completely wrong.
81 (reader): Initialize the macro obstack here, since we need it to grow
82 '%define' directives.
83
84 * src/reader.h: Declare the macro obstack as extern.
85
862001-08-27 Robert Anisko <robert.anisko@epita.fr>
87
88 * src/output.c (output_parser): Fix. Store single '%' characters in
89 the output obstack instead of throwing them away.
90
912001-08-27 Akim Demaille <akim@epita.fr>
92
93 * Makefile.am (AUTOMAKE_OPTIONS): 1.5.
94
952001-08-25 Robert Anisko <robert.anisko@epita.fr>
96
97 * lib/Makefile.am: Adjust.
98
992001-08-25 Robert Anisko <robert.anisko@epita.fr>
100
101 * src/bison.simple: Update and add '%%' directives.
102
1032001-08-25 Robert Anisko <robert.anisko@epita.fr>
104
105 * src/reader.c (reader): Remove calls to 'output_headers' and
106 'output_trailers'. Remove some C output.
107 (readgram): Disable a piece of code that was writing a default
108 definition for 'YYSTYPE'.
109 (reader_output_yylsp): Remove.
110 (packsymbols): Output token defintions to a macro.
111 (copy_definition): Disable C output.
112
113 * src/reader.c (parse_macro_decl): New function used to parse macro
114 declarations.
115 (copy_string2): Put the body of copy_string into this new function.
116 Add a parameter to let the caller choose whether he wants to copy the
117 string delimiters or not.
118 (copy_string): Be a simple call to copy_string2 with the last argument
119 bound to true.
120 (read_declarations): Add case for macro definition.
121 (copy_identifier): New.
122 (parse_macro_decl): Read macro identifiers using copy_identifier
123 rather than lex.
124
1252001-08-25 Robert Anisko <robert.anisko@epita.fr>
126
127 * src/output.c (prepare): Add prefixed names.
128 (output_parser): Output semantic actions.
129 (output_parser): Fix bug on '%%line' directives.
130
131 * src/output.c (output_headers): Remove. The C code printed by this
132 function should now be in the skeletons.
133 (output_trailers): Remove.
134 (output): Disable call to 'reader_output_yylsp'.
135 (output_rule_data): Do not output tables to the table obstack.
136
137 * src/output.c: Remove some C dedicated output.
138 Improve the use of macro and output obstacks.
139 (output_defines): Remove.
140
141 * src/output.c (output_token_translations): Associate 'translate'
142 table with a macro. No output to the table obstack.
143 (output_gram): Same for 'rhs' and 'prhs'.
144 (output_stos): Same for 'stos'.
145 (output_rule_data): Same for 'r1' and 'r2'.
146 (token_actions): Same for 'defact'.
147 (goto_actions): Same for 'defgoto'.
148 (output_base): Same for 'pact' and 'pgoto'.
149 (output_table): Same for 'table'.
150 (output_check): Same for 'check'.
151
152 * src/output.c (output_table_data): New function.
153 (output_short_table): Remove.
154 (output_short_or_char_table): Remove.
155
156 * src/output.c (output_parser): Replace most of the skeleton copy code
157 with something new. Skeletons are now processed character by character
158 rather than line by line, and Bison looks for '%%' macros. This is the
159 first step in making Bison's output process (a lot) more flexible.
160 (output_parser): Use the macro table.
161
1622001-08-25 Robert Anisko <robert.anisko@epita.fr>
163
164 * src/main.c (main): Initialize the macro table.
165
1662001-08-25 Robert Anisko <robert.anisko@epita.fr>
167
168 * src/lex.c (percent_table): Add tok_define.
169 * src/lex.h: Add tok_define.
170
1712001-08-25 Robert Anisko <robert.anisko@epita.fr>
172
173 * src/macrotab.c: New file.
174 * src/macrotab.h: New file.
175 * src/Makefile.am: Update.
176
1772001-08-25 Robert Anisko <robert.anisko@epita.fr>
178
179 * lib/hash.c: New file.
180 * lib/hash.h: New file.
181 * lib/Makefile.am: Update.
182
1832001-08-15 Akim Demaille <akim@epita.fr>
184
185 Version 1.28c.
186
1872001-08-15 Marc Autret <autret_m@epita.fr>
188
189 * src/reader.c (readgram): Indent output macro YYSTYPE.
190 (packsymbols): Likewise.
191 (output_token_defines): Likewise.
192 * src/files.c: Standardize.
193 (compute_header_macro): New.
194 (defines_obstack_save): New. Use compute_header_macro.
195 (output_files): Update. Use defines_obstack_save.
196
1972001-08-15 Akim Demaille <akim@epita.fr>
198
199 * doc/bison.texinfo (Table of Symbols): Document
200 YYSTACK_USE_ALLOCA.
201
2022001-08-15 Akim Demaille <akim@epita.fr>
203
204 * missing: Update from CVS Automake.
205 * config/config.guess, config/config.sub, config/texinfo.tex:
206 Update from gnu.org.
207
2082001-08-15 Akim Demaille <akim@epita.fr>
209
210 * Makefile.maint: Sync with CVS Autoconf.
211
2122001-08-14 Pascal Bart <pascal.bart@epita.fr>
213
214 * doc/bison.texinfo: Include GNU Free Documentation License from
215 `fdl.texi'.
216 * doc/fdl.texi: Add to package.
217
2182001-08-14 Marc Autret <autret_m@epita.fr>
219
220 Turn on %{source,header}_extension features.
221
222 * src/lex.c (percent_table): Un-CPP out header_extension and
223 source_extension.
224 * src/files.c (compute_exts_from_gf): Compare pointers with NULL.
225 (compute_exts_from_src): Remove conditions. It restores priorities
226 between options.
227
2282001-08-14 Marc Autret <autret_m@epita.fr>
229
230 * src/files.c (compute_base_names): Add extensions computing when
231 `--file-prefix' used.
232 Standardize function calls.
233
2342001-08-13 Marc Autret <autret_m@epita.fr>
235
236 * src/bison.simple (YYSTACK_USE_ALLOCA): Changed to allow users
237 defining it (defined but null disables alloca).
238
2392001-08-13 Marc Autret <autret_m@epita.fr>
240
241 * src/bison.simple (_yy_memcpy): CPP reformat.
242
2432001-08-13 Pascal Bart <pascal.bart@epita.fr>
244
245 * tests/atconfig.in (CPPFLAGS): Fix.
246
2472001-08-10 Pascal Bart <pascal.bart@epita.fr>
248
249 * doc/bison.texinfo: Include GNU General Public License from
250 `gpl.texi'.
251 * doc/gpl.texi: Add to package.
252
2532001-08-10 Marc Autret <autret_m@epita.fr>
254
255 * src/print_graph.h: Fix.
256 * src/reader.c (read_declarations): Use parse_header_extension_decl ().
257
2582001-08-10 Akim Demaille <akim@epita.fr>
259
260 * src/system.h: Provide default declarations for stpcpy, strndup,
261 and strnlen.
262
2632001-08-10 Robert Anisko <anisko_r@epita.fr>
264
265 * doc/bison.texinfo (Locations): Update @$ stuff.
266
2672001-08-09 Robert Anisko <anisko_r@epita.fr>
268
269 * src/bison.simple (YYLLOC_DEFAULT): Update.
270 (yyparse): Adjust.
271
2722001-08-08 Marc Autret <autret_m@epita.fr>
273
274 * doc/bison.texinfo: Change @samp{$<@dots{}>} to
275 @samp{$<@dots{}>@var{n}} in Section Actions in Mid-Rule.
276 Reported by Fabrice Bauzac.
277
2782001-08-08 Marc Autret <autret_m@epita.fr>
279
280 * src/vcg_default.h: Use NULL instead of 0 to initialize pointers.
281 * src/vcg.c (output_node): Fix.
282 * src/vcg.h: Cleanup.
283 * src/print_graph.c: Add comments.
284 (node_output_size): New global variable. Simplify the formatting of
285 the VCG graph output.
286 (print_actions): Unused code is now used. It notifies the final state
287 and no action states in the VCG graph. It also give the reduce actions.
288 The `shift and goto' edges are red and the `go to state' edges are
289 blue.
290 Get the current node name and node_obstack by argument.
291 (node_obstack): New variable.
292 (print_state): Manage node_obstack.
293 (print_core): Use node_obstack given by argument.
294 A node is not only computed here but in print_actions also.
295 (print_graph): CPP out useless code instead of commenting it.
296
2972001-08-07 Pascal Bart <pascal.bart@epita.fr>
298
299 * tests/atconfig.in (CPPFLAGS): Fix.
300
3012001-08-07 Akim Demaille <akim@epita.fr>
302
303 * src/print_graph.c (quote): New.
304 (print_core): Use it.
305
3062001-08-06 Akim Demaille <akim@epita.fr>, Marc Autret <autret_m@epita.fr>
307
308 * src/vcg.c (complain.h): Include it.
309 Unepitaize `return' invocations.
310 [NDEBUG] (main): Remove.
311 * src/vcg.h (node_t, edge_t, graph_t): Constify the char * members.
312 * src/files.c (open_files): Initialize graph_obstack.
313 * src/print_graph.c (print_actions): CPP out useless code.
314 (print_core): Don't output the last `\n' in labels.
315 Use `quote'.
316 * src/files.c (output_files): Output the VCG file.
317 * src/main.c (main): Invoke print_graph ();
318
3192001-08-06 Marc Autret <autret_m@epita.fr>
320
321 Automaton VCG graph output.
322 Using option ``-g'' or long option ``--graph'', you can generate
323 a gram_filename.vcg file containing a VCG description of the LALR (1)
324 automaton of your grammar.
325
326 * src/main.c: Call to print_graph() function.
327 * src/getargs.h: Update.
328 * src/getargs.c (options): Update to catch `-g' and `--graph' options.
329 (graph_flag): New flag.
330 (longopts): Update.
331 (getargs): Add case `g'.
332 * src/files.c (graph_obstack): New obstack struct.
333 (open_files): Initialize new obstack.
334 (output_files): Saves graph_obstack if required.
335 * src/files.h (graph_obstack): New extern declaration.
336 * src/Makefile.am: Add new source files.
337
3382001-08-06 Marc Autret <autret_m@epita.fr>
339
340 * src/print_graph.c, src/print_graph.h (graph): New.
341 * src/vcg.h: New file.
342 * src/vcg.c: New file, VCG graph handling.
343
3442001-08-06 Marc Autret <autret_m@epita.fr>
345
346 Add of %source_extension and %header_extension which specify
347 the source or/and the header output file extension.
348
349 * src/files.c (compute_base_names): Remove initialisation of
350 src_extension and header_extension.
351 (compute_exts_from_gf): Update.
352 (compute_exts_from_src): Update.
353 (output_files): Update.
354 * src/reader.c (parse_header_extension_decl): New.
355 (parse_source_extension_decl): New.
356 (read_declarations): New case statements for the new tokens.
357 * src/lex.c (percent_table): Add entries for %source_extension
358 and %header_extension.
359 * src/lex.h (token_e): New tokens tok_hdrext and tok_srcext.
360
3612001-08-06 Marc Autret <autret_m@epita.fr>
362
363 * configure.in: Bump to 1.28c.
364 * doc/bison.texinfo: Texinfo thingies.
365
3662001-08-04 Pascal Bart <pascal.bart@epita.fr>
367
368 * tests/atconfig.in (CPPFLAGS): Add.
369 * tests/calc.at (AT_CHECK): Use CPPFLAGS.
370
3712001-08-03 Akim Demaille <akim@epita.fr>
372
373 Version 1.28b.
374
3752001-08-03 Akim Demaille <akim@epita.fr>
376
377 * tests/Makefile.am (check-local): Ship testsuite.
378 * tests/calc.at (_AT_DATA_CALC_Y): Prototype all the functions.
379 Include `string.h'.
380
3812001-08-03 Akim Demaille <akim@epita.fr>
382
383 * configure.in: Try using -Wformat when compiling.
384
3852001-08-03 Akim Demaille <akim@epita.fr>
386
387 * configure.in: Bump to 1.28b.
388
3892001-08-03 Akim Demaille <akim@epita.fr>
390
391 * src/complain.c: Adjust strerror_r portability issues.
392
3932001-08-03 Akim Demaille <akim@epita.fr>
394
395 Version 1.28a.
396
3972001-08-03 Akim Demaille <akim@epita.fr>
398
399 * src/getargs.c, src/getarg.h (skeleton)): Constify.
400 * src/lex.c (literalchar): Avoid name clashes on `buf'.
401 * src/getargs.c: Include complain.h.
402 * src/files.c, src/files.h (skeleton_find): Avoid name clashes.
403 * lib/quotearg.c, lib/quotearg.h: Update from fileutils 4.1.
404
4052001-08-03 Akim Demaille <akim@epita.fr>
406
407 * src/reader.c (readgram): Display hidden chars in error messages.
408
4092001-08-03 Akim Demaille <akim@epita.fr>
410
411 Update to gettext 0.10.39.
412
4132001-08-03 Akim Demaille <akim@epita.fr>
414
415 * lib/strspn.c: New.
416
4172001-08-01 Marc Autret <autret_m@epita.fr>
418
419 * doc/bison.texinfo: Update.
420 * doc/bison.1 (mandoc): Update.
421 * src/system.h (EXT_GUARD_C, EXT_STYPE_H): Remove .c and .h.
422 * src/files.c: Support output files extensions computing.
423 (src_extension): New static variable.
424 (header_extension): New static variable.
425 (tr): New function.
426 (get_extension_index): New function, gets the index of an extension
427 filename in a string.
428 (compute_exts_from_gf): New function, computes extensions from the
429 grammar file extension.
430 (compute_exts_from_src): New functions, computes extensions from the
431 C source file extension, file given by ``-o'' option.
432 (compute_base_names): Update.
433 (output_files): Update.
434
4352001-08-01 Robert Anisko <anisko_r@epita.fr>
436
437 * doc/bison.texi: Document @$.
438 (Locations): New section.
439
4402001-07-18 Akim Demaille <akim@epita.fr>
441
442 * Makefile.maint, GNUmakefile: New, from Autoconf 2.52.
443 * config/prev-version.txt, config/move-if-change: New.
444 * Makefile.am: Adjust.
445
4462001-07-08 Pascal Bart <pascal.bart@epita.fr>
447
448 * src/bison.simple (yyparse): Suppress warning `comparaison
449 between signed and unsigned'.
450
4512001-07-05 Pascal Bart <pascal.bart@epita.fr>
452
453 * src/getargs.h (raw_flag): Remove.
454 * src/getargs.c: Die on `-r'/`--raw'.
455 * src/lex.c (parse_percent_token): Die on `%raw'.
456 * src/reader.c (output_token_defines): Suppress call to `raw_flag'.
457 * tests/calc.at: Suppress test with option `--raw'.
458
4592001-07-14 Akim Demaille <akim@epita.fr>
460
461 * config/: New.
462 * configure.in: Require Autoconf 2.50.
463 Update to gettext 0.10.38.
464
4652001-03-16 Akim Demaille <akim@epita.fr>
466
467 * doc/bison.texinfo: ANSIfy the examples.
468
4692001-03-16 Akim Demaille <akim@epita.fr>
470
471 * getargs.c (skeleton): New variable.
472 (longopts): --skeleton is a new option.
473 (shortopts, getargs): -S is a new option.
474 * getargs.h: Declare skeleton.
475 * output.c (output_parser): Use it.
476
4772001-03-16 Akim Demaille <akim@epita.fr>
478
479 * m4/strerror_r.m4: New.
480 * m4/error.m4: Run AC_FUNC_STRERROR_R.
481 * lib/error.h, lib/error.c: Update.
482
4832001-03-16 Akim Demaille <akim@epita.fr>
484
485 * src/getargs.c (longopts): Clean up.
486
4872001-02-21 Akim Demaille <akim@epita.fr>
488
489 * src/reader.c (gensym): `gensym_count' is your own.
490 Use a static buf to create the symbol name, as token_buffer is no
491 longer a buffer.
492
4932001-02-08 Akim Demaille <akim@epita.fr>
494
495 * src/conflicts.c (conflict_report): Be sure not to append to res
496 between two calls, which could happen if both first sprintf were
497 skipped, but not the first cp += strlen.
498
4992001-02-08 Akim Demaille <akim@epita.fr>
500
501 * lib/memchr.c, lib/stpcpy.c, lib/strndup.c, lib/strnlen.c:
502 New, from fileutils 4.0.37.
503 * configure.in: Require Autoconf 2.49c. I took some time before
504 making this decision. This is the only way out for portability
505 issues in Bison, it would mean way too much duplicate effort to
506 import in Bison features implemented in 2.49c since 2.13.
507 AC_REPLACE_FUNCS and AC_CHECK_DECLS the functions above.
508
5092001-02-02 Akim Demaille <akim@epita.fr>
510
511 * lib/malloc.c, lib/realloc.c: New, from the fileutils 4.0.37.
512 * lib/xalloc.h, lib/xmalloc.c: Update.
513
5142001-01-19 Akim Demaille <akim@epita.fr>
515
516 Get rid of the ad hoc handling of token_buffer in the scanner: use
517 the obstacks.
518
519 * src/lex.c (token_obstack): New.
520 (init_lex): Initialize it. No longer call...
521 (grow_token_buffer): this. Remove it.
522 Adjust all the places which used it to use the obstack.
523
5242001-01-19 Akim Demaille <akim@epita.fr>
525
526 * src/lex.h: Rename all the tokens:
527 s/\bENDFILE\b/tok_eof/g;
528 s/\bIDENTIFIER\b/tok_identifier/g;
529 etc.
530 Let them be enums, not #define, to ease debugging.
531 Adjust all the code.
532
5332001-01-18 Akim Demaille <akim@epita.fr>
534
535 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
536 * src/lex.c (maxtoken, grow_token_buffer): Static.
537
5382001-01-18 Akim Demaille <akim@epita.fr>
539
540 Since we now use obstacks, more % directives can be enabled.
541
542 * src/lex.c (percent_table): Also accept `%yacc',
543 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
544 `%debug'.
545 Handle the actions for `%semantic_parser' and `%pure_parser' here,
546 instead of returning a token.
547 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
548 * src/reader.c (read_declarations): Adjust.
549 * src/files.c (open_files): Don't call `compute_base_names', don't
550 compute `attrsfile' since they depend upon data which might be
551 *in* the input file now.
552 (output_files): Do it here.
553 * src/output.c (output_headers): Document the fact that this patch
554 introduces a guaranteed SEGV for semantic parsers.
555 * doc/bison.texinfo: Document them.
556 * tests/suite.at: Exercise these %options.
557
5582000-12-20 Akim Demaille <akim@epita.fr>
559
560 Also handle the output file (--verbose) with obstacks.
561
562 * files.c (foutput): Remove.
563 (output_obstack): New.
564 Adjust all dependencies.
565 * src/conflicts.c: Return a string.
566 * src/system.h (obstack_grow_string): Rename as...
567 (obstack_sgrow): this. Be ready to work with non literals.
568 (obstack_fgrow4): New.
569
5702000-12-20 Akim Demaille <akim@epita.fr>
571
572 * src/files.c (open_files): Fix the computation of short_base_name
573 in the case of `-o foo.tab.c'.
574
5752000-12-20 Akim Demaille <akim@epita.fr>
576
577 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
578 (copy_dollar): Now that everything uses obstacks, get rid of the
579 FILE * parameters.
580
5812000-12-20 Akim Demaille <akim@epita.fr>
582
583 * src/files.c (open_files): Actually the `.output' file is based
584 on the short_base_name, not base_name.
585 * tests/suite.at (Checking output file names): Adjust.
586
5872000-12-20 Akim Demaille <akim@epita.fr>
588
589 * src/bison.s1: Remove, we now use directly...
590 * src/bison.simple: this.
591 * src/Makefile.am: Use pkgdata instead of data.
592
5932000-12-20 Akim Demaille <akim@epita.fr>
594
595 * src/files.c (guard_obstack): New.
596 (open_files): Initialize it.
597 (output_files): Dump it...
598 * src/files.h: Export it.
599 * src/reader.c (copy_guard): Use it.
600
6012000-12-19 Akim Demaille <akim@epita.fr>
602
603 * src/files.c (outfile, defsfile, actfile): Removed as global
604 vars.
605 (open_files): Don't compute them.
606 (output_files): Adjust.
607 (base_name, short_base_name): Be global.
608 Adjust dependencies.
609
6102000-12-19 Akim Demaille <akim@epita.fr>
611
612 * src/files.c (strsuffix): New.
613 (stringappend): Be just like strcat but allocate.
614 (base_names): Eve out from open_files.
615 Try to simplify the rather hairy computation of base_name and
616 short_base_name.
617 (open_files): Use it.
618 * tests/suite.at (Checking output file names): New test.
619
6202000-12-19 Akim Demaille <akim@epita.fr>
621
622 * src/system.h (obstack_grow_literal_string): Rename as...
623 (obstack_grow_string): this.
624 * src/output.c (output_parser): Recognize `%% actions' instead of
625 `$'.
626 * src/bison.s1: s/$/%% actions/.
627 * src/bison.hairy: Likewise.
628
6292000-12-19 Akim Demaille <akim@epita.fr>
630
631 * src/output.c (output_parser): Compute the `#line' lines when
632 there are.
633 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
634 Suggested by Hans Aberg.
635
6362000-12-19 Akim Demaille <akim@epita.fr>
637
638 Let the handling of the skeleton files be local to the procedures
639 that use it.
640
641 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
642 longer static.
643 (fparser, open_extra_files): Remove.
644 (open_files, output_files): Don't take care of fparser.
645 * src/files.h: Adjust.
646 * src/output.c (output_parser): Open and close the file to the
647 skeleton.
648 * src/reader.c (read_declarations): When %semantic_parser, open
649 fguard.
650
6512000-12-19 Akim Demaille <akim@epita.fr>
652
653 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
654 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
655
6562000-12-19 Akim Demaille <akim@epita.fr>
657
658 * src/files.c (open_files): Yipee! We no longer need all the code
659 looking for `/tmp' since we have no tmp file.
660
6612000-12-19 Akim Demaille <akim@epita.fr>
662
663 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
664 New macros.
665 * src/files.c (open_files): Less dependency on MSDOS etc.
666
6672000-12-14 Akim Demaille <akim@epita.fr>
668
669 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
670 Provide a default definition.
671 Use it when executing the default @ action.
672 * src/reader.c (reader_output_yylsp): No longer include
673 `timestamp' and `text' in the default YYLTYPE.
674
6752000-12-12 Akim Demaille <akim@epita.fr>
676
677 * src/reader.c (copy_definition, parse_union_decl, copy_action)
678 (copy_guard): Quote the file names.
679 Reported by Laurent Mascherpa.
680
6812000-12-12 Akim Demaille <akim@epita.fr>
682
683 * src/output.c (output_headers, output_program, output): Be sure
684 to escape special characters when outputting filenames.
685 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
686 (output_headers): Don't depend on them, Use ACTSTR.
687
6882000-11-17 Akim Demaille <akim@epita.fr>
689
690 * lib/obstack.h: Formatting changes.
691 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
692 prevents type checking.
693 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
694 cast the value to (void *): assigning a `foo *' to a `void *'
695 variable is valid.
696 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
697 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
698 append characters.
699
7002000-11-17 Akim Demaille <akim@epita.fr>
701
702 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
703 as...
704 (suite.m4, regression.m4, calc.m4): these.
705 * tests/atgeneral.m4: Update from CVS Autoconf.
706
7072000-11-17 Akim Demaille <akim@epita.fr>
708
709 * tests/regression.m4 (%union and --defines): New test,
710 demonstrating a current bug in the obstack implementation.
711
7122000-11-17 Akim Demaille <akim@epita.fr>
713
714 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
715 macros.
716 Use them to declare the variables which are global or local to
717 `yyparse'.
718
7192000-11-17 Akim Demaille <akim@epita.fr>
720
721 * acconfig.h: Remove, no longer used.
722
7232000-11-07 Akim Demaille <akim@epita.fr>
724
725 * src: s/Copyright (C)/Copyright/g.
726
7272000-11-07 Akim Demaille <akim@epita.fr>
728
729 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
730 defining.
731 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
732
7332000-11-07 Akim Demaille <akim@epita.fr>
734
735 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
736 Merge in a single CPP if/else.
737
7382000-11-07 Akim Demaille <akim@epita.fr>
739
740 * src/output.c (output): Remove useless variables.
741 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
742 argument `data' for consistency with the prototypes.
743 Qualify it `const'.
744 (obstack_copy, obstack_copy0): Rename the second argument as
745 `address' for consistency. Qualify it `const'.
746 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
747 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
748 `const' their input argument (`data' or `address').
749 Adjust the corresponding macros to include `const' in casts.
750
7512000-11-03 Akim Demaille <akim@epita.fr>
752
753 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
754 s/PFILE1/BISON_HAIRY/.
755 Adjust dependencies.
756
7572000-11-03 Akim Demaille <akim@epita.fr>
758
759 For some reason, this was not applied.
760
761 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
762 `unlink': it's no longer used.
763
7642000-11-03 Akim Demaille <akim@epita.fr>
765
766 * src/files.c (skeleton_find): New function, eved out of...
767 (open_files, open_extra_files): here.
768
7692000-11-03 Akim Demaille <akim@epita.fr>
770
771 Don't use `atexit'.
772
773 * src/files.c (obstack_save): New function.
774 (done): Rename as...
775 (output_files): this.
776 Use `obstack_save'.
777 * src/main.c (main): Don't use `atexit' to register `done', since
778 it no longer has to remove tmp files, just call `output_files'
779 when there are no errors.
780
7812000-11-02 Akim Demaille <akim@epita.fr>
782
783 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
784 `unlink': it's no longer used.
785 * src/files.h: Formatting changes.
786
7872000-11-02 Akim Demaille <akim@epita.fr>
788
789 Remove the last uses of mktemp and unlink/delete.
790
791 * src/files.c (fdefines, ftable): Removed.
792 (defines_ostack, table_obstack): New.
793 Adjust dependencies of the former into uses of the latter.
794 * src/output.c (output_short_or_char_table, output_short_table):
795 Convert to using obstacks.
796 * src/reader.c (copy_comment2): Accept one FILE * and two
797 obstacks.
798 (output_token_defines, reader_output_yylsp): Use obstacks.
799 * src/system.h (obstack_fgrow3): New.
800
8012000-11-01 Akim Demaille <akim@epita.fr>
802
803 Change each use of `fattrs' into a use of `attrs_obstack'.
804
805 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
806 * src/files.c (fattrs): Remove.
807 (attrs_obstack): New.
808 Adjust all dependencies.
809 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
810
8112000-11-01 Akim Demaille <akim@epita.fr>
812
813 Introduce obstacks.
814 Change each use of `faction' into a use of `action_obstack'.
815
816 * lib/obstack.h, lib/obstack.c: New files.
817 * src/files.c (faction): Remove.
818 (action_obstack): New.
819 Adjust all dependencies.
820
8212000-10-20 Akim Demaille <akim@epita.fr>
822
823 * lib/quote.h (PARAMS): New macro. Use it.
824
8252000-10-16 Akim Demaille <akim@epita.fr>
826
827 * src/output.c (output_short_or_char_table): New function.
828 (output_short_table, output_token_translations): Use it.
829 (goto_actions): Use output_short_table.
830
8312000-10-16 Akim Demaille <akim@epita.fr>
832
833 * src/symtab.c (bucket_new): New function.
834 (getsym): Use it.
835
836 * src/output.c (output_short_table): New argument to display the
837 comment associated with the table.
838 Adjust dependencies.
839 (output_gram): Use it.
840 (output_rule_data): Nicer output layout for YYTNAME.
841
8422000-10-16 Akim Demaille <akim@epita.fr>
843
844 * src/lex.c (read_typename): New function.
845 (lex): Use it.
846 * src/reader.c (copy_dollar): Likewise.
847
8482000-10-16 Akim Demaille <akim@epita.fr>
849
850 * src/reader.c (copy_comment2): Expect the input stream to be on
851 the `/' which is suspected to open a comment, instead of being
852 called after `//' or `/*' was read.
853 (copy_comment, copy_definition, parse_union_decl, copy_action)
854 (copy_guard): Adjust.
855
8562000-10-16 Akim Demaille <akim@epita.fr>
857
858 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
859 `read_signed_integer'.
860
8612000-10-16 Akim Demaille <akim@epita.fr>
862
863 * src/reader.c (copy_dollar): New function.
864 (copy_guard, copy_action): Use it.
865
8662000-10-16 Akim Demaille <akim@epita.fr>
867
868 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
869 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
870 New files, from Fileutils 4.0.27.
871 * src/main.c (printable_version): Remove.
872 * src/lex.c, src/reader.c: Use `quote'.
873
8742000-10-04 Akim Demaille <akim@epita.fr>
875
876 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
877
8782000-10-04 Akim Demaille <akim@epita.fr>
879
880 * doc/bison.texinfo: Various typos spotted by Neil Booth.
881
8822000-10-04 Akim Demaille <akim@epita.fr>
883
884 When a literal string is used to define two different tokens,
885 `bison -v' segfaults.
886 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
887
888 * tests/regression.m4: New file.
889 Include the core of the sample provided by Piotr Gackiewicz.
890 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
891 properly.
892
8932000-10-04 Akim Demaille <akim@epita.fr>
894
895 * src/reader.c (parse_expect_decl): Keep `count' within the size
896 of `buffer'.
897 From Neil Booth.
898
8992000-10-02 Paul Eggert <eggert@twinsun.com>
900
901 * bison.s1 (yyparse): Assign the default value
902 unconditionally, to avoid a GCC warning and make the parser a
903 tad smaller.
904
9052000-10-02 Akim Demaille <akim@epita.fr>
906
907 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
908 options.
909
9102000-10-02 Akim Demaille <akim@epita.fr>
911
912 * src/derives.c, src/print.c, src/reduce.c: To ease the
913 translation, move some `\n' out of the translated strings.
914
9152000-10-02 Akim Demaille <akim@epita.fr>
916
917 The location tracking mechanism is precious for parse error
918 messages. Nevertheless, it is enabled only when `@n' is used in
919 the grammar, which is a different issue (you can use it in error
920 message, but not in the grammar per se). Therefore, there should
921 be another means to enable it.
922
923 * src/getargs.c (getargs): Support `--locations'.
924 (usage): Report it.
925 * src/getargs.h (locationsflag): Export it.
926 * src/lex.c (percent_table): Support `%locations'.
927 * src/reader.c (yylsp_needed): Remove this variable, now replaced
928 with `locationsflag'.
929 * doc/bison.texinfo: Document `--locations' and `%locations'.
930 Sort the options.
931 * tests/calc.m4: Test it.
932
933 For regularity of the names, replace each
934 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
935 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
936 In addition replace each `flag' with `_flag'.
937
9382000-10-02 Akim Demaille <akim@epita.fr>
939
940 Also test parse error messages, including with YYERROR_VERBOSE.
941
942 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
943 associative).
944 Use it to check the computations.
945 Use it to check `nonassoc' is honored.
946 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
947 `--yyerror-verbose'.
948 (_AT_CHECK_CALC): Adjust to this option.
949 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
950
9512000-10-02 Akim Demaille <akim@epita.fr>
952
953 Test also `--verbose', `--defines' and `--name-prefix'. Testing
954 the latter demonstrates a flaw in the handling of non debugging
955 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
956 was used in order to simplify:
957
958 #if YYDEBUG
959 if (yydebug)
960 {
961 ...
962 }
963 #endif
964
965 into
966
967 if (yydebug)
968 {
969 ...
970 }
971
972 unfortunately this leads to a CPP conflict when
973 `--name-prefix=foo' is used since it produces `#define yydebug
974 foodebug'.
975
976 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
977 (YYDPRINTF): New macro.
978 Spread its use.
979 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
980 the bison options.
981 Also test `--verbose', `--defines' and `--name-prefix'.
982
9832000-10-02 Akim Demaille <akim@epita.fr>
984
985 Improve the readability of the produced parsers.
986
987 * src/bison.s1: Formatting changes.
988 Improve the comment related to the `$' mark.
989 (yydefault): Don't fall through to `yyresume': `goto' there.
990 * src/output.c (output_parser): When the `$' is met, skip the end
991 of its line.
992 New variable, `number_of_dollar_signs', to check there's exactly
993 one `$' in the parser skeleton.
994
9952000-10-02 Akim Demaille <akim@epita.fr>
996
997 * lib/xstrdup.c: New file, from the fileutils.
998 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
999 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
1000 instead of strlen + xmalloc + strcpy.
1001 * src/symtab.c (copys): Remove, use xstrdup instead.
1002
10032000-10-02 Akim Demaille <akim@epita.fr>
1004
1005 * src/gram.h (associativity): New enum type which replaces the
1006 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
1007 `right_assoc', `left_assoc' and `non_assoc'.
1008 Adjust all dependencies.
1009 * src/reader.c: Formatting changes.
1010 (LTYPESTR): Don't define it, use it as a literal in
1011 `reader_output_yylsp'.
1012 * src/symtab.h (symbol_class): New enum type which replaces the
1013 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
1014 `sunknown', `stoken and `snterm'.
1015
10162000-10-02 Akim Demaille <akim@epita.fr>
1017
1018 * src/getargs.c (fixed_outfiles): Rename as...
1019 (yaccflag): for consistency and accuracy.
1020 Adjust dependencies.
1021
10222000-10-02 Akim Demaille <akim@epita.fr>
1023
1024 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
1025 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
1026 difficult and introduced a lot of core dump. It turns out that
1027 Bison used an implementation of `xmalloc' based on `calloc', and
1028 at various places it does depend upon the initialization to 0. I
1029 have not tried to isolate the pertinent places, and all the former
1030 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
1031 someone should address this issue.
1032
1033 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
1034 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
1035 files.
1036 Adjust dependencies.
1037 * src/warshall.h: New file.
1038 Propagate.
1039
10402000-10-02 Akim Demaille <akim@epita.fr>
1041
1042 Various anti-`extern in *.c' changes.
1043
1044 * src/system.h: Include `assert.h'.
1045
10462000-10-02 Akim Demaille <akim@epita.fr>
1047
1048 * src/state.h (nstates, final_state, first_state, first_shift)
1049 (first_reduction): Move their exportation from here...
1050 * src/LR0.h: to here.
1051 Adjust dependencies.
1052 * src/getargs.c (statisticsflag): New variable.
1053 Add support for `--statistics'.
1054 Adjust dependencies.
1055
1056 Remove a lot of now useless `extern' statements in most files.
1057
10582000-10-02 Akim Demaille <akim@epita.fr>
1059
1060 * src/LR0.h: New file.
1061 Propagate its use.
1062
10632000-10-02 Akim Demaille <akim@epita.fr>
1064
1065 * src/print.h: New file.
1066 Propagate its use.
1067 * src/print.c: Formatting and ordering changes.
1068 (verbose, terse): Replace with...
1069 (print_results): this new function.
1070 Adjust dependencies.
1071
10722000-10-02 Akim Demaille <akim@epita.fr>
1073
1074 * src/conflicts.c (conflict_report): New function.
1075 (conflict_log, verbose_conflict_log): Replace with...
1076 (print_conflicts): this function.
1077 Adjust dependencies.
1078 * src/conflicts.h: New file.
1079 Propagate its inclusion.
1080
10812000-10-02 Akim Demaille <akim@epita.fr>
1082
1083 * src/nullable.h: New file.
1084 Propagate its inclusion.
1085 * src/nullable.c: Formatting changes.
1086
10872000-10-02 Akim Demaille <akim@epita.fr>
1088
1089 * src/reduce.h: New file.
1090 Propagate its inclusion.
1091 * src/reduce.c: Topological sort and other formatting changes.
1092 (bool, TRUE, FALSE): Move their definition to...
1093 * src/system.h: here.
1094
10952000-10-02 Akim Demaille <akim@epita.fr>
1096
1097 * src/files.c: Formatting changes.
1098 (tryopen, tryclose, openfiles): Rename as...
1099 (xfopen, xfclose, open_files): this.
1100 (stringappend): static.
1101 * src/files.h: Complete the list of exported symbols.
1102 Propagate its use.
1103
11042000-10-02 Akim Demaille <akim@epita.fr>
1105
1106 * src/reader.h: New file.
1107 Propagate its use instead of tedious list of `extern' and
1108 prototypes.
1109 * src/reader.c: Formatting changes, topological sort,
1110 s/register//.
1111
11122000-10-02 Akim Demaille <akim@epita.fr>
1113
1114 * src/lex.h: Prototype `lex.c' exported functions.
1115 * src/reader.c: Adjust.
1116 * src/lex.c: Formatting changes.
1117 (safegetc): Rename as...
1118 (xgetc): this.
1119
11202000-10-02 Akim Demaille <akim@epita.fr>
1121
1122 * src/lalr.h: New file.
1123 Propagate its inclusion instead of prototypes and `extern'.
1124 * src/lalr.c: Formatting changes, topological sorting etc.
1125
11262000-10-02 Akim Demaille <akim@epita.fr>
1127
1128 * src/output.c (token_actions): Introduce a temporary array,
1129 YYDEFACT, that makes it possible for this function to use
1130 output_short_table.
1131
11322000-10-02 Akim Demaille <akim@epita.fr>
1133
1134 `user_toknums' is output as a `short[]' in `output.c', while it is
1135 defined as a `int[]' in `reader.c'. For consistency with the
1136 other output tables, `user_toknums' is now defined as a table of
1137 shorts.
1138
1139 * src/reader.c (user_toknums): Be a short table instead of an int
1140 table.
1141 Adjust dependencies.
1142
1143 Factor the short table outputs.
1144
1145 * src/output.c (output_short_table): New function.
1146 * src/output.c (output_gram, output_stos, output_rule_data)
1147 (output_base, output_table, output_check): Use it.
1148
11492000-10-02 Akim Demaille <akim@epita.fr>
1150
1151 * src/output.c (output): Topological sort of the functions, in
1152 order to get rid of the `static' prototypes.
1153 No longer use `register'.
1154 * src/output.h: New file.
1155 Propagate its inclusion in files explicitly prototyping functions
1156 from output.c.
1157
11582000-09-21 Akim Demaille <akim@epita.fr>
1159
1160 * src/atgeneral.m4: Update from Autoconf.
1161
11622000-09-21 Akim Demaille <akim@epita.fr>
1163
1164 * src/closure.h: New file.
1165 * src/closure.c: Formatting changes, topological sort over the
1166 functions, use of closure.h.
1167 (initialize_closure, finalize_closure): Rename as...
1168 (new_closure, free_closure): these. Adjust dependencies.
1169 * src/LR0.c: Formatting changes, topological sort, use of
1170 cloture.h.
1171 (initialize_states): Rename as...
1172 (new_states): this.
1173 * src/Makefile.am (noinst_HEADERS): Adjust.
1174
11752000-09-20 Akim Demaille <akim@epita.fr>
1176
1177 * src/acconfig.h: Don't protect config.h against multiple
1178 inclusion.
1179 Don't define PARAMS.
1180 * src/system.h: Define PARAMS.
1181 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
1182 purpose of config.h. system.h must not try to fix wrong
1183 definitions in config.h.
1184
11852000-09-20 Akim Demaille <akim@epita.fr>
1186
1187 * src/derives.h: New file.
1188 * src/main.c, src/derives.h: Use it.
1189 Formatting changes.
1190 * src/Makefile.am (noinst_HEADERS): Adjust.
1191
11922000-09-20 Akim Demaille <akim@epita.fr>
1193
1194 * tests/atgeneral.m4: Update from Autoconf.
1195 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
1196 (AT_CHECK_CALC): New macros.
1197 Use these macros to test bison with options `', `--raw',
1198 `--debug', `--yacc', `--yacc --debug'.
1199
12002000-09-19 Akim Demaille <akim@epita.fr>
1201
1202 * src/output.c: Formatting changes.
1203 * src/machine.h: Remove, leaving its contents in...
1204 * src/system.h: here.
1205 Include stdio.h.
1206 Adjust all dependencies on stdio.h and machine.h.
1207 * src/getargs.h: New file.
1208 Let all `extern' declarations about getargs.c be replaced with
1209 inclusion of `getargs.h'.
1210 * src/Makefile.am (noinst_HEADERS): Adjust.
1211
1212 * tests/calc.m4 (yyin): Be initialized in main, not on the global
1213 scope.
1214 (yyerror): Returns void, not int.
1215 * doc/bison.texinfo: Formatting changes.
1216
12172000-09-19 Akim Demaille <akim@epita.fr>
1218
1219 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
1220 portable.
1221
12222000-09-18 Akim Demaille <akim@epita.fr>
1223
1224 * configure.in: Append WARNING_CFLAGS to CFLAGS.
1225 * src/Makefile.am (INCLUDES): Don't.
1226 Be ready to fetch headers in lib/.
1227
12282000-09-18 Akim Demaille <akim@epita.fr>
1229
1230 * doc/bison.texinfo: Update the copyright.
1231 ANSIfy and GNUify the examples.
1232 Remove the old menu.
1233
12342000-09-18 Akim Demaille <akim@epita.fr>
1235
1236 First set of tests: use the `calc' example from the documentation.
1237
1238 * src/bison.s1 (yyparse): Condition the code using `yytname' which
1239 is defined only when YYDEBUG is.
1240 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
1241 * src/files.c (tryopen, tryclose): Formatting changes.
1242 Move to the top and be static.
1243 * src/reader.c (read_signed_integer): Likewise.
1244 * tests/calc.m4: New file.
1245 * Makefile.am, suite.m4: Adjust.
1246 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
1247
12482000-09-18 Akim Demaille <akim@epita.fr>
1249
1250 Add support for an Autotest test suite for Bison.
1251
1252 * m4/m4.m4, m4/atconfig.m4: New files.
1253 * m4/Makefile.am (EXTRA_DIST): Adjust.
1254 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
1255 files.
1256 * src/getargs.c: Display a more standard --version message.
1257 * src/reader.c (reader): Formatting changes.
1258 No longer depend upon VERSION_STRING.
1259 * configure.in: No longer use `dnl'.
1260 Set up the test suite and the new directory `tests/.
1261 (VERSION_STRING): Remove.
1262
12632000-04-14 Akim Demaille <akim@epita.fr>
1264
1265 * src/reader.c (copy_comment2): New function, same as former
1266 `copy_comment', but outputs into two FILE *.
1267 (copy_comment): Use it.
1268 (parse_union_decl): Use it.
1269 (get_type, parse_start_decl): Use the same `invalid' message.
1270 (parse_start_decl, parse_union_decl): Use the same `multiple'
1271 message.
1272 (parse_union_decl, copy_guard, copy_action): Use the same
1273 `unmatched' message.
1274 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
1275
12762000-03-31 Akim Demaille <akim@epita.fr>
1277
1278 * src/files.c (tryopen, tryclose): Move to the top.
1279 Be static.
1280
12812000-03-31 Akim Demaille <akim@epita.fr>
1282
1283 * src/main.c (main): Don't call `done', exit does it.
1284
12852000-03-31 Akim Demaille <akim@epita.fr>
1286
1287 * allocate.c: s/return (foo)/return foo/.
1288 * lalr.c: Likewise.
1289 * LR0.c: Likewise.
1290 * output.c: Likewise.
1291 * reader.c: Likewise.
1292 * symtab.c: Likewise.
1293 * vmsgetargs.c: Likewise.
1294
12952000-03-31 Akim Demaille <akim@epita.fr>
1296
1297 Clean up the error reporting functions.
1298
1299 * src/report.c: New file.
1300 * src/report.h: Likewise.
1301 * src/Makefile.am: Adjust.
1302 * m4/error.m4: New file.
1303 * m4/Makefile.am: Adjust.
1304 * configure.in (jm_PREREQ_ERROR): Call it.
1305 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
1306 Remove.
1307 (fatal, fatals): Remove. All callers use complain.c::fatal.
1308 (warn, warni, warns, warnss, warnss): Remove. All callers use
1309 complain.c::complain.
1310 (toomany): Remove, use fatal instead.
1311 * src/files.c (done): No argument, use complain_message_count.
1312 * src/main.c (main): Register `done' to `atexit'.
1313
1314 * src/getargs.c (usage): More `fputs', less `fprintf'.
1315
13162000-03-28 Akim Demaille <akim@epita.fr>
1317
1318 * lib/: New directory.
1319 * Makefile.am (SUBDIRS): Adjust.
1320 * configure.in: Adjust.
1321 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
1322 useless.
1323 * src/alloca.c: Moved to lib/.
1324 * src/getopt.c: Likewise.
1325 * src/getopt1.c: Likewise.
1326 * src/getopt.h: Likewise.
1327 * src/ansi2knr.c: Likewise.
1328 * src/ansi2knr.1: Likewise.
1329 * src/Makefile.am: Adjust.
1330 * lib/Makefile.am: New file.
1331
13322000-03-28 Akim Demaille <akim@epita.fr>
1333
1334 * src/getargs.c (usage): Refresh the help message.
1335
13362000-03-17 Akim Demaille <akim@epita.fr>
1337
1338 * src/getopt1.c: Updated from textutils 2.0e
1339 * src/getopt.c: Likewise.
1340 * src/getopt.h: Likewise.
1341
13422000-03-17 Akim Demaille <akim@epita.fr>
1343
1344 * src/Makefile.am (bison.simple): Fix the awk program: quote only
1345 the file name, not the whole `#line LINE FILE'.
1346
13472000-03-17 Akim Demaille <akim@epita.fr>
1348
1349 On syntax errors, report the token on which we choked.
1350
1351 * src/bison.s1 (yyparse): In the label yyerrlab, when
1352 YYERROR_VERBOSE, add yychar in msg.
1353
13542000-03-17 Akim Demaille <akim@epita.fr>
1355
1356 * src/reader.c (copy_at): New function.
1357 (copy_guard): Use it.
1358 (copy_action): Use it.
1359
13602000-03-17 Akim Demaille <akim@epita.fr>
1361
1362 Be kind to translators, save some useless translations.
1363
1364 * src/main.c (banner): New function.
1365 (fatal_banner): Use it.
1366 (warn_banner): Use it.
1367
13682000-03-17 Akim Demaille <akim@epita.fr>
1369
1370 * src/reader.c (copy_definition): Use copy_string and
1371 copy_comment. Removed now unused `match', `ended',
1372 `cplus_comment'.
1373 (copy_comment, copy_string): Moved, to be visible from
1374 copy_definition.
1375
13762000-03-17 Akim Demaille <akim@epita.fr>
1377
1378 * src/reader.c (copy_string): Declare `static inline'. No
1379 problems with inline, since it is checked by configure.
1380 (copy_comment): Likewise.
1381
13822000-03-17 Akim Demaille <akim@epita.fr>
1383
1384 * src/reader.c (packsymbols): Formatting changes.
1385
13862000-03-17 Akim Demaille <akim@epita.fr>
1387
1388 * src/reader.c (copy_comment): New function, factored out from:
1389 (copy_action): Use it. Removed now unused `match', `ended',
1390 `cplus_comment'.
1391 (copy_guard): Likewise.
1392
13932000-03-17 Akim Demaille <akim@epita.fr>
1394
1395 * src/reader.c (copy_string): New function, factored out from:
1396 (copy_action): Use it.
1397 (copy_guard): Likewise.
1398
13992000-03-17 Akim Demaille <akim@epita.fr>
1400
1401 Change the handling of @s so that they behave exactly like $s.
1402 There is now a pseudo variable @$ (readble and writable), location
1403 of the lhs of the rule (by default ranging from the location of
1404 the first symbol of the rhs, to the location of the last symbol,
1405 or, if the rhs is empty, YYLLOC).
1406
1407 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
1408 yyval.
1409 (yyparse): When providing a default semantic action, provide a
1410 default location action.
1411 (after the $): No longer change `*YYLSP', just stack YYLOC the
1412 same way you stack YYVAL.
1413 * src/reader.c (read_declarations): Use warns.
1414 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
1415 (copy_action, case '@'): Likewise.
1416 Use a standard error message, to save useless work from
1417 translators.
1418
14192000-03-17 Akim Demaille <akim@epita.fr>
1420
1421 * src/bison.s1: Formatting and cosmetics changes.
1422 * src/reader.c: Likewise.
1423 Update the Copyright notice.
1424
14252000-03-17 Akim Demaille <akim@epita.fr>
1426
1427 * src/bison.s1 (#line): All set to `#line' only, since the
1428 Makefile now handles them.
1429
14302000-03-16 Akim Demaille <akim@epita.fr>
1431
1432 * src/output.c (output_rule_data): Output the documentation of
1433 some of the tables.
1434 (Copyright notice): Update.
1435 Formatting changes.
1436
14372000-03-16 Akim Demaille <akim@epita.fr>
1438
1439 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
1440 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
1441 One `#if YYDEBUG' remains, since it uses variables which are
1442 defined only if `YYDEBUG != 0'.
1443
14442000-03-16 Akim Demaille <akim@epita.fr>
1445
1446 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
1447 and related variables so that the similarities are highlighted.
1448
14492000-03-16 Akim Demaille <akim@epita.fr>
1450
1451 * src/bison.s1: Properly indent CPP directives.
1452
14532000-03-16 Akim Demaille <akim@epita.fr>
1454
1455 * src/bison.s1: Properly indent the `alloca' CPP section.
1456
14572000-03-16 Akim Demaille <akim@epita.fr>
1458
1459 Do not hard code values of directories in `configure.in'.
1460 Update the `configure' tool chain.
1461
1462 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
1463 src/makefile.am.
1464 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
1465 (AC_OUTPUT): Add m4/Makefile.
1466 Bump to bison 1.28a, 1.29 has never been released.
1467 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
1468 handled via src/Makefile.am.
1469 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
1470 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
1471 autoheader.
1472 * Makefile.am (SUBDIRS): Add m4.
1473 (ACLOCAL_AM_FLAGS): New variable.
1474 (AUTOMAKE_OPTIONS): Add check-news.
1475 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
1476 the proper line number and file name.
1477 (DEFS): Propagate the location of bison library files and of the
1478 locale files.
1479 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
1480 builddir.
1481 * acinclude.m4: Remove, replaced by the directory m4.
1482 * m4/Makefile.am (EXTRA_DIST): New variable.
1483 * m4/gettext.m4: New file, from the fileutils.
1484 * m4/lcmessage.m4: Likewise
1485 * m4/progtest.m4: Likewise.
1486 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
1487
14882000-03-10 Akim Demaille <akim@epita.fr>
1489
1490 * src/closure.c:
1491 Formatting changes of various comments.
1492 Respect the GNU coding standards at various places.
1493 Don't use `_()' when no translation is needed.
1494
14951999-12-13 Jesse Thilo <jthilo@gnu.org>
1496
1497 * src/files.c:
1498 OS/2 honors TMPDIR environment variable.
1499
15001999-12-13 Jesse Thilo <jthilo@gnu.org>
1501
1502 * doc/bison.texinfo: Tweaked spelling and grammar.
1503 Updated ISBN.
1504 Removed reference to price of printed copy.
1505 Mention BISON_SIMPLE and BISON_HAIRY.
1506
15071999-12-13 Jesse Thilo <jthilo@gnu.org>
1508
1509 * configure.in, NEWS:
1510 Bison 1.29 released.
1511
15121999-10-27 Jesse Thilo <jthilo@gnu.org>
1513
1514 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
1515 Added reference card.
1516
15171999-07-26 Jesse Thilo <jthilo@gnu.org>
1518
1519 * po/ru.po: Added Russian translation.
1520
15211999-07-26 Jesse Thilo <jthilo@gnu.org>
1522
1523 * configure.in: Added Russian translation.
1524
15251999-07-06 Jesse Thilo <jthilo@gnu.org>
1526
1527 * configure.in, NEWS, README:
1528 Released version 1.28.
1529
15301999-06-14 Jesse Thilo <jthilo@gnu.org>
1531
1532 * src/system.h:
1533 Squashed redefinition warning on some systems.
1534
1535 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
1536 Have configure build version string instead of relying on ANSI string
1537 concatentation.
1538
15391999-06-14 Jesse Thilo <jthilo@gnu.org>
1540
1541 * po/POTFILES.in: Got rid of version.c.
1542
15431999-06-14 Jesse Thilo <jthilo@gnu.org>
1544
1545 * acconfig.h, configure.in:
1546 Have configure build version string instead of relying on ANSI string
1547 concatentation.
1548
15491999-06-08 Jesse Thilo <jthilo@gnu.org>
1550
1551 * doc/bison.1:
1552 Dropped mention of `+' for long-named options.
1553
15541999-05-30 Jesse Thilo <jthilo@gnu.org>
1555
1556 * src/files.c: Added <unistd.h> for unlink().
1557
1558 * src/Makefile.am, src/system.h:
1559 I18n fixes.
1560
15611999-05-30 Jesse Thilo <jthilo@gnu.org>
1562
1563 * README: Added a FAQ list.
1564
1565 * configure.in, acconfig.h:
1566 I18n fixes.
1567
15681999-05-30 Jesse Thilo <jthilo@gnu.org>
1569
1570 * doc/FAQ, doc/Makefile.am:
1571 Added a FAQ list.
1572
15731999-05-19 Jesse Thilo <jthilo@gnu.org>
1574
1575 * src/alloc.h, src/symtab.h, src/version.c:
1576 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1577
15781999-04-18 Jesse Thilo <jthilo@gnu.org>
1579
1580 * src/.cvsignore, src/Makefile.am:
1581 Reorganized: sources in `src', documentation in `doc'.
1582
1583 * src/lex.c (literalchar):
1584 fixed the code for escaping double quotes (thanks
1585 Jonathan Czisny.)
1586
15871999-04-18 Jesse Thilo <jthilo@gnu.org>
1588
1589 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1590 Adjusted paths to reflect directory reorganization.
1591
15921999-04-18 Jesse Thilo <jthilo@gnu.org>
1593
1594 * doc/.cvsignore, doc/Makefile.am:
1595 Reorganized: sources in `src', documentation in `doc'.
1596
15971999-04-18 Jesse Thilo <jthilo@gnu.org>
1598
1599 * configure.in:
1600 Updated AC_INIT file to reflect directory reorganization.
1601
1602 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1603 Reorganized: sources in `src', documentation in `doc'.
1604
16051999-04-13 Jesse Thilo <jthilo@gnu.org>
1606
1607 * src/allocate.c:
1608 Don't declare calloc() and realloc() if not necessary.
1609
16101999-04-13 Jesse Thilo <jthilo@gnu.org>
1611
1612 * configure.in, acconfig.h, acinclude.m4:
1613 Don't declare calloc() and realloc() if not necessary.
1614
16151999-03-23 Jesse Thilo <jthilo@gnu.org>
1616
1617 * po/.cvsignore: Added i18n support.
1618
16191999-03-23 Jesse Thilo <jthilo@gnu.org>
1620
1621 * acconfig.h, configure.in, Makefile.am:
1622 Added i18n support.
1623
16241999-03-22 Jesse Thilo <jthilo@gnu.org>
1625
1626 * src/bison.s1: Fixed #line numbers.
1627
16281999-03-15 Jesse Thilo <jthilo@gnu.org>
1629
1630 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1631 Added PO files from Translation Project.
1632
16331999-03-03 Jesse Thilo <jthilo@gnu.org>
1634
1635 * Makefile.am:
1636 Added support for non-ANSI compilers (ansi2knr).
1637
16381999-02-16 Jesse Thilo <jthilo@gnu.org>
1639
1640 * configure.in: Bumped version number to 1.27.
1641
1642 * Makefile.am:
1643 Added `bison.simple' to list of files removed by `make distclean'.
1644
16451999-02-12 Jesse Thilo <jthilo@gnu.org>
1646
1647 * src/files.c, src/files.h:
1648 Defined locations of parser files in config.h instead of Makefile.
1649
16501999-02-12 Jesse Thilo <jthilo@gnu.org>
1651
1652 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1653 Defined locations of parser files in config.h instead of Makefile.
1654
16551999-02-09 Jesse Thilo <jthilo@gnu.org>
1656
1657 * Makefile.am:
1658 Removed inappropriate use of $< macro.
1659
16601999-02-05 Jesse Thilo <jthilo@gnu.org>
1661
1662 * po/Makefile.in.in, po/POTFILES.in:
1663 Add `po' directory skeleton.
1664
16651999-01-27 Jesse Thilo <jthilo@gnu.org>
1666
1667 * README: Document help-bison list.
1668
1669 * configure.in: Add check for mkstemp().
1670
16711999-01-20 Jesse Thilo <jthilo@gnu.org>
1672
1673 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1674 Hush a few compiler warnings.
1675
1676 * src/files.c:
1677 Add tryclose(), which verifies that fclose was successful.
1678 Hush a couple of compiler warnings.
1679
16801999-01-20 Jesse Thilo <jthilo@gnu.org>
1681
1682 * Makefile.am, OChangeLog:
1683 ChangeLog is now automatically generated. Include the old version as
1684 OChangeLog.
1685
16861999-01-14 Jesse Thilo <jthilo@gnu.org>
1687
1688 * 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:
1689 Update FSF address.
1690
16911999-01-14 Jesse Thilo <jthilo@gnu.org>
1692
1693 * doc/bison.texinfo: Fix formatting glitch.
1694
1695 * doc/bison.texinfo: Update FSF address.
1696
16971999-01-14 Jesse Thilo <jthilo@gnu.org>
1698
1699 * acconfig.h: Update FSF address.
1700
17011999-01-08 Jesse Thilo <jthilo@gnu.org>
1702
1703 * src/system.h:
1704 Don't define PACKAGE here, since config.h defines it.
1705
17061998-12-30 Jesse Thilo <jthilo@gnu.org>
1707
1708 * src/reader.c: Update copyright date.
1709
1710 * src/main.c:
1711 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1712 favor of output directly to stderr (avoids buffer overruns).
1713
1714 * src/reader.c: Some checks for premature EOF.
1715
1716 * 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:
1717 Use prototypes if the compiler understands them.
1718
1719 * src/files.c: Honor TMPDIR on Unix hosts.
1720 Use prototypes if the compiler understands them.
1721
1722 * src/reader.c:
1723 Fix a couple of buffer overrun bugs.
1724 Use prototypes if the compiler understands them.
1725
1726 * src/system.h: Include unistd.h and ctype.h.
1727 Use #ifdef instead of #if for NLS symbols.
1728
17291998-12-30 Jesse Thilo <jthilo@gnu.org>
1730
1731 * doc/bison.texinfo:
1732 Delete comment "consider using @set for edition number, etc..." since
1733 we now are doing so.
1734
17351998-12-30 Jesse Thilo <jthilo@gnu.org>
1736
1737 * configure.in:
1738 Use prototypes if the compiler understands them.
1739
1740 * NEWS: Document 1.26 highlights.
1741
1742 * Makefile.am: Require Automake 1.3 or later.
1743
1744 * acconfig.h:
1745 Use prototypes if the compiler understands them.
1746
17471998-12-29 Jesse Thilo <jthilo@gnu.org>
1748
1749 * src/version.c:
1750 Use VERSION symbol from automake for version number.
1751
17521998-12-29 Jesse Thilo <jthilo@gnu.org>
1753
1754 * acconfig.h, configure.in, version.cin:
1755 Use VERSION symbol from automake for version number.
1756
17571998-11-28 Jesse Thilo <jthilo@gnu.org>
1758
1759 * Makefile.am:
1760 Distribute original version of simple parser (bison.s1), not built
1761 version (bison.simple).
1762
17631998-11-28 Jesse Thilo <jthilo@gnu.org>
1764
1765 * doc/bison.texinfo: Add info dir entry.
1766
1767 * doc/bison.texinfo:
1768 Let automake put version number into documentation.
1769
17701998-11-26 Jesse Thilo <jthilo@gnu.org>
1771
1772 * src/bison.cld, src/build.com, src/vmshlp.mar:
1773 Add non-RCS files from /gd/gnu/bison.
1774
17751998-11-26 Jesse Thilo <jthilo@gnu.org>
1776
1777 * doc/bison.1:
1778 Document the BISON_HAIRY and BISON_SIMPLE variables.
1779
17801998-11-25 Jesse Thilo <jthilo@gnu.org>
1781
1782 * src/version.c: Build version.c automatically.
1783
1784 * src/reader.c:
1785 Fix token numbering (used to start at 258, not 257).
1786
1787 * src/system.h: Include config.h.
1788
1789 * src/getargs.c: Update bug report address.
1790
1791 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1792 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1793
17941998-11-25 Jesse Thilo <jthilo@gnu.org>
1795
1796 * Makefile.am:
1797 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1798
1799 * configure.in, version.cin:
1800 Build version.c automatically.
1801
1802 * AUTHORS: Add AUTHORS file.
1803
1804 * README: Update bug report address.
1805
1806 * bison.simple:
1807 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1808
1809 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1810 Add automake stuff.
1811
18121998-11-25 Jesse Thilo <jthilo@gnu.org>
1813
1814 * doc/bison.texinfo: Clean up some formatting.
1815
18161998-05-05 Richard Stallman <rms@gnu.org>
1817
1818 * doc/bison.texinfo:
1819 Explain better why to make a pure parser.
1820
18211998-01-05 Richard Stallman <rms@gnu.org>
1822
1823 * src/files.c (openfiles):
1824 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1825 find a temporary directory, if possible. Do not unlink files while
1826 they are open.
1827
18281997-08-25 Richard Stallman <rms@gnu.org>
1829
1830 * src/reader.c (stack_offset;):
1831 Change some warni to warns.
1832
1833 * src/lex.c (literalchar): Use warns, not warni.
1834
18351997-06-28 Richard Stallman <rms@gnu.org>
1836
1837 * src/bison.s1: Add a Bison version comment.
1838
1839 * src/main.c (fatal, warn, berror):
1840 Use program_name.
1841
18421997-06-28 Richard Stallman <rms@gnu.org>
1843
1844 * Makefile.in (bison_version): New variable.
1845 (dist): Use that variable.
1846 (bison.s1): Substitute the Bison version into bison.simple.
1847
1848 * bison.simple: Add a Bison version comment.
1849
18501997-06-18 Richard Stallman <rms@gnu.org>
1851
1852 * src/main.c (fatal, warn, berror):
1853 Make error messages standard.
1854 (toomany): Improve error message text.
1855
1856 * 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:
1857 new.h renamed to alloc.h.
1858
18591997-06-18 Richard Stallman <rms@gnu.org>
1860
1861 * Makefile.in: new.h renamed to alloc.h.
1862
18631997-05-24 Richard Stallman <rms@gnu.org>
1864
1865 * src/lex.c (literalchar):
1866 Fix the code for escaping \, " and '.
1867
1868 (lex): Avoid trouble when there are many chars
1869 to discard in a char literal with just several chars in it.
1870
18711997-05-17 Richard Stallman <rms@gnu.org>
1872
1873 * src/bison.s1:
1874 Use malloc, if using alloca is troublesome.
1875 (YYSTACK_USE_ALLOCA): New flag macro.
1876 Define it for some systems and compilers.
1877 (YYSTACK_ALLOC): New macro.
1878 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1879 If it was malloc'd, free it.
1880
18811997-05-17 Richard Stallman <rms@gnu.org>
1882
1883 * bison.simple:
1884 Use malloc, if using alloca is troublesome.
1885 (YYSTACK_USE_ALLOCA): New flag macro.
1886 Define it for some systems and compilers.
1887 (YYSTACK_ALLOC): New macro.
1888 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1889 If it was malloc'd, free it.
1890
18911997-04-23 Richard Stallman <rms@gnu.org>
1892
1893 * src/bison.s1:
1894 (alloca) [__hpux]: Always define as __builtin_alloca.
1895
18961997-04-23 Richard Stallman <rms@gnu.org>
1897
1898 * bison.simple:
1899 (alloca) [__hpux]: Always define as __builtin_alloca.
1900
19011997-04-22 Richard Stallman <rms@gnu.org>
1902
1903 * src/bison.s1:
1904 [__hpux]: Include alloca.h (right for HPUX 10)
1905 instead of declaring alloca (right for HPUX 9).
1906
1907 * src/bison.s1 (__yy_memcpy):
1908 Declare arg `count' as unsigned int.
1909 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1910
19111997-04-22 Richard Stallman <rms@gnu.org>
1912
1913 * bison.simple:
1914 [__hpux]: Include alloca.h (right for HPUX 10)
1915 instead of declaring alloca (right for HPUX 9).
1916
1917 * bison.simple (__yy_memcpy):
1918 Declare arg `count' as unsigned int.
1919 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1920
19211997-01-03 Richard Stallman <rms@gnu.org>
1922
1923 * src/allocate.c: [__STDC__ or _MSC_VER]:
1924 Declare calloc and realloc to return void *.
1925
19261997-01-02 Richard Stallman <rms@gnu.org>
1927
1928 * src/system.h:
1929 [_MSC_VER]: Include stdlib.h and process.h.
1930 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
1931
1932 * src/main.c (main): Return FAILURE as a value.
1933 (printable_version): Declare arg as int, not char.
1934
19351997-01-02 Richard Stallman <rms@gnu.org>
1936
1937 * Makefile.in (dist):
1938 Explicitly check for symlinks, and copy them.
1939
19401996-12-19 Richard Stallman <rms@gnu.org>
1941
1942 * src/files.c:
1943 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
1944
19451996-12-18 Paul Eggert <eggert@gnu.org>
1946
1947 * src/bison.s1 (yyparse):
1948 If __GNUC__ and YYPARSE_PARAM are both defined,
1949 declare yyparse to have a void * argument.
1950
19511996-12-18 Paul Eggert <eggert@gnu.org>
1952
1953 * bison.simple (yyparse):
1954 If __GNUC__ and YYPARSE_PARAM are both defined,
1955 declare yyparse to have a void * argument.
1956
19571996-12-17 Richard Stallman <rms@gnu.org>
1958
1959 * src/reduce.c (nbits): Add some casts.
1960
19611996-08-12 Richard Stallman <rms@gnu.org>
1962
1963 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
1964
19651996-08-12 Richard Stallman <rms@gnu.org>
1966
1967 * bison.simple: Test _MSDOS as well as _MSDOS_.
1968
19691996-07-31 Richard Stallman <rms@gnu.org>
1970
1971 * src/bison.s1:
1972 [__sun && __i386]: Include alloca.h.
1973
19741996-07-31 Richard Stallman <rms@gnu.org>
1975
1976 * bison.simple:
1977 [__sun && __i386]: Include alloca.h.
1978
19791996-07-30 Richard Stallman <rms@gnu.org>
1980
1981 * src/bison.s1: Comment change.
1982
1983 * src/bison.s1: Test _MSDOS_, not MSDOS.
1984
19851996-07-30 Richard Stallman <rms@gnu.org>
1986
1987 * bison.simple: Comment change.
1988
1989 * bison.simple: Test _MSDOS_, not MSDOS.
1990
19911996-06-01 Richard Stallman <rms@gnu.org>
1992
1993 * 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:
1994 Insert `_' macro around many string constants.
1995
1996 * src/main.c:
1997 Insert `_' macro around many string constants.
1998
1999 (main): Call setlocale, bindtextdomain and textdomain.
2000
2001 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
2002 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
2003 [ENABLE_NLS]: Include libintl.h.
2004 [ENABLE_NLS] (gettext): Define.
2005 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
2006 (N_, PACKAGE, LOCALEDIR): New macros.
2007
20081996-06-01 Richard Stallman <rms@gnu.org>
2009
2010 * POTFILES.in: New file.
2011
2012 * Makefile.in (allocate.o):
2013 Define target explicitly.
2014
2015 * Makefile.in (CFLAGS): Set to @CFLAGS@.
2016 (LDFLAGS): Set to @LDFLAGS@.
2017 (configure): Run autoconf only if preceding `cd' succeeds.
2018 (bison.s1): Redirect output to temporary file then move the
2019 temporary to the target, rather than redirecting directly to bison.s1.
2020 (clean): Remove config.status and config.log.
2021 (distclean): Don't remove config.status here.
2022
20231996-05-12 Richard Stallman <rms@gnu.org>
2024
2025 * src/bison.s1:
2026 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
2027
20281996-05-12 Richard Stallman <rms@gnu.org>
2029
2030 * bison.simple:
2031 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
2032
20331996-05-11 Richard Stallman <rms@gnu.org>
2034
2035 * src/bison.s1 (__yy_memcpy):
2036 Really reorder the args, as was supposedly done on Feb 14 1995.
2037 (yyparse): Calls changed accordingly.
2038
20391996-05-11 Richard Stallman <rms@gnu.org>
2040
2041 * Makefile.in (dist): Don't use $(srcdir).
2042
2043 * bison.simple (__yy_memcpy):
2044 Really reorder the args, as was supposedly done on Feb 14 1995.
2045 (yyparse): Calls changed accordingly.
2046
20471996-01-27 Richard Stallman <rms@gnu.org>
2048
2049 * src/output.c (output_rule_data):
2050 Test YYERROR_VERBOSE in the conditional
2051 around the definition of ttyname.
2052
20531995-12-29 Richard Stallman <rms@gnu.org>
2054
2055 * src/bison.s1:
2056 Fix line numbers in #line commands.
2057
20581995-12-29 Richard Stallman <rms@gnu.org>
2059
2060 * bison.simple:
2061 Fix line numbers in #line commands.
2062
20631995-12-27 Richard Stallman <rms@gnu.org>
2064
2065 * src/bison.s1 (YYPARSE_PARAM_DECL):
2066 In C++, make it always null.
2067 (YYPARSE_PARAM_ARG): New macro.
2068 (yyparse): Use YYPARSE_PARAM_ARG.
2069
20701995-12-27 Richard Stallman <rms@gnu.org>
2071
2072 * bison.simple (YYPARSE_PARAM_DECL):
2073 In C++, make it always null.
2074 (YYPARSE_PARAM_ARG): New macro.
2075 (yyparse): Use YYPARSE_PARAM_ARG.
2076
20771995-11-29 Richard Stallman <rms@gnu.org>
2078
2079 * doc/bison.texinfo:
2080 Describe literal string tokens, %raw, %no_lines, %token_table.
2081
20821995-11-29 Daniel Hagerty <hag@gnu.org>
2083
2084 * doc/bison.texinfo: Fixed update date
2085
20861995-10-16 Richard Stallman <rms@gnu.org>
2087
2088 * src/version.c: Version 1.25.
2089
20901995-10-16 Richard Stallman <rms@gnu.org>
2091
2092 * NEWS: *** empty log message ***
2093
20941995-10-16 Richard Stallman <rms@gnu.org>
2095
2096 * doc/bison.1, doc/bison.rnh:
2097 Add new options.
2098
20991995-10-15 Richard Stallman <rms@gnu.org>
2100
2101 * src/vmsgetargs.c, src/getargs.c:
2102 Added -n, -k, and -raw switches.
2103 (noparserflag, toknumflag, rawtoknumflag): New variables.
2104
2105 * src/symtab.h (SALIAS):
2106 New #define for adding aliases to %token.
2107 (struct bucket): Added `alias' field.
2108
2109 * src/reduce.c (reduce_grammar):
2110 Revise error message.
2111 (print_notices): Remove final `.' from error message.
2112
2113 * src/reader.c (reader_output_yylsp):
2114 New function.
2115 (readgram): Use `#if 0' around code that accepted %command
2116 inside grammar rules: The documentation doesn't allow it,
2117 and it will fail since the %command processors scan for the next %.
2118 (parse_token_decl): Extended the %token
2119 declaration to allow a multi-character symbol as an alias.
2120 (parse_thong_decl): New function.
2121 (read_declarations): Added %thong declarations.
2122 (read_declarations): Handle NOOP to deal with allowing
2123 % declarations as another means to specify the flags.
2124 (readgram): Allow %prec prior to semantics embedded in a rule.
2125 (skip_to_char, read_declarations, copy_definition)
2126 (parse_token_decl, parse_start_decl, parse_type_decl)
2127 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
2128 (get_type_name, copy_guard, copy_action, readgram)
2129 (get_type, packsymbols): Revised most error messages.
2130 Changed `fatal' to `warnxxx' to avoid aborting for error.
2131 Revised and use multiple warnxxx functions to avoid using VARARGS1.
2132 (read_declarations): Improve the error message for
2133 an invalid character. Do not abort.
2134 (read_declarations, copy_guard, copy_action): Use
2135 printable_version to avoid unprintable characters in printed output.
2136 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
2137 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
2138 Allow the type of a non-terminal can be given
2139 more than once, as long as all specifications give the same type.
2140
2141 * src/output.c:
2142 (output_headers, output_trailers, output, output_gram)
2143 (output_rule_data): Implement noparserflag variable.
2144 Implement toknumflag variable.
2145 (output): Call reader_output_yylsp to output LTYPESTR.
2146
2147 * src/main.c (main):
2148 If reader sees an error, don't process the grammar.
2149 (fatals): Updated to not use VARARGS1.
2150 (printable_version, int_to_string, warn, warni, warns, warnss)
2151 (warnsss): New error reporting functions. Avoid abort for error.
2152
2153 * src/lex.h:
2154 Added THONG and NOOP for alias processing.
2155 Added SETOPT for the new code that allows setting options with %flags.
2156
2157 * src/lex.c:
2158 Include getopt.h. Add some extern decls.
2159 (safegetc): New function to deal with EOF gracefully.
2160 (literalchar); new function to deal with reading \ escapes.
2161 (lex): Use literalchar.
2162 (lex): Implemented "..." tokens.
2163 (literalchar, lex, parse_percent_token): Made tokenbuffer
2164 always contain the token. This includes growing the token
2165 buffer while reading an integer.
2166 (parse_percent_token): Replaced if-else statement with percent_table.
2167 (parse_percent_token): Added % declarations as another
2168 way to specify the flags -n, -l, and -r. Also added hooks for
2169 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
2170 major changes to files.c.
2171 (lex) Retain in the incoming stream a character following
2172 an incorrect '/'.
2173 (skip_white_space, lex): Revised most error messages
2174 and changed fatal to warn to avoid aborting.
2175 (percent_table): Added %thong declarations.
2176
2177 * src/gram.h: Comment changes.
2178
2179 * src/files.c (openfiles, open_extra_files, done):
2180 Add faction flag
2181 and actfile file. Handle noparserflag. Both for -n switch.
2182
2183 * src/conflicts.c (resolve_sr_conflict):
2184 Remove use of alloca.
2185
21861995-06-01 Jim Meyering <meyering@gnu.org>
2187
2188 * doc/bison.texinfo: *** empty log message ***
2189
21901995-05-06 Richard Stallman <rms@gnu.org>
2191
2192 * src/bison.s1: Comment change.
2193
21941995-05-06 Richard Stallman <rms@gnu.org>
2195
2196 * bison.simple: Comment change.
2197
21981995-05-03 Richard Stallman <rms@gnu.org>
2199
2200 * src/version.c: Version now 1.24.
2201
2202 * src/bison.s1: Change distribution terms.
2203
2204 * src/version.c: Version now 1.23.
2205
22061995-05-03 Richard Stallman <rms@gnu.org>
2207
2208 * doc/bison.texinfo:
2209 Rewrite "Conditions for Using Bison".
2210 Update version to 1.24.
2211
22121995-05-03 Richard Stallman <rms@gnu.org>
2213
2214 * bison.simple: Change distribution terms.
2215
22161995-02-23 Richard Stallman <rms@gnu.org>
2217
2218 * src/files.c: Test __VMS_POSIX as well as VMS.
2219
22201995-02-14 Jim Meyering <meyering@gnu.org>
2221
2222 * src/bison.s1 (__yy_memcpy):
2223 Renamed from __yy_bcopy to avoid
2224 confusion. Reverse FROM and TO arguments to be consistent with
2225 those of memcpy.
2226
22271995-02-14 Jim Meyering <meyering@gnu.org>
2228
2229 * bison.simple (__yy_memcpy):
2230 Renamed from __yy_bcopy to avoid
2231 confusion. Reverse FROM and TO arguments to be consistent with
2232 those of memcpy.
2233
22341994-11-10 David J. MacKenzie <djm@gnu.org>
2235
2236 * NEWS: reformat
2237
2238 * NEWS: New file.
2239
2240 * Makefile.in (DISTFILES): Include NEWS.
2241
2242 * Makefile.in (DISTFILES):
2243 Include install-sh, not install.sh.
2244
2245 * configure.in: Update to Autoconf v2 macro names.
2246
22471994-10-05 David J. MacKenzie <djm@gnu.org>
2248
2249 * Makefile.in: fix typo
2250
2251 * Makefile.in (prefix, exec_prefix):
2252 Let configure set them.
2253
22541994-09-28 David J. MacKenzie <djm@gnu.org>
2255
2256 * Makefile.in: Set datadir to $(prefix)/share.
2257
22581994-09-15 Richard Stallman <rms@gnu.org>
2259
2260 * src/bison.s1:
2261 Update copyright notice and GPL version.
2262
22631994-09-15 Richard Stallman <rms@gnu.org>
2264
2265 * bison.simple:
2266 Update copyright notice and GPL version.
2267
22681994-07-12 Richard Stallman <rms@gnu.org>
2269
2270 * src/reduce.c, src/reader.c:
2271 entered into RCS
2272
22731994-05-05 David J. MacKenzie <djm@gnu.org>
2274
2275 * Makefile.in: entered into RCS
2276
22771994-03-26 Richard Stallman <rms@gnu.org>
2278
2279 * src/bison.s1: entered into RCS
2280
22811994-03-26 Richard Stallman <rms@gnu.org>
2282
2283 * bison.simple: entered into RCS
2284
22851994-03-25 Richard Stallman <rms@gnu.org>
2286
2287 * src/main.c: entered into RCS
2288
22891994-03-24 Richard Stallman <rms@gnu.org>
2290
2291 * src/conflicts.c: entered into RCS
2292
22931994-01-02 Richard Stallman <rms@gnu.org>
2294
2295 * Makefile.in: *** empty log message ***
2296
22971993-11-21 Richard Stallman <rms@gnu.org>
2298
2299 * src/bison.s1: *** empty log message ***
2300
23011993-11-21 Richard Stallman <rms@gnu.org>
2302
2303 * doc/bison.texinfo: entered into RCS
2304
2305 * doc/bison.texinfo: *** empty log message ***
2306
23071993-11-21 Richard Stallman <rms@gnu.org>
2308
2309 * bison.simple: *** empty log message ***
2310
23111993-10-25 David J. MacKenzie <djm@gnu.org>
2312
2313 * doc/bison.texinfo: *** empty log message ***
2314
23151993-10-19 Richard Stallman <rms@gnu.org>
2316
2317 * src/bison.s1: *** empty log message ***
2318
23191993-10-19 Richard Stallman <rms@gnu.org>
2320
2321 * bison.simple: *** empty log message ***
2322
23231993-10-14 Richard Stallman <rms@gnu.org>
2324
2325 * src/bison.s1: *** empty log message ***
2326
23271993-10-14 Richard Stallman <rms@gnu.org>
2328
2329 * bison.simple: *** empty log message ***
2330
23311993-09-14 David J. MacKenzie <djm@gnu.org>
2332
2333 * doc/bison.texinfo: *** empty log message ***
2334
23351993-09-13 Noah Friedman <friedman@gnu.org>
2336
2337 * Makefile.in: *** empty log message ***
2338
23391993-09-10 Richard Stallman <rms@gnu.org>
2340
2341 * src/conflicts.c: *** empty log message ***
2342
2343 * src/system.h: entered into RCS
2344
23451993-09-10 Richard Stallman <rms@gnu.org>
2346
2347 * doc/bison.1: entered into RCS
2348
23491993-09-06 Noah Friedman <friedman@gnu.org>
2350
2351 * src/version.c: entered into RCS
2352
23531993-09-06 Noah Friedman <friedman@gnu.org>
2354
2355 * Makefile.in: *** empty log message ***
2356
23571993-07-30 David J. MacKenzie <djm@gnu.org>
2358
2359 * Makefile.in: *** empty log message ***
2360
23611993-07-24 Richard Stallman <rms@gnu.org>
2362
2363 * src/bison.s1: *** empty log message ***
2364
23651993-07-24 Richard Stallman <rms@gnu.org>
2366
2367 * bison.simple: *** empty log message ***
2368
23691993-07-08 David J. MacKenzie <djm@gnu.org>
2370
2371 * Makefile.in: *** empty log message ***
2372
23731993-07-04 Richard Stallman <rms@gnu.org>
2374
2375 * src/bison.s1: *** empty log message ***
2376
23771993-07-04 Richard Stallman <rms@gnu.org>
2378
2379 * bison.simple: *** empty log message ***
2380
23811993-06-26 David J. MacKenzie <djm@gnu.org>
2382
2383 * src/getargs.c: entered into RCS
2384
23851993-06-26 David J. MacKenzie <djm@gnu.org>
2386
2387 * doc/bison.texinfo: *** empty log message ***
2388
2389 * doc/bison.1: New file.
2390
23911993-06-25 Richard Stallman <rms@gnu.org>
2392
2393 * src/getargs.c: New file.
2394
23951993-06-16 Richard Stallman <rms@gnu.org>
2396
2397 * src/bison.s1: *** empty log message ***
2398
23991993-06-16 Richard Stallman <rms@gnu.org>
2400
2401 * bison.simple: *** empty log message ***
2402
24031993-06-03 Richard Stallman <rms@gnu.org>
2404
2405 * src/bison.s1: New file.
2406
24071993-06-03 Richard Stallman <rms@gnu.org>
2408
2409 * doc/bison.texinfo: *** empty log message ***
2410
24111993-06-03 Richard Stallman <rms@gnu.org>
2412
2413 * bison.simple: New file.
2414
24151993-05-19 Richard Stallman <rms@gnu.org>
2416
2417 * doc/bison.texinfo: New file.
2418
24191993-05-07 Noah Friedman <friedman@gnu.org>
2420
2421 * Makefile.in: *** empty log message ***
2422
24231993-04-28 Noah Friedman <friedman@gnu.org>
2424
2425 * src/reader.c: *** empty log message ***
2426
24271993-04-23 Noah Friedman <friedman@gnu.org>
2428
2429 * src/alloc.h: entered into RCS
2430
24311993-04-20 David J. MacKenzie <djm@gnu.org>
2432
2433 * src/version.c: *** empty log message ***
2434
2435 * src/files.c, src/allocate.c:
2436 entered into RCS
2437
2438 * src/reader.c: *** empty log message ***
2439
2440 * src/lex.c: entered into RCS
2441
2442 * src/conflicts.c: New file.
2443
2444 * src/symtab.c: entered into RCS
2445
2446 * src/alloc.h: New file.
2447
2448 * src/LR0.c: entered into RCS
2449
24501993-04-18 Noah Friedman <friedman@gnu.org>
2451
2452 * src/reader.c: New file.
2453
2454 * src/version.c: *** empty log message ***
2455
24561993-04-18 Noah Friedman <friedman@gnu.org>
2457
2458 * Makefile.in: *** empty log message ***
2459
24601993-04-17 Noah Friedman <friedman@gnu.org>
2461
2462 * Makefile.in: *** empty log message ***
2463
24641993-04-15 Richard Stallman <rms@gnu.org>
2465
2466 * src/main.c, src/files.c:
2467 New file.
2468
24691993-04-15 Noah Friedman <friedman@gnu.org>
2470
2471 * configure.in: entered into RCS
2472
2473 * configure.in: *** empty log message ***
2474
2475 * configure.in: New file.
2476
24771993-04-14 Richard Stallman <rms@gnu.org>
2478
2479 * Makefile.in: New file.
2480
24811993-04-13 Richard Stallman <rms@gnu.org>
2482
2483 * src/version.c: New file.
2484
24851993-03-25 Richard Stallman <rms@gnu.org>
2486
2487 * src/output.c: entered into RCS
2488
24891992-09-25 Richard Stallman <rms@gnu.org>
2490
2491 * configure.bat: entered into RCS
2492
24931992-06-22 Richard Stallman <rms@gnu.org>
2494
2495 * src/vmsgetargs.c: entered into RCS
2496
24971992-06-22 Richard Stallman <rms@gnu.org>
2498
2499 * doc/bison.rnh: entered into RCS
2500
25011992-04-20 David J. MacKenzie <djm@gnu.org>
2502
2503 * README: entered into RCS
2504
25051992-01-22 Richard Stallman <rms@gnu.org>
2506
2507 * src/machine.h: entered into RCS
2508
25091991-12-21 Richard Stallman <rms@gnu.org>
2510
2511 * src/lalr.c, src/closure.c:
2512 entered into RCS
2513
25141991-12-20 Richard Stallman <rms@gnu.org>
2515
2516 * src/state.h: entered into RCS
2517
25181991-12-18 Richard Stallman <rms@gnu.org>
2519
2520 * src/print.c, src/nullable.c, src/derives.c:
2521 entered into RCS
2522
25231991-11-03 David J. MacKenzie <djm@gnu.org>
2524
2525 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
2526 entered into RCS
2527
25281988-09-09 Richard Stallman <rms@gnu.org>
2529
2530 * src/bison.hairy: entered into RCS
2531
25321987-12-16 Richard Stallman <rms@gnu.org>
2533
2534 * REFERENCES: entered into RCS