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