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