1 2001-09-20 Pascal Bart <pascal.bart@epita.fr>
3 * src/options.c (symtab.h): Include it, need by lex.h.
5 2001-09-20 Pascal Bart <pascal.bart@epita.fr>
7 * src/lex.c (parse_percent_token): Change type of variable `tx', which
8 is now an option_table_struct*.
9 (option_strcmp): New function option_strcmp.
10 (parse_percent_token): Call option_strcmp.
11 * src/getargs.c (xalloc.h, options.h): Include it.
12 (getargs): Call create_long_option_table.
13 (getargs): Free longopts at the end of the function.
14 (shortopts): Move in options.c.
15 * src/options.c (create_long_option_table): New function. Convert
16 information from option_table to option structure.
17 * src/reader.c (options.h): Include it.
19 * src/Makefile.am: Adjust.
20 * src/options.c (option_table): Create from longopts and percent_table.
21 * src/getargs.c (longopts): Delete.
22 * src/lex.c (struct percent_table_struct): Delete.
23 (percent_table): Delete.
24 (options.h): Include it.
25 * src/options.c: Create.
26 * src/options.h: Create.
27 Declare enum opt_access_e.
28 Define struct option_table_struct.
30 2001-09-20 Marc Autret <autret_m@epita.fr>
32 * doc/bison.texinfo: Adjust terminologies about prologue and epilogue
35 2001-09-19 Pascal Bart <pascal.bart@epita.fr>
37 * src/bison.simple: s/%%filename/%%skeleton.
38 * src/muscle_tab.c (getargs.h): Include it.
39 (muscle_init): Insert new muscle skeleton.
41 2001-09-18 Pascal Bart <pascal.bart@epita.fr>
43 * src/output.c (output_parser): Delete unused variable actions_dumped.
45 2001-09-07 Pascal Bart <pascal.bart@epita.fr>
47 * src/output.c (output): Delete call to reader_output_yylsp.
48 * src/reader.c (reader): Likewise.
49 * src/reader.h: Delete declaration of reader_output_yylsp.
51 2001-09-02 Marc Autret <autret_m@epita.fr>
53 * src/reader.c: Include muscle_tab.h.
54 (parse_union_decl): Update.
55 (parse_macro_decl): Rename parse_muscle_decl.
56 Update to use renamed functions and variable.
57 (read_declarations, copy_action, read_additionnal_code, : Updated
58 with correct variables and functions names.
59 (packsymbols, reader): Likewise.
61 * src/reader.h (muscle_obstack): Extern declaration update.
63 * src/output.c: Include muscle_tab.h
64 In all functions using macro_insert, change by using muscle_insert ().
65 (macro_obstack): Rename muscle_obstack.
66 Echo modifications in the whole file.
67 (MACRO_INSERT_INT): Rename MUSCLE_INSERT_INT.
68 (MACRO_INSERT_STRING): Rename MUSCLE_INSERT_STRING.
69 (MACRO_INSERT_PREFIX): Rename MUSCLE_INSERT_PREFIX.
71 * src/muscle_tab.h: Update double inclusion macros.
72 (macro_entry_s): Rename muscle_entry_s.
75 * src/muscle_tab.c: Include muscle_tab.h.
76 Rename macro_tabble to muscle_table.
77 (mhash1, mhash2, mcmp): Use muscle_entry.
78 (macro_init): Rename muscle_init. Update.
79 (macro_insert): Rename muscle_insert. Update.
80 (macro_find): Rename muscle_find. Update.
82 * src/main.c: Include muscle_tab.h.
83 (main): Call muscle_init ().
84 * src/Makefile.am (bison_SOURCES): Echo modifications.
86 2001-09-02 Marc Autret <autret_m@epita.fr>
88 Now the files macro_tab.[ch] are named muscle_tab.[ch].
90 * src/muscle_tab.c, src/muscle_tab.h: Add files.
92 2001-09-02 Marc Autret <autret_m@epita.fr>
94 * src/macrotab.c, src/macrotab.h: Remove.
96 2001-09-01 Pascal Bart <pascal.bart@epita.fr>
98 * src/reader.c (copy_guard): Use muscle to specify the `#line'
101 2001-09-01 Marc Autret <autret_m@epita.fr>
103 * tests/calc.at (exp): Now, YYERROR_VERBOSE need to be set
104 to an explicit value to activate the feature. We do it here.
106 2001-08-31 Pascal Bart <pascal.bart@epita.fr>
108 * src/output.c (prepare): Delete the `filename' muscule insertion.
109 * src/reader.c (copy_action): Use `filename' muscule with `#line'.
110 (parse_union_decl): Likewise.
111 * src/macrotab.c (macro_init): Initialize filename by infile.
113 2001-08-31 Marc Autret <autret_m@epita.fr>
115 * src/bison.simple (YYLSP_NEEDED): New definition.
116 * src/output.c (prepare): Add macro insertion of `locations_flag'
118 2001-08-31 Pascal Bart <pascal.bart@epita.fr>
120 * src/output.c (prepare): Delete insertion of previous muscles,
121 and insert the `prefix' muscles.
122 * src/macrotab.c (macro_init): Likewise.
123 (macro_init): Initialization prefix directive by `yy'.
124 * src/bison.simple: Substitute all %%yylex, %%yychar, %%yylval,
125 %%yydebug, %%yyerror, %%yynerrs and %%yyparse by yylex, yychar,
126 yylval, yydebug, yyerror, yynerrs and yyparse.
127 New directive `#define' to substitute yydebug, ... with option
130 2001-08-31 Pascal Bart <pascal.bart@epita.fr>
132 * src/main.c (main): Standardize.
133 * src/output.c (output_table_data, output_parser): Likewise.
134 * src/macrotab.h, src/macrotab.c, src/bison.simple: Likewise.
136 2001-08-31 Pascal Bart <pascal.bart@epita.fr>, Marc Autret <autret_m@epita.fr>
138 * src/reader.c (read_additionnal_code): Rename %%user_code to
140 * src/output.c (output): Rename %%declarations to %%prologue.
141 * src/bison.simple: Echo modifications.
143 2001-08-31 Marc Autret <autret_m@epita.fr>
145 * src/reader.c (readgram): CleanUp.
146 (output_token_defines): Likewise.
147 (packsymbols): Likewise.
149 * src/output.c (output): CPP-out useless code.
151 2001-08-31 Pascal Bart <pascal.bart@epita.fr>
153 * src/reader.c (reader): Delete obsolete call to function
154 output_trailers and output_headers.
155 * src/output.h: Remove obsolete functions prototypes of output_headers
158 2001-08-30 Pascal Bart <pascal.bart@epita.fr>
160 * src/main.c: Include macrotab.h.
161 * src/macrotab.h (macro_entry_s): Constify fields.
162 Adjust functions prototypes.
163 * src/macrotab.c (macro_insert): Constify key and value.
164 (macro_find): Constify key.
165 (macro_insert): Include 'xalloc.h'
166 (macro_insert): Use XMALLOC.
167 (macro_find): Constify return value.
168 * src/output.c (output_table_data): Rename table to table_data.
169 (output_parser): Constify macro_key, macro_value.
171 2001-08-30 Marc Autret <autret_m@epita.fr>
173 * src/reader.c (parse_skel_decl): New.
174 (read_declarations): Add case `tok_skel', call parse_skel_decl ().
175 * src/lex.h (token_t): New token `tok_skel'.
176 * src/lex.c (percent_table): Add skeleton option entry.
179 2001-08-29 Marc Autret <autret_m@epita.fr>
181 * src/bison.simple: Add %%user_code directive at the end.
182 * src/reader.c (read_additionnal_code): New.
184 * src/output.c (output_program): Remove.
187 2001-08-28 Marc Autret <autret_m@epita.fr>
189 * src/output.c (output_actions): Clean up.
190 (output_gram): CPP-out useless code.
191 * src/reader.c (reader): Clean up, CPP-out useless code.
193 2001-08-28 Pascal Bart <pascal.bart@epita.fr>
195 * src/output.c (output): Copy attrs_obstack in the '%%definitions'
197 * src/bison.simple: Add `%%definitions'.
199 2001-08-28 Marc Autret <autret_m@epita.fr>
201 * config/depcomp: New file.
203 2001-08-27 Paul Eggert <eggert@twinsun.com>
205 * src/bison.simple (yyparse): Don't take the address of an
206 item before the start of an array, as that doesn't conform to
209 2001-08-27 Robert Anisko <robert.anisko@epita.fr>
211 * src/output.c (output): Remove the initialization of the macro
212 obstack. It was done too late here.
214 * src/reader.c (parse_macro_decl): Fix. Use of the macro obstack was
216 (reader): Initialize the macro obstack here, since we need it to grow
217 '%define' directives.
219 * src/reader.h: Declare the macro obstack as extern.
221 2001-08-27 Robert Anisko <robert.anisko@epita.fr>
223 * src/output.c (output_parser): Fix. Store single '%' characters in
224 the output obstack instead of throwing them away.
226 2001-08-27 Akim Demaille <akim@epita.fr>
228 * Makefile.am (AUTOMAKE_OPTIONS): 1.5.
230 2001-08-25 Robert Anisko <robert.anisko@epita.fr>
232 * lib/Makefile.am: Adjust.
234 2001-08-25 Robert Anisko <robert.anisko@epita.fr>
236 * src/bison.simple: Update and add '%%' directives.
238 2001-08-25 Robert Anisko <robert.anisko@epita.fr>
240 * src/reader.c (reader): Remove calls to 'output_headers' and
241 'output_trailers'. Remove some C output.
242 (readgram): Disable a piece of code that was writing a default
243 definition for 'YYSTYPE'.
244 (reader_output_yylsp): Remove.
245 (packsymbols): Output token defintions to a macro.
246 (copy_definition): Disable C output.
248 * src/reader.c (parse_macro_decl): New function used to parse macro
250 (copy_string2): Put the body of copy_string into this new function.
251 Add a parameter to let the caller choose whether he wants to copy the
252 string delimiters or not.
253 (copy_string): Be a simple call to copy_string2 with the last argument
255 (read_declarations): Add case for macro definition.
256 (copy_identifier): New.
257 (parse_macro_decl): Read macro identifiers using copy_identifier
260 2001-08-25 Robert Anisko <robert.anisko@epita.fr>
262 * src/output.c (prepare): Add prefixed names.
263 (output_parser): Output semantic actions.
264 (output_parser): Fix bug on '%%line' directives.
266 * src/output.c (output_headers): Remove. The C code printed by this
267 function should now be in the skeletons.
268 (output_trailers): Remove.
269 (output): Disable call to 'reader_output_yylsp'.
270 (output_rule_data): Do not output tables to the table obstack.
272 * src/output.c: Remove some C dedicated output.
273 Improve the use of macro and output obstacks.
274 (output_defines): Remove.
276 * src/output.c (output_token_translations): Associate 'translate'
277 table with a macro. No output to the table obstack.
278 (output_gram): Same for 'rhs' and 'prhs'.
279 (output_stos): Same for 'stos'.
280 (output_rule_data): Same for 'r1' and 'r2'.
281 (token_actions): Same for 'defact'.
282 (goto_actions): Same for 'defgoto'.
283 (output_base): Same for 'pact' and 'pgoto'.
284 (output_table): Same for 'table'.
285 (output_check): Same for 'check'.
287 * src/output.c (output_table_data): New function.
288 (output_short_table): Remove.
289 (output_short_or_char_table): Remove.
291 * src/output.c (output_parser): Replace most of the skeleton copy code
292 with something new. Skeletons are now processed character by character
293 rather than line by line, and Bison looks for '%%' macros. This is the
294 first step in making Bison's output process (a lot) more flexible.
295 (output_parser): Use the macro table.
297 2001-08-25 Robert Anisko <robert.anisko@epita.fr>
299 * src/main.c (main): Initialize the macro table.
301 2001-08-25 Robert Anisko <robert.anisko@epita.fr>
303 * src/lex.c (percent_table): Add tok_define.
304 * src/lex.h: Add tok_define.
306 2001-08-25 Robert Anisko <robert.anisko@epita.fr>
308 * src/macrotab.c: New file.
309 * src/macrotab.h: New file.
310 * src/Makefile.am: Update.
312 2001-08-25 Robert Anisko <robert.anisko@epita.fr>
314 * lib/hash.c: New file.
315 * lib/hash.h: New file.
316 * lib/Makefile.am: Update.
318 2001-08-15 Akim Demaille <akim@epita.fr>
322 2001-08-15 Marc Autret <autret_m@epita.fr>
324 * src/reader.c (readgram): Indent output macro YYSTYPE.
325 (packsymbols): Likewise.
326 (output_token_defines): Likewise.
327 * src/files.c: Standardize.
328 (compute_header_macro): New.
329 (defines_obstack_save): New. Use compute_header_macro.
330 (output_files): Update. Use defines_obstack_save.
332 2001-08-15 Akim Demaille <akim@epita.fr>
334 * doc/bison.texinfo (Table of Symbols): Document
337 2001-08-15 Akim Demaille <akim@epita.fr>
339 * missing: Update from CVS Automake.
340 * config/config.guess, config/config.sub, config/texinfo.tex:
343 2001-08-15 Akim Demaille <akim@epita.fr>
345 * Makefile.maint: Sync with CVS Autoconf.
347 2001-08-14 Pascal Bart <pascal.bart@epita.fr>
349 * doc/bison.texinfo: Include GNU Free Documentation License from
351 * doc/fdl.texi: Add to package.
353 2001-08-14 Marc Autret <autret_m@epita.fr>
355 Turn on %{source,header}_extension features.
357 * src/lex.c (percent_table): Un-CPP out header_extension and
359 * src/files.c (compute_exts_from_gf): Compare pointers with NULL.
360 (compute_exts_from_src): Remove conditions. It restores priorities
363 2001-08-14 Marc Autret <autret_m@epita.fr>
365 * src/files.c (compute_base_names): Add extensions computing when
366 `--file-prefix' used.
367 Standardize function calls.
369 2001-08-13 Marc Autret <autret_m@epita.fr>
371 * src/bison.simple (YYSTACK_USE_ALLOCA): Changed to allow users
372 defining it (defined but null disables alloca).
374 2001-08-13 Marc Autret <autret_m@epita.fr>
376 * src/bison.simple (_yy_memcpy): CPP reformat.
378 2001-08-13 Pascal Bart <pascal.bart@epita.fr>
380 * tests/atconfig.in (CPPFLAGS): Fix.
382 2001-08-10 Pascal Bart <pascal.bart@epita.fr>
384 * doc/bison.texinfo: Include GNU General Public License from
386 * doc/gpl.texi: Add to package.
388 2001-08-10 Marc Autret <autret_m@epita.fr>
390 * src/print_graph.h: Fix.
391 * src/reader.c (read_declarations): Use parse_header_extension_decl ().
393 2001-08-10 Akim Demaille <akim@epita.fr>
395 * src/system.h: Provide default declarations for stpcpy, strndup,
398 2001-08-10 Robert Anisko <anisko_r@epita.fr>
400 * doc/bison.texinfo (Locations): Update @$ stuff.
402 2001-08-09 Robert Anisko <anisko_r@epita.fr>
404 * src/bison.simple (YYLLOC_DEFAULT): Update.
407 2001-08-08 Marc Autret <autret_m@epita.fr>
409 * doc/bison.texinfo: Change @samp{$<@dots{}>} to
410 @samp{$<@dots{}>@var{n}} in Section Actions in Mid-Rule.
411 Reported by Fabrice Bauzac.
413 2001-08-08 Marc Autret <autret_m@epita.fr>
415 * src/vcg_default.h: Use NULL instead of 0 to initialize pointers.
416 * src/vcg.c (output_node): Fix.
417 * src/vcg.h: Cleanup.
418 * src/print_graph.c: Add comments.
419 (node_output_size): New global variable. Simplify the formatting of
420 the VCG graph output.
421 (print_actions): Unused code is now used. It notifies the final state
422 and no action states in the VCG graph. It also give the reduce actions.
423 The `shift and goto' edges are red and the `go to state' edges are
425 Get the current node name and node_obstack by argument.
426 (node_obstack): New variable.
427 (print_state): Manage node_obstack.
428 (print_core): Use node_obstack given by argument.
429 A node is not only computed here but in print_actions also.
430 (print_graph): CPP out useless code instead of commenting it.
432 2001-08-07 Pascal Bart <pascal.bart@epita.fr>
434 * tests/atconfig.in (CPPFLAGS): Fix.
436 2001-08-07 Akim Demaille <akim@epita.fr>
438 * src/print_graph.c (quote): New.
439 (print_core): Use it.
441 2001-08-06 Akim Demaille <akim@epita.fr>, Marc Autret <autret_m@epita.fr>
443 * src/vcg.c (complain.h): Include it.
444 Unepitaize `return' invocations.
445 [NDEBUG] (main): Remove.
446 * src/vcg.h (node_t, edge_t, graph_t): Constify the char * members.
447 * src/files.c (open_files): Initialize graph_obstack.
448 * src/print_graph.c (print_actions): CPP out useless code.
449 (print_core): Don't output the last `\n' in labels.
451 * src/files.c (output_files): Output the VCG file.
452 * src/main.c (main): Invoke print_graph ();
454 2001-08-06 Marc Autret <autret_m@epita.fr>
456 Automaton VCG graph output.
457 Using option ``-g'' or long option ``--graph'', you can generate
458 a gram_filename.vcg file containing a VCG description of the LALR (1)
459 automaton of your grammar.
461 * src/main.c: Call to print_graph() function.
462 * src/getargs.h: Update.
463 * src/getargs.c (options): Update to catch `-g' and `--graph' options.
464 (graph_flag): New flag.
466 (getargs): Add case `g'.
467 * src/files.c (graph_obstack): New obstack struct.
468 (open_files): Initialize new obstack.
469 (output_files): Saves graph_obstack if required.
470 * src/files.h (graph_obstack): New extern declaration.
471 * src/Makefile.am: Add new source files.
473 2001-08-06 Marc Autret <autret_m@epita.fr>
475 * src/print_graph.c, src/print_graph.h (graph): New.
476 * src/vcg.h: New file.
477 * src/vcg.c: New file, VCG graph handling.
479 2001-08-06 Marc Autret <autret_m@epita.fr>
481 Add of %source_extension and %header_extension which specify
482 the source or/and the header output file extension.
484 * src/files.c (compute_base_names): Remove initialisation of
485 src_extension and header_extension.
486 (compute_exts_from_gf): Update.
487 (compute_exts_from_src): Update.
488 (output_files): Update.
489 * src/reader.c (parse_header_extension_decl): New.
490 (parse_source_extension_decl): New.
491 (read_declarations): New case statements for the new tokens.
492 * src/lex.c (percent_table): Add entries for %source_extension
493 and %header_extension.
494 * src/lex.h (token_e): New tokens tok_hdrext and tok_srcext.
496 2001-08-06 Marc Autret <autret_m@epita.fr>
498 * configure.in: Bump to 1.28c.
499 * doc/bison.texinfo: Texinfo thingies.
501 2001-08-04 Pascal Bart <pascal.bart@epita.fr>
503 * tests/atconfig.in (CPPFLAGS): Add.
504 * tests/calc.at (AT_CHECK): Use CPPFLAGS.
506 2001-08-03 Akim Demaille <akim@epita.fr>
510 2001-08-03 Akim Demaille <akim@epita.fr>
512 * tests/Makefile.am (check-local): Ship testsuite.
513 * tests/calc.at (_AT_DATA_CALC_Y): Prototype all the functions.
516 2001-08-03 Akim Demaille <akim@epita.fr>
518 * configure.in: Try using -Wformat when compiling.
520 2001-08-03 Akim Demaille <akim@epita.fr>
522 * configure.in: Bump to 1.28b.
524 2001-08-03 Akim Demaille <akim@epita.fr>
526 * src/complain.c: Adjust strerror_r portability issues.
528 2001-08-03 Akim Demaille <akim@epita.fr>
532 2001-08-03 Akim Demaille <akim@epita.fr>
534 * src/getargs.c, src/getarg.h (skeleton)): Constify.
535 * src/lex.c (literalchar): Avoid name clashes on `buf'.
536 * src/getargs.c: Include complain.h.
537 * src/files.c, src/files.h (skeleton_find): Avoid name clashes.
538 * lib/quotearg.c, lib/quotearg.h: Update from fileutils 4.1.
540 2001-08-03 Akim Demaille <akim@epita.fr>
542 * src/reader.c (readgram): Display hidden chars in error messages.
544 2001-08-03 Akim Demaille <akim@epita.fr>
546 Update to gettext 0.10.39.
548 2001-08-03 Akim Demaille <akim@epita.fr>
552 2001-08-01 Marc Autret <autret_m@epita.fr>
554 * doc/bison.texinfo: Update.
555 * doc/bison.1 (mandoc): Update.
556 * src/system.h (EXT_GUARD_C, EXT_STYPE_H): Remove .c and .h.
557 * src/files.c: Support output files extensions computing.
558 (src_extension): New static variable.
559 (header_extension): New static variable.
561 (get_extension_index): New function, gets the index of an extension
562 filename in a string.
563 (compute_exts_from_gf): New function, computes extensions from the
564 grammar file extension.
565 (compute_exts_from_src): New functions, computes extensions from the
566 C source file extension, file given by ``-o'' option.
567 (compute_base_names): Update.
568 (output_files): Update.
570 2001-08-01 Robert Anisko <anisko_r@epita.fr>
572 * doc/bison.texi: Document @$.
573 (Locations): New section.
575 2001-07-18 Akim Demaille <akim@epita.fr>
577 * Makefile.maint, GNUmakefile: New, from Autoconf 2.52.
578 * config/prev-version.txt, config/move-if-change: New.
579 * Makefile.am: Adjust.
581 2001-07-08 Pascal Bart <pascal.bart@epita.fr>
583 * src/bison.simple (yyparse): Suppress warning `comparaison
584 between signed and unsigned'.
586 2001-07-05 Pascal Bart <pascal.bart@epita.fr>
588 * src/getargs.h (raw_flag): Remove.
589 * src/getargs.c: Die on `-r'/`--raw'.
590 * src/lex.c (parse_percent_token): Die on `%raw'.
591 * src/reader.c (output_token_defines): Suppress call to `raw_flag'.
592 * tests/calc.at: Suppress test with option `--raw'.
594 2001-07-14 Akim Demaille <akim@epita.fr>
597 * configure.in: Require Autoconf 2.50.
598 Update to gettext 0.10.38.
600 2001-03-16 Akim Demaille <akim@epita.fr>
602 * doc/bison.texinfo: ANSIfy the examples.
604 2001-03-16 Akim Demaille <akim@epita.fr>
606 * getargs.c (skeleton): New variable.
607 (longopts): --skeleton is a new option.
608 (shortopts, getargs): -S is a new option.
609 * getargs.h: Declare skeleton.
610 * output.c (output_parser): Use it.
612 2001-03-16 Akim Demaille <akim@epita.fr>
614 * m4/strerror_r.m4: New.
615 * m4/error.m4: Run AC_FUNC_STRERROR_R.
616 * lib/error.h, lib/error.c: Update.
618 2001-03-16 Akim Demaille <akim@epita.fr>
620 * src/getargs.c (longopts): Clean up.
622 2001-02-21 Akim Demaille <akim@epita.fr>
624 * src/reader.c (gensym): `gensym_count' is your own.
625 Use a static buf to create the symbol name, as token_buffer is no
628 2001-02-08 Akim Demaille <akim@epita.fr>
630 * src/conflicts.c (conflict_report): Be sure not to append to res
631 between two calls, which could happen if both first sprintf were
632 skipped, but not the first cp += strlen.
634 2001-02-08 Akim Demaille <akim@epita.fr>
636 * lib/memchr.c, lib/stpcpy.c, lib/strndup.c, lib/strnlen.c:
637 New, from fileutils 4.0.37.
638 * configure.in: Require Autoconf 2.49c. I took some time before
639 making this decision. This is the only way out for portability
640 issues in Bison, it would mean way too much duplicate effort to
641 import in Bison features implemented in 2.49c since 2.13.
642 AC_REPLACE_FUNCS and AC_CHECK_DECLS the functions above.
644 2001-02-02 Akim Demaille <akim@epita.fr>
646 * lib/malloc.c, lib/realloc.c: New, from the fileutils 4.0.37.
647 * lib/xalloc.h, lib/xmalloc.c: Update.
649 2001-01-19 Akim Demaille <akim@epita.fr>
651 Get rid of the ad hoc handling of token_buffer in the scanner: use
654 * src/lex.c (token_obstack): New.
655 (init_lex): Initialize it. No longer call...
656 (grow_token_buffer): this. Remove it.
657 Adjust all the places which used it to use the obstack.
659 2001-01-19 Akim Demaille <akim@epita.fr>
661 * src/lex.h: Rename all the tokens:
662 s/\bENDFILE\b/tok_eof/g;
663 s/\bIDENTIFIER\b/tok_identifier/g;
665 Let them be enums, not #define, to ease debugging.
668 2001-01-18 Akim Demaille <akim@epita.fr>
670 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
671 * src/lex.c (maxtoken, grow_token_buffer): Static.
673 2001-01-18 Akim Demaille <akim@epita.fr>
675 Since we now use obstacks, more % directives can be enabled.
677 * src/lex.c (percent_table): Also accept `%yacc',
678 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
680 Handle the actions for `%semantic_parser' and `%pure_parser' here,
681 instead of returning a token.
682 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
683 * src/reader.c (read_declarations): Adjust.
684 * src/files.c (open_files): Don't call `compute_base_names', don't
685 compute `attrsfile' since they depend upon data which might be
686 *in* the input file now.
687 (output_files): Do it here.
688 * src/output.c (output_headers): Document the fact that this patch
689 introduces a guaranteed SEGV for semantic parsers.
690 * doc/bison.texinfo: Document them.
691 * tests/suite.at: Exercise these %options.
693 2000-12-20 Akim Demaille <akim@epita.fr>
695 Also handle the output file (--verbose) with obstacks.
697 * files.c (foutput): Remove.
698 (output_obstack): New.
699 Adjust all dependencies.
700 * src/conflicts.c: Return a string.
701 * src/system.h (obstack_grow_string): Rename as...
702 (obstack_sgrow): this. Be ready to work with non literals.
703 (obstack_fgrow4): New.
705 2000-12-20 Akim Demaille <akim@epita.fr>
707 * src/files.c (open_files): Fix the computation of short_base_name
708 in the case of `-o foo.tab.c'.
710 2000-12-20 Akim Demaille <akim@epita.fr>
712 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
713 (copy_dollar): Now that everything uses obstacks, get rid of the
716 2000-12-20 Akim Demaille <akim@epita.fr>
718 * src/files.c (open_files): Actually the `.output' file is based
719 on the short_base_name, not base_name.
720 * tests/suite.at (Checking output file names): Adjust.
722 2000-12-20 Akim Demaille <akim@epita.fr>
724 * src/bison.s1: Remove, we now use directly...
725 * src/bison.simple: this.
726 * src/Makefile.am: Use pkgdata instead of data.
728 2000-12-20 Akim Demaille <akim@epita.fr>
730 * src/files.c (guard_obstack): New.
731 (open_files): Initialize it.
732 (output_files): Dump it...
733 * src/files.h: Export it.
734 * src/reader.c (copy_guard): Use it.
736 2000-12-19 Akim Demaille <akim@epita.fr>
738 * src/files.c (outfile, defsfile, actfile): Removed as global
740 (open_files): Don't compute them.
741 (output_files): Adjust.
742 (base_name, short_base_name): Be global.
745 2000-12-19 Akim Demaille <akim@epita.fr>
747 * src/files.c (strsuffix): New.
748 (stringappend): Be just like strcat but allocate.
749 (base_names): Eve out from open_files.
750 Try to simplify the rather hairy computation of base_name and
752 (open_files): Use it.
753 * tests/suite.at (Checking output file names): New test.
755 2000-12-19 Akim Demaille <akim@epita.fr>
757 * src/system.h (obstack_grow_literal_string): Rename as...
758 (obstack_grow_string): this.
759 * src/output.c (output_parser): Recognize `%% actions' instead of
761 * src/bison.s1: s/$/%% actions/.
762 * src/bison.hairy: Likewise.
764 2000-12-19 Akim Demaille <akim@epita.fr>
766 * src/output.c (output_parser): Compute the `#line' lines when
768 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
769 Suggested by Hans Aberg.
771 2000-12-19 Akim Demaille <akim@epita.fr>
773 Let the handling of the skeleton files be local to the procedures
776 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
778 (fparser, open_extra_files): Remove.
779 (open_files, output_files): Don't take care of fparser.
780 * src/files.h: Adjust.
781 * src/output.c (output_parser): Open and close the file to the
783 * src/reader.c (read_declarations): When %semantic_parser, open
786 2000-12-19 Akim Demaille <akim@epita.fr>
788 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
789 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
791 2000-12-19 Akim Demaille <akim@epita.fr>
793 * src/files.c (open_files): Yipee! We no longer need all the code
794 looking for `/tmp' since we have no tmp file.
796 2000-12-19 Akim Demaille <akim@epita.fr>
798 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
800 * src/files.c (open_files): Less dependency on MSDOS etc.
802 2000-12-14 Akim Demaille <akim@epita.fr>
804 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
805 Provide a default definition.
806 Use it when executing the default @ action.
807 * src/reader.c (reader_output_yylsp): No longer include
808 `timestamp' and `text' in the default YYLTYPE.
810 2000-12-12 Akim Demaille <akim@epita.fr>
812 * src/reader.c (copy_definition, parse_union_decl, copy_action)
813 (copy_guard): Quote the file names.
814 Reported by Laurent Mascherpa.
816 2000-12-12 Akim Demaille <akim@epita.fr>
818 * src/output.c (output_headers, output_program, output): Be sure
819 to escape special characters when outputting filenames.
820 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
821 (output_headers): Don't depend on them, Use ACTSTR.
823 2000-11-17 Akim Demaille <akim@epita.fr>
825 * lib/obstack.h: Formatting changes.
826 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
827 prevents type checking.
828 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
829 cast the value to (void *): assigning a `foo *' to a `void *'
831 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
832 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
835 2000-11-17 Akim Demaille <akim@epita.fr>
837 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
839 (suite.m4, regression.m4, calc.m4): these.
840 * tests/atgeneral.m4: Update from CVS Autoconf.
842 2000-11-17 Akim Demaille <akim@epita.fr>
844 * tests/regression.m4 (%union and --defines): New test,
845 demonstrating a current bug in the obstack implementation.
847 2000-11-17 Akim Demaille <akim@epita.fr>
849 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
851 Use them to declare the variables which are global or local to
854 2000-11-17 Akim Demaille <akim@epita.fr>
856 * acconfig.h: Remove, no longer used.
858 2000-11-07 Akim Demaille <akim@epita.fr>
860 * src: s/Copyright (C)/Copyright/g.
862 2000-11-07 Akim Demaille <akim@epita.fr>
864 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
866 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
868 2000-11-07 Akim Demaille <akim@epita.fr>
870 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
871 Merge in a single CPP if/else.
873 2000-11-07 Akim Demaille <akim@epita.fr>
875 * src/output.c (output): Remove useless variables.
876 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
877 argument `data' for consistency with the prototypes.
879 (obstack_copy, obstack_copy0): Rename the second argument as
880 `address' for consistency. Qualify it `const'.
881 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
882 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
883 `const' their input argument (`data' or `address').
884 Adjust the corresponding macros to include `const' in casts.
886 2000-11-03 Akim Demaille <akim@epita.fr>
888 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
889 s/PFILE1/BISON_HAIRY/.
892 2000-11-03 Akim Demaille <akim@epita.fr>
894 For some reason, this was not applied.
896 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
897 `unlink': it's no longer used.
899 2000-11-03 Akim Demaille <akim@epita.fr>
901 * src/files.c (skeleton_find): New function, eved out of...
902 (open_files, open_extra_files): here.
904 2000-11-03 Akim Demaille <akim@epita.fr>
908 * src/files.c (obstack_save): New function.
910 (output_files): this.
912 * src/main.c (main): Don't use `atexit' to register `done', since
913 it no longer has to remove tmp files, just call `output_files'
914 when there are no errors.
916 2000-11-02 Akim Demaille <akim@epita.fr>
918 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
919 `unlink': it's no longer used.
920 * src/files.h: Formatting changes.
922 2000-11-02 Akim Demaille <akim@epita.fr>
924 Remove the last uses of mktemp and unlink/delete.
926 * src/files.c (fdefines, ftable): Removed.
927 (defines_ostack, table_obstack): New.
928 Adjust dependencies of the former into uses of the latter.
929 * src/output.c (output_short_or_char_table, output_short_table):
930 Convert to using obstacks.
931 * src/reader.c (copy_comment2): Accept one FILE * and two
933 (output_token_defines, reader_output_yylsp): Use obstacks.
934 * src/system.h (obstack_fgrow3): New.
936 2000-11-01 Akim Demaille <akim@epita.fr>
938 Change each use of `fattrs' into a use of `attrs_obstack'.
940 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
941 * src/files.c (fattrs): Remove.
942 (attrs_obstack): New.
943 Adjust all dependencies.
944 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
946 2000-11-01 Akim Demaille <akim@epita.fr>
949 Change each use of `faction' into a use of `action_obstack'.
951 * lib/obstack.h, lib/obstack.c: New files.
952 * src/files.c (faction): Remove.
953 (action_obstack): New.
954 Adjust all dependencies.
956 2000-10-20 Akim Demaille <akim@epita.fr>
958 * lib/quote.h (PARAMS): New macro. Use it.
960 2000-10-16 Akim Demaille <akim@epita.fr>
962 * src/output.c (output_short_or_char_table): New function.
963 (output_short_table, output_token_translations): Use it.
964 (goto_actions): Use output_short_table.
966 2000-10-16 Akim Demaille <akim@epita.fr>
968 * src/symtab.c (bucket_new): New function.
971 * src/output.c (output_short_table): New argument to display the
972 comment associated with the table.
974 (output_gram): Use it.
975 (output_rule_data): Nicer output layout for YYTNAME.
977 2000-10-16 Akim Demaille <akim@epita.fr>
979 * src/lex.c (read_typename): New function.
981 * src/reader.c (copy_dollar): Likewise.
983 2000-10-16 Akim Demaille <akim@epita.fr>
985 * src/reader.c (copy_comment2): Expect the input stream to be on
986 the `/' which is suspected to open a comment, instead of being
987 called after `//' or `/*' was read.
988 (copy_comment, copy_definition, parse_union_decl, copy_action)
989 (copy_guard): Adjust.
991 2000-10-16 Akim Demaille <akim@epita.fr>
993 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
994 `read_signed_integer'.
996 2000-10-16 Akim Demaille <akim@epita.fr>
998 * src/reader.c (copy_dollar): New function.
999 (copy_guard, copy_action): Use it.
1001 2000-10-16 Akim Demaille <akim@epita.fr>
1003 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
1004 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
1005 New files, from Fileutils 4.0.27.
1006 * src/main.c (printable_version): Remove.
1007 * src/lex.c, src/reader.c: Use `quote'.
1009 2000-10-04 Akim Demaille <akim@epita.fr>
1011 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
1013 2000-10-04 Akim Demaille <akim@epita.fr>
1015 * doc/bison.texinfo: Various typos spotted by Neil Booth.
1017 2000-10-04 Akim Demaille <akim@epita.fr>
1019 When a literal string is used to define two different tokens,
1020 `bison -v' segfaults.
1021 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
1023 * tests/regression.m4: New file.
1024 Include the core of the sample provided by Piotr Gackiewicz.
1025 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
1028 2000-10-04 Akim Demaille <akim@epita.fr>
1030 * src/reader.c (parse_expect_decl): Keep `count' within the size
1034 2000-10-02 Paul Eggert <eggert@twinsun.com>
1036 * bison.s1 (yyparse): Assign the default value
1037 unconditionally, to avoid a GCC warning and make the parser a
1040 2000-10-02 Akim Demaille <akim@epita.fr>
1042 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
1045 2000-10-02 Akim Demaille <akim@epita.fr>
1047 * src/derives.c, src/print.c, src/reduce.c: To ease the
1048 translation, move some `\n' out of the translated strings.
1050 2000-10-02 Akim Demaille <akim@epita.fr>
1052 The location tracking mechanism is precious for parse error
1053 messages. Nevertheless, it is enabled only when `@n' is used in
1054 the grammar, which is a different issue (you can use it in error
1055 message, but not in the grammar per se). Therefore, there should
1056 be another means to enable it.
1058 * src/getargs.c (getargs): Support `--locations'.
1060 * src/getargs.h (locationsflag): Export it.
1061 * src/lex.c (percent_table): Support `%locations'.
1062 * src/reader.c (yylsp_needed): Remove this variable, now replaced
1063 with `locationsflag'.
1064 * doc/bison.texinfo: Document `--locations' and `%locations'.
1066 * tests/calc.m4: Test it.
1068 For regularity of the names, replace each
1069 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
1070 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
1071 In addition replace each `flag' with `_flag'.
1073 2000-10-02 Akim Demaille <akim@epita.fr>
1075 Also test parse error messages, including with YYERROR_VERBOSE.
1077 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
1079 Use it to check the computations.
1080 Use it to check `nonassoc' is honored.
1081 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
1082 `--yyerror-verbose'.
1083 (_AT_CHECK_CALC): Adjust to this option.
1084 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
1086 2000-10-02 Akim Demaille <akim@epita.fr>
1088 Test also `--verbose', `--defines' and `--name-prefix'. Testing
1089 the latter demonstrates a flaw in the handling of non debugging
1090 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
1091 was used in order to simplify:
1107 unfortunately this leads to a CPP conflict when
1108 `--name-prefix=foo' is used since it produces `#define yydebug
1111 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
1112 (YYDPRINTF): New macro.
1114 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
1116 Also test `--verbose', `--defines' and `--name-prefix'.
1118 2000-10-02 Akim Demaille <akim@epita.fr>
1120 Improve the readability of the produced parsers.
1122 * src/bison.s1: Formatting changes.
1123 Improve the comment related to the `$' mark.
1124 (yydefault): Don't fall through to `yyresume': `goto' there.
1125 * src/output.c (output_parser): When the `$' is met, skip the end
1127 New variable, `number_of_dollar_signs', to check there's exactly
1128 one `$' in the parser skeleton.
1130 2000-10-02 Akim Demaille <akim@epita.fr>
1132 * lib/xstrdup.c: New file, from the fileutils.
1133 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
1134 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
1135 instead of strlen + xmalloc + strcpy.
1136 * src/symtab.c (copys): Remove, use xstrdup instead.
1138 2000-10-02 Akim Demaille <akim@epita.fr>
1140 * src/gram.h (associativity): New enum type which replaces the
1141 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
1142 `right_assoc', `left_assoc' and `non_assoc'.
1143 Adjust all dependencies.
1144 * src/reader.c: Formatting changes.
1145 (LTYPESTR): Don't define it, use it as a literal in
1146 `reader_output_yylsp'.
1147 * src/symtab.h (symbol_class): New enum type which replaces the
1148 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
1149 `sunknown', `stoken and `snterm'.
1151 2000-10-02 Akim Demaille <akim@epita.fr>
1153 * src/getargs.c (fixed_outfiles): Rename as...
1154 (yaccflag): for consistency and accuracy.
1155 Adjust dependencies.
1157 2000-10-02 Akim Demaille <akim@epita.fr>
1159 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
1160 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
1161 difficult and introduced a lot of core dump. It turns out that
1162 Bison used an implementation of `xmalloc' based on `calloc', and
1163 at various places it does depend upon the initialization to 0. I
1164 have not tried to isolate the pertinent places, and all the former
1165 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
1166 someone should address this issue.
1168 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
1169 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
1171 Adjust dependencies.
1172 * src/warshall.h: New file.
1175 2000-10-02 Akim Demaille <akim@epita.fr>
1177 Various anti-`extern in *.c' changes.
1179 * src/system.h: Include `assert.h'.
1181 2000-10-02 Akim Demaille <akim@epita.fr>
1183 * src/state.h (nstates, final_state, first_state, first_shift)
1184 (first_reduction): Move their exportation from here...
1185 * src/LR0.h: to here.
1186 Adjust dependencies.
1187 * src/getargs.c (statisticsflag): New variable.
1188 Add support for `--statistics'.
1189 Adjust dependencies.
1191 Remove a lot of now useless `extern' statements in most files.
1193 2000-10-02 Akim Demaille <akim@epita.fr>
1195 * src/LR0.h: New file.
1198 2000-10-02 Akim Demaille <akim@epita.fr>
1200 * src/print.h: New file.
1202 * src/print.c: Formatting and ordering changes.
1203 (verbose, terse): Replace with...
1204 (print_results): this new function.
1205 Adjust dependencies.
1207 2000-10-02 Akim Demaille <akim@epita.fr>
1209 * src/conflicts.c (conflict_report): New function.
1210 (conflict_log, verbose_conflict_log): Replace with...
1211 (print_conflicts): this function.
1212 Adjust dependencies.
1213 * src/conflicts.h: New file.
1214 Propagate its inclusion.
1216 2000-10-02 Akim Demaille <akim@epita.fr>
1218 * src/nullable.h: New file.
1219 Propagate its inclusion.
1220 * src/nullable.c: Formatting changes.
1222 2000-10-02 Akim Demaille <akim@epita.fr>
1224 * src/reduce.h: New file.
1225 Propagate its inclusion.
1226 * src/reduce.c: Topological sort and other formatting changes.
1227 (bool, TRUE, FALSE): Move their definition to...
1228 * src/system.h: here.
1230 2000-10-02 Akim Demaille <akim@epita.fr>
1232 * src/files.c: Formatting changes.
1233 (tryopen, tryclose, openfiles): Rename as...
1234 (xfopen, xfclose, open_files): this.
1235 (stringappend): static.
1236 * src/files.h: Complete the list of exported symbols.
1239 2000-10-02 Akim Demaille <akim@epita.fr>
1241 * src/reader.h: New file.
1242 Propagate its use instead of tedious list of `extern' and
1244 * src/reader.c: Formatting changes, topological sort,
1247 2000-10-02 Akim Demaille <akim@epita.fr>
1249 * src/lex.h: Prototype `lex.c' exported functions.
1250 * src/reader.c: Adjust.
1251 * src/lex.c: Formatting changes.
1252 (safegetc): Rename as...
1255 2000-10-02 Akim Demaille <akim@epita.fr>
1257 * src/lalr.h: New file.
1258 Propagate its inclusion instead of prototypes and `extern'.
1259 * src/lalr.c: Formatting changes, topological sorting etc.
1261 2000-10-02 Akim Demaille <akim@epita.fr>
1263 * src/output.c (token_actions): Introduce a temporary array,
1264 YYDEFACT, that makes it possible for this function to use
1267 2000-10-02 Akim Demaille <akim@epita.fr>
1269 `user_toknums' is output as a `short[]' in `output.c', while it is
1270 defined as a `int[]' in `reader.c'. For consistency with the
1271 other output tables, `user_toknums' is now defined as a table of
1274 * src/reader.c (user_toknums): Be a short table instead of an int
1276 Adjust dependencies.
1278 Factor the short table outputs.
1280 * src/output.c (output_short_table): New function.
1281 * src/output.c (output_gram, output_stos, output_rule_data)
1282 (output_base, output_table, output_check): Use it.
1284 2000-10-02 Akim Demaille <akim@epita.fr>
1286 * src/output.c (output): Topological sort of the functions, in
1287 order to get rid of the `static' prototypes.
1288 No longer use `register'.
1289 * src/output.h: New file.
1290 Propagate its inclusion in files explicitly prototyping functions
1293 2000-09-21 Akim Demaille <akim@epita.fr>
1295 * src/atgeneral.m4: Update from Autoconf.
1297 2000-09-21 Akim Demaille <akim@epita.fr>
1299 * src/closure.h: New file.
1300 * src/closure.c: Formatting changes, topological sort over the
1301 functions, use of closure.h.
1302 (initialize_closure, finalize_closure): Rename as...
1303 (new_closure, free_closure): these. Adjust dependencies.
1304 * src/LR0.c: Formatting changes, topological sort, use of
1306 (initialize_states): Rename as...
1308 * src/Makefile.am (noinst_HEADERS): Adjust.
1310 2000-09-20 Akim Demaille <akim@epita.fr>
1312 * src/acconfig.h: Don't protect config.h against multiple
1314 Don't define PARAMS.
1315 * src/system.h: Define PARAMS.
1316 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
1317 purpose of config.h. system.h must not try to fix wrong
1318 definitions in config.h.
1320 2000-09-20 Akim Demaille <akim@epita.fr>
1322 * src/derives.h: New file.
1323 * src/main.c, src/derives.h: Use it.
1325 * src/Makefile.am (noinst_HEADERS): Adjust.
1327 2000-09-20 Akim Demaille <akim@epita.fr>
1329 * tests/atgeneral.m4: Update from Autoconf.
1330 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
1331 (AT_CHECK_CALC): New macros.
1332 Use these macros to test bison with options `', `--raw',
1333 `--debug', `--yacc', `--yacc --debug'.
1335 2000-09-19 Akim Demaille <akim@epita.fr>
1337 * src/output.c: Formatting changes.
1338 * src/machine.h: Remove, leaving its contents in...
1339 * src/system.h: here.
1341 Adjust all dependencies on stdio.h and machine.h.
1342 * src/getargs.h: New file.
1343 Let all `extern' declarations about getargs.c be replaced with
1344 inclusion of `getargs.h'.
1345 * src/Makefile.am (noinst_HEADERS): Adjust.
1347 * tests/calc.m4 (yyin): Be initialized in main, not on the global
1349 (yyerror): Returns void, not int.
1350 * doc/bison.texinfo: Formatting changes.
1352 2000-09-19 Akim Demaille <akim@epita.fr>
1354 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
1357 2000-09-18 Akim Demaille <akim@epita.fr>
1359 * configure.in: Append WARNING_CFLAGS to CFLAGS.
1360 * src/Makefile.am (INCLUDES): Don't.
1361 Be ready to fetch headers in lib/.
1363 2000-09-18 Akim Demaille <akim@epita.fr>
1365 * doc/bison.texinfo: Update the copyright.
1366 ANSIfy and GNUify the examples.
1367 Remove the old menu.
1369 2000-09-18 Akim Demaille <akim@epita.fr>
1371 First set of tests: use the `calc' example from the documentation.
1373 * src/bison.s1 (yyparse): Condition the code using `yytname' which
1374 is defined only when YYDEBUG is.
1375 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
1376 * src/files.c (tryopen, tryclose): Formatting changes.
1377 Move to the top and be static.
1378 * src/reader.c (read_signed_integer): Likewise.
1379 * tests/calc.m4: New file.
1380 * Makefile.am, suite.m4: Adjust.
1381 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
1383 2000-09-18 Akim Demaille <akim@epita.fr>
1385 Add support for an Autotest test suite for Bison.
1387 * m4/m4.m4, m4/atconfig.m4: New files.
1388 * m4/Makefile.am (EXTRA_DIST): Adjust.
1389 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
1391 * src/getargs.c: Display a more standard --version message.
1392 * src/reader.c (reader): Formatting changes.
1393 No longer depend upon VERSION_STRING.
1394 * configure.in: No longer use `dnl'.
1395 Set up the test suite and the new directory `tests/.
1396 (VERSION_STRING): Remove.
1398 2000-04-14 Akim Demaille <akim@epita.fr>
1400 * src/reader.c (copy_comment2): New function, same as former
1401 `copy_comment', but outputs into two FILE *.
1402 (copy_comment): Use it.
1403 (parse_union_decl): Use it.
1404 (get_type, parse_start_decl): Use the same `invalid' message.
1405 (parse_start_decl, parse_union_decl): Use the same `multiple'
1407 (parse_union_decl, copy_guard, copy_action): Use the same
1408 `unmatched' message.
1409 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
1411 2000-03-31 Akim Demaille <akim@epita.fr>
1413 * src/files.c (tryopen, tryclose): Move to the top.
1416 2000-03-31 Akim Demaille <akim@epita.fr>
1418 * src/main.c (main): Don't call `done', exit does it.
1420 2000-03-31 Akim Demaille <akim@epita.fr>
1422 * allocate.c: s/return (foo)/return foo/.
1425 * output.c: Likewise.
1426 * reader.c: Likewise.
1427 * symtab.c: Likewise.
1428 * vmsgetargs.c: Likewise.
1430 2000-03-31 Akim Demaille <akim@epita.fr>
1432 Clean up the error reporting functions.
1434 * src/report.c: New file.
1435 * src/report.h: Likewise.
1436 * src/Makefile.am: Adjust.
1437 * m4/error.m4: New file.
1438 * m4/Makefile.am: Adjust.
1439 * configure.in (jm_PREREQ_ERROR): Call it.
1440 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
1442 (fatal, fatals): Remove. All callers use complain.c::fatal.
1443 (warn, warni, warns, warnss, warnss): Remove. All callers use
1444 complain.c::complain.
1445 (toomany): Remove, use fatal instead.
1446 * src/files.c (done): No argument, use complain_message_count.
1447 * src/main.c (main): Register `done' to `atexit'.
1449 * src/getargs.c (usage): More `fputs', less `fprintf'.
1451 2000-03-28 Akim Demaille <akim@epita.fr>
1453 * lib/: New directory.
1454 * Makefile.am (SUBDIRS): Adjust.
1455 * configure.in: Adjust.
1456 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
1458 * src/alloca.c: Moved to lib/.
1459 * src/getopt.c: Likewise.
1460 * src/getopt1.c: Likewise.
1461 * src/getopt.h: Likewise.
1462 * src/ansi2knr.c: Likewise.
1463 * src/ansi2knr.1: Likewise.
1464 * src/Makefile.am: Adjust.
1465 * lib/Makefile.am: New file.
1467 2000-03-28 Akim Demaille <akim@epita.fr>
1469 * src/getargs.c (usage): Refresh the help message.
1471 2000-03-17 Akim Demaille <akim@epita.fr>
1473 * src/getopt1.c: Updated from textutils 2.0e
1474 * src/getopt.c: Likewise.
1475 * src/getopt.h: Likewise.
1477 2000-03-17 Akim Demaille <akim@epita.fr>
1479 * src/Makefile.am (bison.simple): Fix the awk program: quote only
1480 the file name, not the whole `#line LINE FILE'.
1482 2000-03-17 Akim Demaille <akim@epita.fr>
1484 On syntax errors, report the token on which we choked.
1486 * src/bison.s1 (yyparse): In the label yyerrlab, when
1487 YYERROR_VERBOSE, add yychar in msg.
1489 2000-03-17 Akim Demaille <akim@epita.fr>
1491 * src/reader.c (copy_at): New function.
1492 (copy_guard): Use it.
1493 (copy_action): Use it.
1495 2000-03-17 Akim Demaille <akim@epita.fr>
1497 Be kind to translators, save some useless translations.
1499 * src/main.c (banner): New function.
1500 (fatal_banner): Use it.
1501 (warn_banner): Use it.
1503 2000-03-17 Akim Demaille <akim@epita.fr>
1505 * src/reader.c (copy_definition): Use copy_string and
1506 copy_comment. Removed now unused `match', `ended',
1508 (copy_comment, copy_string): Moved, to be visible from
1511 2000-03-17 Akim Demaille <akim@epita.fr>
1513 * src/reader.c (copy_string): Declare `static inline'. No
1514 problems with inline, since it is checked by configure.
1515 (copy_comment): Likewise.
1517 2000-03-17 Akim Demaille <akim@epita.fr>
1519 * src/reader.c (packsymbols): Formatting changes.
1521 2000-03-17 Akim Demaille <akim@epita.fr>
1523 * src/reader.c (copy_comment): New function, factored out from:
1524 (copy_action): Use it. Removed now unused `match', `ended',
1526 (copy_guard): Likewise.
1528 2000-03-17 Akim Demaille <akim@epita.fr>
1530 * src/reader.c (copy_string): New function, factored out from:
1531 (copy_action): Use it.
1532 (copy_guard): Likewise.
1534 2000-03-17 Akim Demaille <akim@epita.fr>
1536 Change the handling of @s so that they behave exactly like $s.
1537 There is now a pseudo variable @$ (readble and writable), location
1538 of the lhs of the rule (by default ranging from the location of
1539 the first symbol of the rhs, to the location of the last symbol,
1540 or, if the rhs is empty, YYLLOC).
1542 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
1544 (yyparse): When providing a default semantic action, provide a
1545 default location action.
1546 (after the $): No longer change `*YYLSP', just stack YYLOC the
1547 same way you stack YYVAL.
1548 * src/reader.c (read_declarations): Use warns.
1549 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
1550 (copy_action, case '@'): Likewise.
1551 Use a standard error message, to save useless work from
1554 2000-03-17 Akim Demaille <akim@epita.fr>
1556 * src/bison.s1: Formatting and cosmetics changes.
1557 * src/reader.c: Likewise.
1558 Update the Copyright notice.
1560 2000-03-17 Akim Demaille <akim@epita.fr>
1562 * src/bison.s1 (#line): All set to `#line' only, since the
1563 Makefile now handles them.
1565 2000-03-16 Akim Demaille <akim@epita.fr>
1567 * src/output.c (output_rule_data): Output the documentation of
1569 (Copyright notice): Update.
1572 2000-03-16 Akim Demaille <akim@epita.fr>
1574 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
1575 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
1576 One `#if YYDEBUG' remains, since it uses variables which are
1577 defined only if `YYDEBUG != 0'.
1579 2000-03-16 Akim Demaille <akim@epita.fr>
1581 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
1582 and related variables so that the similarities are highlighted.
1584 2000-03-16 Akim Demaille <akim@epita.fr>
1586 * src/bison.s1: Properly indent CPP directives.
1588 2000-03-16 Akim Demaille <akim@epita.fr>
1590 * src/bison.s1: Properly indent the `alloca' CPP section.
1592 2000-03-16 Akim Demaille <akim@epita.fr>
1594 Do not hard code values of directories in `configure.in'.
1595 Update the `configure' tool chain.
1597 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
1599 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
1600 (AC_OUTPUT): Add m4/Makefile.
1601 Bump to bison 1.28a, 1.29 has never been released.
1602 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
1603 handled via src/Makefile.am.
1604 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
1605 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
1607 * Makefile.am (SUBDIRS): Add m4.
1608 (ACLOCAL_AM_FLAGS): New variable.
1609 (AUTOMAKE_OPTIONS): Add check-news.
1610 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
1611 the proper line number and file name.
1612 (DEFS): Propagate the location of bison library files and of the
1614 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
1616 * acinclude.m4: Remove, replaced by the directory m4.
1617 * m4/Makefile.am (EXTRA_DIST): New variable.
1618 * m4/gettext.m4: New file, from the fileutils.
1619 * m4/lcmessage.m4: Likewise
1620 * m4/progtest.m4: Likewise.
1621 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
1623 2000-03-10 Akim Demaille <akim@epita.fr>
1626 Formatting changes of various comments.
1627 Respect the GNU coding standards at various places.
1628 Don't use `_()' when no translation is needed.
1630 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1633 OS/2 honors TMPDIR environment variable.
1635 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1637 * doc/bison.texinfo: Tweaked spelling and grammar.
1639 Removed reference to price of printed copy.
1640 Mention BISON_SIMPLE and BISON_HAIRY.
1642 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1644 * configure.in, NEWS:
1645 Bison 1.29 released.
1647 1999-10-27 Jesse Thilo <jthilo@gnu.org>
1649 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
1650 Added reference card.
1652 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1654 * po/ru.po: Added Russian translation.
1656 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1658 * configure.in: Added Russian translation.
1660 1999-07-06 Jesse Thilo <jthilo@gnu.org>
1662 * configure.in, NEWS, README:
1663 Released version 1.28.
1665 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1668 Squashed redefinition warning on some systems.
1670 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
1671 Have configure build version string instead of relying on ANSI string
1674 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1676 * po/POTFILES.in: Got rid of version.c.
1678 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1680 * acconfig.h, configure.in:
1681 Have configure build version string instead of relying on ANSI string
1684 1999-06-08 Jesse Thilo <jthilo@gnu.org>
1687 Dropped mention of `+' for long-named options.
1689 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1691 * src/files.c: Added <unistd.h> for unlink().
1693 * src/Makefile.am, src/system.h:
1696 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1698 * README: Added a FAQ list.
1700 * configure.in, acconfig.h:
1703 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1705 * doc/FAQ, doc/Makefile.am:
1708 1999-05-19 Jesse Thilo <jthilo@gnu.org>
1710 * src/alloc.h, src/symtab.h, src/version.c:
1711 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1713 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1715 * src/.cvsignore, src/Makefile.am:
1716 Reorganized: sources in `src', documentation in `doc'.
1718 * src/lex.c (literalchar):
1719 fixed the code for escaping double quotes (thanks
1722 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1724 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1725 Adjusted paths to reflect directory reorganization.
1727 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1729 * doc/.cvsignore, doc/Makefile.am:
1730 Reorganized: sources in `src', documentation in `doc'.
1732 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1735 Updated AC_INIT file to reflect directory reorganization.
1737 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1738 Reorganized: sources in `src', documentation in `doc'.
1740 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1743 Don't declare calloc() and realloc() if not necessary.
1745 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1747 * configure.in, acconfig.h, acinclude.m4:
1748 Don't declare calloc() and realloc() if not necessary.
1750 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1752 * po/.cvsignore: Added i18n support.
1754 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1756 * acconfig.h, configure.in, Makefile.am:
1759 1999-03-22 Jesse Thilo <jthilo@gnu.org>
1761 * src/bison.s1: Fixed #line numbers.
1763 1999-03-15 Jesse Thilo <jthilo@gnu.org>
1765 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1766 Added PO files from Translation Project.
1768 1999-03-03 Jesse Thilo <jthilo@gnu.org>
1771 Added support for non-ANSI compilers (ansi2knr).
1773 1999-02-16 Jesse Thilo <jthilo@gnu.org>
1775 * configure.in: Bumped version number to 1.27.
1778 Added `bison.simple' to list of files removed by `make distclean'.
1780 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1782 * src/files.c, src/files.h:
1783 Defined locations of parser files in config.h instead of Makefile.
1785 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1787 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1788 Defined locations of parser files in config.h instead of Makefile.
1790 1999-02-09 Jesse Thilo <jthilo@gnu.org>
1793 Removed inappropriate use of $< macro.
1795 1999-02-05 Jesse Thilo <jthilo@gnu.org>
1797 * po/Makefile.in.in, po/POTFILES.in:
1798 Add `po' directory skeleton.
1800 1999-01-27 Jesse Thilo <jthilo@gnu.org>
1802 * README: Document help-bison list.
1804 * configure.in: Add check for mkstemp().
1806 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1808 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1809 Hush a few compiler warnings.
1812 Add tryclose(), which verifies that fclose was successful.
1813 Hush a couple of compiler warnings.
1815 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1817 * Makefile.am, OChangeLog:
1818 ChangeLog is now automatically generated. Include the old version as
1821 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1823 * 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:
1826 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1828 * doc/bison.texinfo: Fix formatting glitch.
1830 * doc/bison.texinfo: Update FSF address.
1832 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1834 * acconfig.h: Update FSF address.
1836 1999-01-08 Jesse Thilo <jthilo@gnu.org>
1839 Don't define PACKAGE here, since config.h defines it.
1841 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1843 * src/reader.c: Update copyright date.
1846 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1847 favor of output directly to stderr (avoids buffer overruns).
1849 * src/reader.c: Some checks for premature EOF.
1851 * 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:
1852 Use prototypes if the compiler understands them.
1854 * src/files.c: Honor TMPDIR on Unix hosts.
1855 Use prototypes if the compiler understands them.
1858 Fix a couple of buffer overrun bugs.
1859 Use prototypes if the compiler understands them.
1861 * src/system.h: Include unistd.h and ctype.h.
1862 Use #ifdef instead of #if for NLS symbols.
1864 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1866 * doc/bison.texinfo:
1867 Delete comment "consider using @set for edition number, etc..." since
1868 we now are doing so.
1870 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1873 Use prototypes if the compiler understands them.
1875 * NEWS: Document 1.26 highlights.
1877 * Makefile.am: Require Automake 1.3 or later.
1880 Use prototypes if the compiler understands them.
1882 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1885 Use VERSION symbol from automake for version number.
1887 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1889 * acconfig.h, configure.in, version.cin:
1890 Use VERSION symbol from automake for version number.
1892 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1895 Distribute original version of simple parser (bison.s1), not built
1896 version (bison.simple).
1898 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1900 * doc/bison.texinfo: Add info dir entry.
1902 * doc/bison.texinfo:
1903 Let automake put version number into documentation.
1905 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1907 * src/bison.cld, src/build.com, src/vmshlp.mar:
1908 Add non-RCS files from /gd/gnu/bison.
1910 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1913 Document the BISON_HAIRY and BISON_SIMPLE variables.
1915 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1917 * src/version.c: Build version.c automatically.
1920 Fix token numbering (used to start at 258, not 257).
1922 * src/system.h: Include config.h.
1924 * src/getargs.c: Update bug report address.
1926 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1927 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1929 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1932 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1934 * configure.in, version.cin:
1935 Build version.c automatically.
1937 * AUTHORS: Add AUTHORS file.
1939 * README: Update bug report address.
1942 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1944 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1947 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1949 * doc/bison.texinfo: Clean up some formatting.
1951 1998-05-05 Richard Stallman <rms@gnu.org>
1953 * doc/bison.texinfo:
1954 Explain better why to make a pure parser.
1956 1998-01-05 Richard Stallman <rms@gnu.org>
1958 * src/files.c (openfiles):
1959 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1960 find a temporary directory, if possible. Do not unlink files while
1963 1997-08-25 Richard Stallman <rms@gnu.org>
1965 * src/reader.c (stack_offset;):
1966 Change some warni to warns.
1968 * src/lex.c (literalchar): Use warns, not warni.
1970 1997-06-28 Richard Stallman <rms@gnu.org>
1972 * src/bison.s1: Add a Bison version comment.
1974 * src/main.c (fatal, warn, berror):
1977 1997-06-28 Richard Stallman <rms@gnu.org>
1979 * Makefile.in (bison_version): New variable.
1980 (dist): Use that variable.
1981 (bison.s1): Substitute the Bison version into bison.simple.
1983 * bison.simple: Add a Bison version comment.
1985 1997-06-18 Richard Stallman <rms@gnu.org>
1987 * src/main.c (fatal, warn, berror):
1988 Make error messages standard.
1989 (toomany): Improve error message text.
1991 * 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:
1992 new.h renamed to alloc.h.
1994 1997-06-18 Richard Stallman <rms@gnu.org>
1996 * Makefile.in: new.h renamed to alloc.h.
1998 1997-05-24 Richard Stallman <rms@gnu.org>
2000 * src/lex.c (literalchar):
2001 Fix the code for escaping \, " and '.
2003 (lex): Avoid trouble when there are many chars
2004 to discard in a char literal with just several chars in it.
2006 1997-05-17 Richard Stallman <rms@gnu.org>
2009 Use malloc, if using alloca is troublesome.
2010 (YYSTACK_USE_ALLOCA): New flag macro.
2011 Define it for some systems and compilers.
2012 (YYSTACK_ALLOC): New macro.
2013 (yyparse): Use YYSTACK_ALLOC to allocate stack.
2014 If it was malloc'd, free it.
2016 1997-05-17 Richard Stallman <rms@gnu.org>
2019 Use malloc, if using alloca is troublesome.
2020 (YYSTACK_USE_ALLOCA): New flag macro.
2021 Define it for some systems and compilers.
2022 (YYSTACK_ALLOC): New macro.
2023 (yyparse): Use YYSTACK_ALLOC to allocate stack.
2024 If it was malloc'd, free it.
2026 1997-04-23 Richard Stallman <rms@gnu.org>
2029 (alloca) [__hpux]: Always define as __builtin_alloca.
2031 1997-04-23 Richard Stallman <rms@gnu.org>
2034 (alloca) [__hpux]: Always define as __builtin_alloca.
2036 1997-04-22 Richard Stallman <rms@gnu.org>
2039 [__hpux]: Include alloca.h (right for HPUX 10)
2040 instead of declaring alloca (right for HPUX 9).
2042 * src/bison.s1 (__yy_memcpy):
2043 Declare arg `count' as unsigned int.
2044 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
2046 1997-04-22 Richard Stallman <rms@gnu.org>
2049 [__hpux]: Include alloca.h (right for HPUX 10)
2050 instead of declaring alloca (right for HPUX 9).
2052 * bison.simple (__yy_memcpy):
2053 Declare arg `count' as unsigned int.
2054 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
2056 1997-01-03 Richard Stallman <rms@gnu.org>
2058 * src/allocate.c: [__STDC__ or _MSC_VER]:
2059 Declare calloc and realloc to return void *.
2061 1997-01-02 Richard Stallman <rms@gnu.org>
2064 [_MSC_VER]: Include stdlib.h and process.h.
2065 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
2067 * src/main.c (main): Return FAILURE as a value.
2068 (printable_version): Declare arg as int, not char.
2070 1997-01-02 Richard Stallman <rms@gnu.org>
2072 * Makefile.in (dist):
2073 Explicitly check for symlinks, and copy them.
2075 1996-12-19 Richard Stallman <rms@gnu.org>
2078 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
2080 1996-12-18 Paul Eggert <eggert@gnu.org>
2082 * src/bison.s1 (yyparse):
2083 If __GNUC__ and YYPARSE_PARAM are both defined,
2084 declare yyparse to have a void * argument.
2086 1996-12-18 Paul Eggert <eggert@gnu.org>
2088 * bison.simple (yyparse):
2089 If __GNUC__ and YYPARSE_PARAM are both defined,
2090 declare yyparse to have a void * argument.
2092 1996-12-17 Richard Stallman <rms@gnu.org>
2094 * src/reduce.c (nbits): Add some casts.
2096 1996-08-12 Richard Stallman <rms@gnu.org>
2098 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
2100 1996-08-12 Richard Stallman <rms@gnu.org>
2102 * bison.simple: Test _MSDOS as well as _MSDOS_.
2104 1996-07-31 Richard Stallman <rms@gnu.org>
2107 [__sun && __i386]: Include alloca.h.
2109 1996-07-31 Richard Stallman <rms@gnu.org>
2112 [__sun && __i386]: Include alloca.h.
2114 1996-07-30 Richard Stallman <rms@gnu.org>
2116 * src/bison.s1: Comment change.
2118 * src/bison.s1: Test _MSDOS_, not MSDOS.
2120 1996-07-30 Richard Stallman <rms@gnu.org>
2122 * bison.simple: Comment change.
2124 * bison.simple: Test _MSDOS_, not MSDOS.
2126 1996-06-01 Richard Stallman <rms@gnu.org>
2128 * 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:
2129 Insert `_' macro around many string constants.
2132 Insert `_' macro around many string constants.
2134 (main): Call setlocale, bindtextdomain and textdomain.
2136 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
2137 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
2138 [ENABLE_NLS]: Include libintl.h.
2139 [ENABLE_NLS] (gettext): Define.
2140 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
2141 (N_, PACKAGE, LOCALEDIR): New macros.
2143 1996-06-01 Richard Stallman <rms@gnu.org>
2145 * POTFILES.in: New file.
2147 * Makefile.in (allocate.o):
2148 Define target explicitly.
2150 * Makefile.in (CFLAGS): Set to @CFLAGS@.
2151 (LDFLAGS): Set to @LDFLAGS@.
2152 (configure): Run autoconf only if preceding `cd' succeeds.
2153 (bison.s1): Redirect output to temporary file then move the
2154 temporary to the target, rather than redirecting directly to bison.s1.
2155 (clean): Remove config.status and config.log.
2156 (distclean): Don't remove config.status here.
2158 1996-05-12 Richard Stallman <rms@gnu.org>
2161 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
2163 1996-05-12 Richard Stallman <rms@gnu.org>
2166 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
2168 1996-05-11 Richard Stallman <rms@gnu.org>
2170 * src/bison.s1 (__yy_memcpy):
2171 Really reorder the args, as was supposedly done on Feb 14 1995.
2172 (yyparse): Calls changed accordingly.
2174 1996-05-11 Richard Stallman <rms@gnu.org>
2176 * Makefile.in (dist): Don't use $(srcdir).
2178 * bison.simple (__yy_memcpy):
2179 Really reorder the args, as was supposedly done on Feb 14 1995.
2180 (yyparse): Calls changed accordingly.
2182 1996-01-27 Richard Stallman <rms@gnu.org>
2184 * src/output.c (output_rule_data):
2185 Test YYERROR_VERBOSE in the conditional
2186 around the definition of ttyname.
2188 1995-12-29 Richard Stallman <rms@gnu.org>
2191 Fix line numbers in #line commands.
2193 1995-12-29 Richard Stallman <rms@gnu.org>
2196 Fix line numbers in #line commands.
2198 1995-12-27 Richard Stallman <rms@gnu.org>
2200 * src/bison.s1 (YYPARSE_PARAM_DECL):
2201 In C++, make it always null.
2202 (YYPARSE_PARAM_ARG): New macro.
2203 (yyparse): Use YYPARSE_PARAM_ARG.
2205 1995-12-27 Richard Stallman <rms@gnu.org>
2207 * bison.simple (YYPARSE_PARAM_DECL):
2208 In C++, make it always null.
2209 (YYPARSE_PARAM_ARG): New macro.
2210 (yyparse): Use YYPARSE_PARAM_ARG.
2212 1995-11-29 Richard Stallman <rms@gnu.org>
2214 * doc/bison.texinfo:
2215 Describe literal string tokens, %raw, %no_lines, %token_table.
2217 1995-11-29 Daniel Hagerty <hag@gnu.org>
2219 * doc/bison.texinfo: Fixed update date
2221 1995-10-16 Richard Stallman <rms@gnu.org>
2223 * src/version.c: Version 1.25.
2225 1995-10-16 Richard Stallman <rms@gnu.org>
2227 * NEWS: *** empty log message ***
2229 1995-10-16 Richard Stallman <rms@gnu.org>
2231 * doc/bison.1, doc/bison.rnh:
2234 1995-10-15 Richard Stallman <rms@gnu.org>
2236 * src/vmsgetargs.c, src/getargs.c:
2237 Added -n, -k, and -raw switches.
2238 (noparserflag, toknumflag, rawtoknumflag): New variables.
2240 * src/symtab.h (SALIAS):
2241 New #define for adding aliases to %token.
2242 (struct bucket): Added `alias' field.
2244 * src/reduce.c (reduce_grammar):
2245 Revise error message.
2246 (print_notices): Remove final `.' from error message.
2248 * src/reader.c (reader_output_yylsp):
2250 (readgram): Use `#if 0' around code that accepted %command
2251 inside grammar rules: The documentation doesn't allow it,
2252 and it will fail since the %command processors scan for the next %.
2253 (parse_token_decl): Extended the %token
2254 declaration to allow a multi-character symbol as an alias.
2255 (parse_thong_decl): New function.
2256 (read_declarations): Added %thong declarations.
2257 (read_declarations): Handle NOOP to deal with allowing
2258 % declarations as another means to specify the flags.
2259 (readgram): Allow %prec prior to semantics embedded in a rule.
2260 (skip_to_char, read_declarations, copy_definition)
2261 (parse_token_decl, parse_start_decl, parse_type_decl)
2262 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
2263 (get_type_name, copy_guard, copy_action, readgram)
2264 (get_type, packsymbols): Revised most error messages.
2265 Changed `fatal' to `warnxxx' to avoid aborting for error.
2266 Revised and use multiple warnxxx functions to avoid using VARARGS1.
2267 (read_declarations): Improve the error message for
2268 an invalid character. Do not abort.
2269 (read_declarations, copy_guard, copy_action): Use
2270 printable_version to avoid unprintable characters in printed output.
2271 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
2272 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
2273 Allow the type of a non-terminal can be given
2274 more than once, as long as all specifications give the same type.
2277 (output_headers, output_trailers, output, output_gram)
2278 (output_rule_data): Implement noparserflag variable.
2279 Implement toknumflag variable.
2280 (output): Call reader_output_yylsp to output LTYPESTR.
2282 * src/main.c (main):
2283 If reader sees an error, don't process the grammar.
2284 (fatals): Updated to not use VARARGS1.
2285 (printable_version, int_to_string, warn, warni, warns, warnss)
2286 (warnsss): New error reporting functions. Avoid abort for error.
2289 Added THONG and NOOP for alias processing.
2290 Added SETOPT for the new code that allows setting options with %flags.
2293 Include getopt.h. Add some extern decls.
2294 (safegetc): New function to deal with EOF gracefully.
2295 (literalchar); new function to deal with reading \ escapes.
2296 (lex): Use literalchar.
2297 (lex): Implemented "..." tokens.
2298 (literalchar, lex, parse_percent_token): Made tokenbuffer
2299 always contain the token. This includes growing the token
2300 buffer while reading an integer.
2301 (parse_percent_token): Replaced if-else statement with percent_table.
2302 (parse_percent_token): Added % declarations as another
2303 way to specify the flags -n, -l, and -r. Also added hooks for
2304 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
2305 major changes to files.c.
2306 (lex) Retain in the incoming stream a character following
2308 (skip_white_space, lex): Revised most error messages
2309 and changed fatal to warn to avoid aborting.
2310 (percent_table): Added %thong declarations.
2312 * src/gram.h: Comment changes.
2314 * src/files.c (openfiles, open_extra_files, done):
2316 and actfile file. Handle noparserflag. Both for -n switch.
2318 * src/conflicts.c (resolve_sr_conflict):
2319 Remove use of alloca.
2321 1995-06-01 Jim Meyering <meyering@gnu.org>
2323 * doc/bison.texinfo: *** empty log message ***
2325 1995-05-06 Richard Stallman <rms@gnu.org>
2327 * src/bison.s1: Comment change.
2329 1995-05-06 Richard Stallman <rms@gnu.org>
2331 * bison.simple: Comment change.
2333 1995-05-03 Richard Stallman <rms@gnu.org>
2335 * src/version.c: Version now 1.24.
2337 * src/bison.s1: Change distribution terms.
2339 * src/version.c: Version now 1.23.
2341 1995-05-03 Richard Stallman <rms@gnu.org>
2343 * doc/bison.texinfo:
2344 Rewrite "Conditions for Using Bison".
2345 Update version to 1.24.
2347 1995-05-03 Richard Stallman <rms@gnu.org>
2349 * bison.simple: Change distribution terms.
2351 1995-02-23 Richard Stallman <rms@gnu.org>
2353 * src/files.c: Test __VMS_POSIX as well as VMS.
2355 1995-02-14 Jim Meyering <meyering@gnu.org>
2357 * src/bison.s1 (__yy_memcpy):
2358 Renamed from __yy_bcopy to avoid
2359 confusion. Reverse FROM and TO arguments to be consistent with
2362 1995-02-14 Jim Meyering <meyering@gnu.org>
2364 * bison.simple (__yy_memcpy):
2365 Renamed from __yy_bcopy to avoid
2366 confusion. Reverse FROM and TO arguments to be consistent with
2369 1994-11-10 David J. MacKenzie <djm@gnu.org>
2375 * Makefile.in (DISTFILES): Include NEWS.
2377 * Makefile.in (DISTFILES):
2378 Include install-sh, not install.sh.
2380 * configure.in: Update to Autoconf v2 macro names.
2382 1994-10-05 David J. MacKenzie <djm@gnu.org>
2384 * Makefile.in: fix typo
2386 * Makefile.in (prefix, exec_prefix):
2387 Let configure set them.
2389 1994-09-28 David J. MacKenzie <djm@gnu.org>
2391 * Makefile.in: Set datadir to $(prefix)/share.
2393 1994-09-15 Richard Stallman <rms@gnu.org>
2396 Update copyright notice and GPL version.
2398 1994-09-15 Richard Stallman <rms@gnu.org>
2401 Update copyright notice and GPL version.
2403 1994-07-12 Richard Stallman <rms@gnu.org>
2405 * src/reduce.c, src/reader.c:
2408 1994-05-05 David J. MacKenzie <djm@gnu.org>
2410 * Makefile.in: entered into RCS
2412 1994-03-26 Richard Stallman <rms@gnu.org>
2414 * src/bison.s1: entered into RCS
2416 1994-03-26 Richard Stallman <rms@gnu.org>
2418 * bison.simple: entered into RCS
2420 1994-03-25 Richard Stallman <rms@gnu.org>
2422 * src/main.c: entered into RCS
2424 1994-03-24 Richard Stallman <rms@gnu.org>
2426 * src/conflicts.c: entered into RCS
2428 1994-01-02 Richard Stallman <rms@gnu.org>
2430 * Makefile.in: *** empty log message ***
2432 1993-11-21 Richard Stallman <rms@gnu.org>
2434 * src/bison.s1: *** empty log message ***
2436 1993-11-21 Richard Stallman <rms@gnu.org>
2438 * doc/bison.texinfo: entered into RCS
2440 * doc/bison.texinfo: *** empty log message ***
2442 1993-11-21 Richard Stallman <rms@gnu.org>
2444 * bison.simple: *** empty log message ***
2446 1993-10-25 David J. MacKenzie <djm@gnu.org>
2448 * doc/bison.texinfo: *** empty log message ***
2450 1993-10-19 Richard Stallman <rms@gnu.org>
2452 * src/bison.s1: *** empty log message ***
2454 1993-10-19 Richard Stallman <rms@gnu.org>
2456 * bison.simple: *** empty log message ***
2458 1993-10-14 Richard Stallman <rms@gnu.org>
2460 * src/bison.s1: *** empty log message ***
2462 1993-10-14 Richard Stallman <rms@gnu.org>
2464 * bison.simple: *** empty log message ***
2466 1993-09-14 David J. MacKenzie <djm@gnu.org>
2468 * doc/bison.texinfo: *** empty log message ***
2470 1993-09-13 Noah Friedman <friedman@gnu.org>
2472 * Makefile.in: *** empty log message ***
2474 1993-09-10 Richard Stallman <rms@gnu.org>
2476 * src/conflicts.c: *** empty log message ***
2478 * src/system.h: entered into RCS
2480 1993-09-10 Richard Stallman <rms@gnu.org>
2482 * doc/bison.1: entered into RCS
2484 1993-09-06 Noah Friedman <friedman@gnu.org>
2486 * src/version.c: entered into RCS
2488 1993-09-06 Noah Friedman <friedman@gnu.org>
2490 * Makefile.in: *** empty log message ***
2492 1993-07-30 David J. MacKenzie <djm@gnu.org>
2494 * Makefile.in: *** empty log message ***
2496 1993-07-24 Richard Stallman <rms@gnu.org>
2498 * src/bison.s1: *** empty log message ***
2500 1993-07-24 Richard Stallman <rms@gnu.org>
2502 * bison.simple: *** empty log message ***
2504 1993-07-08 David J. MacKenzie <djm@gnu.org>
2506 * Makefile.in: *** empty log message ***
2508 1993-07-04 Richard Stallman <rms@gnu.org>
2510 * src/bison.s1: *** empty log message ***
2512 1993-07-04 Richard Stallman <rms@gnu.org>
2514 * bison.simple: *** empty log message ***
2516 1993-06-26 David J. MacKenzie <djm@gnu.org>
2518 * src/getargs.c: entered into RCS
2520 1993-06-26 David J. MacKenzie <djm@gnu.org>
2522 * doc/bison.texinfo: *** empty log message ***
2524 * doc/bison.1: New file.
2526 1993-06-25 Richard Stallman <rms@gnu.org>
2528 * src/getargs.c: New file.
2530 1993-06-16 Richard Stallman <rms@gnu.org>
2532 * src/bison.s1: *** empty log message ***
2534 1993-06-16 Richard Stallman <rms@gnu.org>
2536 * bison.simple: *** empty log message ***
2538 1993-06-03 Richard Stallman <rms@gnu.org>
2540 * src/bison.s1: New file.
2542 1993-06-03 Richard Stallman <rms@gnu.org>
2544 * doc/bison.texinfo: *** empty log message ***
2546 1993-06-03 Richard Stallman <rms@gnu.org>
2548 * bison.simple: New file.
2550 1993-05-19 Richard Stallman <rms@gnu.org>
2552 * doc/bison.texinfo: New file.
2554 1993-05-07 Noah Friedman <friedman@gnu.org>
2556 * Makefile.in: *** empty log message ***
2558 1993-04-28 Noah Friedman <friedman@gnu.org>
2560 * src/reader.c: *** empty log message ***
2562 1993-04-23 Noah Friedman <friedman@gnu.org>
2564 * src/alloc.h: entered into RCS
2566 1993-04-20 David J. MacKenzie <djm@gnu.org>
2568 * src/version.c: *** empty log message ***
2570 * src/files.c, src/allocate.c:
2573 * src/reader.c: *** empty log message ***
2575 * src/lex.c: entered into RCS
2577 * src/conflicts.c: New file.
2579 * src/symtab.c: entered into RCS
2581 * src/alloc.h: New file.
2583 * src/LR0.c: entered into RCS
2585 1993-04-18 Noah Friedman <friedman@gnu.org>
2587 * src/reader.c: New file.
2589 * src/version.c: *** empty log message ***
2591 1993-04-18 Noah Friedman <friedman@gnu.org>
2593 * Makefile.in: *** empty log message ***
2595 1993-04-17 Noah Friedman <friedman@gnu.org>
2597 * Makefile.in: *** empty log message ***
2599 1993-04-15 Richard Stallman <rms@gnu.org>
2601 * src/main.c, src/files.c:
2604 1993-04-15 Noah Friedman <friedman@gnu.org>
2606 * configure.in: entered into RCS
2608 * configure.in: *** empty log message ***
2610 * configure.in: New file.
2612 1993-04-14 Richard Stallman <rms@gnu.org>
2614 * Makefile.in: New file.
2616 1993-04-13 Richard Stallman <rms@gnu.org>
2618 * src/version.c: New file.
2620 1993-03-25 Richard Stallman <rms@gnu.org>
2622 * src/output.c: entered into RCS
2624 1992-09-25 Richard Stallman <rms@gnu.org>
2626 * configure.bat: entered into RCS
2628 1992-06-22 Richard Stallman <rms@gnu.org>
2630 * src/vmsgetargs.c: entered into RCS
2632 1992-06-22 Richard Stallman <rms@gnu.org>
2634 * doc/bison.rnh: entered into RCS
2636 1992-04-20 David J. MacKenzie <djm@gnu.org>
2638 * README: entered into RCS
2640 1992-01-22 Richard Stallman <rms@gnu.org>
2642 * src/machine.h: entered into RCS
2644 1991-12-21 Richard Stallman <rms@gnu.org>
2646 * src/lalr.c, src/closure.c:
2649 1991-12-20 Richard Stallman <rms@gnu.org>
2651 * src/state.h: entered into RCS
2653 1991-12-18 Richard Stallman <rms@gnu.org>
2655 * src/print.c, src/nullable.c, src/derives.c:
2658 1991-11-03 David J. MacKenzie <djm@gnu.org>
2660 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
2663 1988-09-09 Richard Stallman <rms@gnu.org>
2665 * src/bison.hairy: entered into RCS
2667 1987-12-16 Richard Stallman <rms@gnu.org>
2669 * REFERENCES: entered into RCS