1 2001-01-18 Akim Demaille <akim@epita.fr>
3 Since we now use obstacks, more % directives can be enabled.
5 * src/lex.c (percent_table): Also accept `%yacc',
6 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
8 Handle the actions for `%semantic_parser' and `%pure_parser' here,
9 instead of returning a token.
10 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
11 * src/reader.c (read_declarations): Adjust.
12 * src/files.c (open_files): Don't call `compute_base_names', don't
13 compute `attrsfile' since they depend upon data which might be
14 *in* the input file now.
15 (output_files): Do it here.
16 * src/output.c (output_headers): Document the fact that this patch
17 introduces a guaranteed SEGV for semantic parsers.
18 * doc/bison.texinfo: Document them.
19 * tests/suite.at: Exercise these %options.
21 2000-12-20 Akim Demaille <akim@epita.fr>
23 Also handle the output file (--verbose) with obstacks.
25 * files.c (foutput): Remove.
26 (output_obstack): New.
27 Adjust all dependencies.
28 * src/conflicts.c: Return a string.
29 * src/system.h (obstack_grow_string): Rename as...
30 (obstack_sgrow): this. Be ready to work with non literals.
31 (obstack_fgrow4): New.
33 2000-12-20 Akim Demaille <akim@epita.fr>
35 * src/files.c (open_files): Fix the computation of short_base_name
36 in the case of `-o foo.tab.c'.
38 2000-12-20 Akim Demaille <akim@epita.fr>
40 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
41 (copy_dollar): Now that everything uses obstacks, get rid of the
44 2000-12-20 Akim Demaille <akim@epita.fr>
46 * src/files.c (open_files): Actually the `.output' file is based
47 on the short_base_name, not base_name.
48 * tests/suite.at (Checking output file names): Adjust.
50 2000-12-20 Akim Demaille <akim@epita.fr>
52 * src/bison.s1: Remove, we now use directly...
53 * src/bison.simple: this.
54 * src/Makefile.am: Use pkgdata instead of data.
56 2000-12-20 Akim Demaille <akim@epita.fr>
58 * src/files.c (guard_obstack): New.
59 (open_files): Initialize it.
60 (output_files): Dump it...
61 * src/files.h: Export it.
62 * src/reader.c (copy_guard): Use it.
64 2000-12-19 Akim Demaille <akim@epita.fr>
66 * src/files.c (outfile, defsfile, actfile): Removed as global
68 (open_files): Don't compute them.
69 (output_files): Adjust.
70 (base_name, short_base_name): Be global.
73 2000-12-19 Akim Demaille <akim@epita.fr>
75 * src/files.c (strsuffix): New.
76 (stringappend): Be just like strcat but allocate.
77 (base_names): Eve out from open_files.
78 Try to simplify the rather hairy computation of base_name and
81 * tests/suite.at (Checking output file names): New test.
83 2000-12-19 Akim Demaille <akim@epita.fr>
85 * src/system.h (obstack_grow_literal_string): Rename as...
86 (obstack_grow_string): this.
87 * src/output.c (output_parser): Recognize `%% actions' instead of
89 * src/bison.s1: s/$/%% actions/.
90 * src/bison.hairy: Likewise.
92 2000-12-19 Akim Demaille <akim@epita.fr>
94 * src/output.c (output_parser): Compute the `#line' lines when
96 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
97 Suggested by Hans Aberg.
99 2000-12-19 Akim Demaille <akim@epita.fr>
101 Let the handling of the skeleton files be local to the procedures
104 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
106 (fparser, open_extra_files): Remove.
107 (open_files, output_files): Don't take care of fparser.
108 * src/files.h: Adjust.
109 * src/output.c (output_parser): Open and close the file to the
111 * src/reader.c (read_declarations): When %semantic_parser, open
114 2000-12-19 Akim Demaille <akim@epita.fr>
116 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
117 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
119 2000-12-19 Akim Demaille <akim@epita.fr>
121 * src/files.c (open_files): Yipee! We no longer need all the code
122 looking for `/tmp' since we have no tmp file.
124 2000-12-19 Akim Demaille <akim@epita.fr>
126 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
128 * src/files.c (open_files): Less dependency on MSDOS etc.
130 2000-12-14 Akim Demaille <akim@epita.fr>
132 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
133 Provide a default definition.
134 Use it when executing the default @ action.
135 * src/reader.c (reader_output_yylsp): No longer include
136 `timestamp' and `text' in the default YYLTYPE.
138 2000-12-12 Akim Demaille <akim@epita.fr>
140 * src/reader.c (copy_definition, parse_union_decl, copy_action)
141 (copy_guard): Quote the file names.
142 Reported by Laurent Mascherpa.
144 2000-12-12 Akim Demaille <akim@epita.fr>
146 * src/output.c (output_headers, output_program, output): Be sure
147 to escape special characters when outputting filenames.
148 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
149 (output_headers): Don't depend on them, Use ACTSTR.
151 2000-11-17 Akim Demaille <akim@epita.fr>
153 * lib/obstack.h: Formatting changes.
154 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
155 prevents type checking.
156 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
157 cast the value to (void *): assigning a `foo *' to a `void *'
159 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
160 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
163 2000-11-17 Akim Demaille <akim@epita.fr>
165 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
167 (suite.m4, regression.m4, calc.m4): these.
168 * tests/atgeneral.m4: Update from CVS Autoconf.
170 2000-11-17 Akim Demaille <akim@epita.fr>
172 * tests/regression.m4 (%union and --defines): New test,
173 demonstrating a current bug in the obstack implementation.
175 2000-11-17 Akim Demaille <akim@epita.fr>
177 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
179 Use them to declare the variables which are global or local to
182 2000-11-17 Akim Demaille <akim@epita.fr>
184 * acconfig.h: Remove, no longer used.
186 2000-11-07 Akim Demaille <akim@epita.fr>
188 * src: s/Copyright (C)/Copyright/g.
190 2000-11-07 Akim Demaille <akim@epita.fr>
192 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
194 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
196 2000-11-07 Akim Demaille <akim@epita.fr>
198 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
199 Merge in a single CPP if/else.
201 2000-11-07 Akim Demaille <akim@epita.fr>
203 * src/output.c (output): Remove useless variables.
204 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
205 argument `data' for consistency with the prototypes.
207 (obstack_copy, obstack_copy0): Rename the second argument as
208 `address' for consistency. Qualify it `const'.
209 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
210 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
211 `const' their input argument (`data' or `address').
212 Adjust the corresponding macros to include `const' in casts.
214 2000-11-03 Akim Demaille <akim@epita.fr>
216 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
217 s/PFILE1/BISON_HAIRY/.
220 2000-11-03 Akim Demaille <akim@epita.fr>
222 For some reason, this was not applied.
224 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
225 `unlink': it's no longer used.
227 2000-11-03 Akim Demaille <akim@epita.fr>
229 * src/files.c (skeleton_find): New function, eved out of...
230 (open_files, open_extra_files): here.
232 2000-11-03 Akim Demaille <akim@epita.fr>
236 * src/files.c (obstack_save): New function.
238 (output_files): this.
240 * src/main.c (main): Don't use `atexit' to register `done', since
241 it no longer has to remove tmp files, just call `output_files'
242 when there are no errors.
244 2000-11-02 Akim Demaille <akim@epita.fr>
246 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
247 `unlink': it's no longer used.
248 * src/files.h: Formatting changes.
250 2000-11-02 Akim Demaille <akim@epita.fr>
252 Remove the last uses of mktemp and unlink/delete.
254 * src/files.c (fdefines, ftable): Removed.
255 (defines_ostack, table_obstack): New.
256 Adjust dependencies of the former into uses of the latter.
257 * src/output.c (output_short_or_char_table, output_short_table):
258 Convert to using obstacks.
259 * src/reader.c (copy_comment2): Accept one FILE * and two
261 (output_token_defines, reader_output_yylsp): Use obstacks.
262 * src/system.h (obstack_fgrow3): New.
264 2000-11-01 Akim Demaille <akim@epita.fr>
266 Change each use of `fattrs' into a use of `attrs_obstack'.
268 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
269 * src/files.c (fattrs): Remove.
270 (attrs_obstack): New.
271 Adjust all dependencies.
272 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
274 2000-11-01 Akim Demaille <akim@epita.fr>
277 Change each use of `faction' into a use of `action_obstack'.
279 * lib/obstack.h, lib/obstack.c: New files.
280 * src/files.c (faction): Remove.
281 (action_obstack): New.
282 Adjust all dependencies.
284 2000-10-20 Akim Demaille <akim@epita.fr>
286 * lib/quote.h (PARAMS): New macro. Use it.
288 2000-10-16 Akim Demaille <akim@epita.fr>
290 * src/output.c (output_short_or_char_table): New function.
291 (output_short_table, output_token_translations): Use it.
292 (goto_actions): Use output_short_table.
294 2000-10-16 Akim Demaille <akim@epita.fr>
296 * src/symtab.c (bucket_new): New function.
299 * src/output.c (output_short_table): New argument to display the
300 comment associated with the table.
302 (output_gram): Use it.
303 (output_rule_data): Nicer output layout for YYTNAME.
305 2000-10-16 Akim Demaille <akim@epita.fr>
307 * src/lex.c (read_typename): New function.
309 * src/reader.c (copy_dollar): Likewise.
311 2000-10-16 Akim Demaille <akim@epita.fr>
313 * src/reader.c (copy_comment2): Expect the input stream to be on
314 the `/' which is suspected to open a comment, instead of being
315 called after `//' or `/*' was read.
316 (copy_comment, copy_definition, parse_union_decl, copy_action)
317 (copy_guard): Adjust.
319 2000-10-16 Akim Demaille <akim@epita.fr>
321 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
322 `read_signed_integer'.
324 2000-10-16 Akim Demaille <akim@epita.fr>
326 * src/reader.c (copy_dollar): New function.
327 (copy_guard, copy_action): Use it.
329 2000-10-16 Akim Demaille <akim@epita.fr>
331 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
332 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
333 New files, from Fileutils 4.0.27.
334 * src/main.c (printable_version): Remove.
335 * src/lex.c, src/reader.c: Use `quote'.
337 2000-10-04 Akim Demaille <akim@epita.fr>
339 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
341 2000-10-04 Akim Demaille <akim@epita.fr>
343 * doc/bison.texinfo: Various typos spotted by Neil Booth.
345 2000-10-04 Akim Demaille <akim@epita.fr>
347 When a literal string is used to define two different tokens,
348 `bison -v' segfaults.
349 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
351 * tests/regression.m4: New file.
352 Include the core of the sample provided by Piotr Gackiewicz.
353 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
356 2000-10-04 Akim Demaille <akim@epita.fr>
358 * src/reader.c (parse_expect_decl): Keep `count' within the size
362 2000-10-02 Paul Eggert <eggert@twinsun.com>
364 * bison.s1 (yyparse): Assign the default value
365 unconditionally, to avoid a GCC warning and make the parser a
368 2000-10-02 Akim Demaille <akim@epita.fr>
370 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
373 2000-10-02 Akim Demaille <akim@epita.fr>
375 * src/derives.c, src/print.c, src/reduce.c: To ease the
376 translation, move some `\n' out of the translated strings.
378 2000-10-02 Akim Demaille <akim@epita.fr>
380 The location tracking mechanism is precious for parse error
381 messages. Nevertheless, it is enabled only when `@n' is used in
382 the grammar, which is a different issue (you can use it in error
383 message, but not in the grammar per se). Therefore, there should
384 be another means to enable it.
386 * src/getargs.c (getargs): Support `--locations'.
388 * src/getargs.h (locationsflag): Export it.
389 * src/lex.c (percent_table): Support `%locations'.
390 * src/reader.c (yylsp_needed): Remove this variable, now replaced
391 with `locationsflag'.
392 * doc/bison.texinfo: Document `--locations' and `%locations'.
394 * tests/calc.m4: Test it.
396 For regularity of the names, replace each
397 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
398 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
399 In addition replace each `flag' with `_flag'.
401 2000-10-02 Akim Demaille <akim@epita.fr>
403 Also test parse error messages, including with YYERROR_VERBOSE.
405 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
407 Use it to check the computations.
408 Use it to check `nonassoc' is honored.
409 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
411 (_AT_CHECK_CALC): Adjust to this option.
412 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
414 2000-10-02 Akim Demaille <akim@epita.fr>
416 Test also `--verbose', `--defines' and `--name-prefix'. Testing
417 the latter demonstrates a flaw in the handling of non debugging
418 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
419 was used in order to simplify:
435 unfortunately this leads to a CPP conflict when
436 `--name-prefix=foo' is used since it produces `#define yydebug
439 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
440 (YYDPRINTF): New macro.
442 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
444 Also test `--verbose', `--defines' and `--name-prefix'.
446 2000-10-02 Akim Demaille <akim@epita.fr>
448 Improve the readability of the produced parsers.
450 * src/bison.s1: Formatting changes.
451 Improve the comment related to the `$' mark.
452 (yydefault): Don't fall through to `yyresume': `goto' there.
453 * src/output.c (output_parser): When the `$' is met, skip the end
455 New variable, `number_of_dollar_signs', to check there's exactly
456 one `$' in the parser skeleton.
458 2000-10-02 Akim Demaille <akim@epita.fr>
460 * lib/xstrdup.c: New file, from the fileutils.
461 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
462 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
463 instead of strlen + xmalloc + strcpy.
464 * src/symtab.c (copys): Remove, use xstrdup instead.
466 2000-10-02 Akim Demaille <akim@epita.fr>
468 * src/gram.h (associativity): New enum type which replaces the
469 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
470 `right_assoc', `left_assoc' and `non_assoc'.
471 Adjust all dependencies.
472 * src/reader.c: Formatting changes.
473 (LTYPESTR): Don't define it, use it as a literal in
474 `reader_output_yylsp'.
475 * src/symtab.h (symbol_class): New enum type which replaces the
476 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
477 `sunknown', `stoken and `snterm'.
479 2000-10-02 Akim Demaille <akim@epita.fr>
481 * src/getargs.c (fixed_outfiles): Rename as...
482 (yaccflag): for consistency and accuracy.
485 2000-10-02 Akim Demaille <akim@epita.fr>
487 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
488 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
489 difficult and introduced a lot of core dump. It turns out that
490 Bison used an implementation of `xmalloc' based on `calloc', and
491 at various places it does depend upon the initialization to 0. I
492 have not tried to isolate the pertinent places, and all the former
493 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
494 someone should address this issue.
496 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
497 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
500 * src/warshall.h: New file.
503 2000-10-02 Akim Demaille <akim@epita.fr>
505 Various anti-`extern in *.c' changes.
507 * src/system.h: Include `assert.h'.
509 2000-10-02 Akim Demaille <akim@epita.fr>
511 * src/state.h (nstates, final_state, first_state, first_shift)
512 (first_reduction): Move their exportation from here...
513 * src/LR0.h: to here.
515 * src/getargs.c (statisticsflag): New variable.
516 Add support for `--statistics'.
519 Remove a lot of now useless `extern' statements in most files.
521 2000-10-02 Akim Demaille <akim@epita.fr>
523 * src/LR0.h: New file.
526 2000-10-02 Akim Demaille <akim@epita.fr>
528 * src/print.h: New file.
530 * src/print.c: Formatting and ordering changes.
531 (verbose, terse): Replace with...
532 (print_results): this new function.
535 2000-10-02 Akim Demaille <akim@epita.fr>
537 * src/conflicts.c (conflict_report): New function.
538 (conflict_log, verbose_conflict_log): Replace with...
539 (print_conflicts): this function.
541 * src/conflicts.h: New file.
542 Propagate its inclusion.
544 2000-10-02 Akim Demaille <akim@epita.fr>
546 * src/nullable.h: New file.
547 Propagate its inclusion.
548 * src/nullable.c: Formatting changes.
550 2000-10-02 Akim Demaille <akim@epita.fr>
552 * src/reduce.h: New file.
553 Propagate its inclusion.
554 * src/reduce.c: Topological sort and other formatting changes.
555 (bool, TRUE, FALSE): Move their definition to...
556 * src/system.h: here.
558 2000-10-02 Akim Demaille <akim@epita.fr>
560 * src/files.c: Formatting changes.
561 (tryopen, tryclose, openfiles): Rename as...
562 (xfopen, xfclose, open_files): this.
563 (stringappend): static.
564 * src/files.h: Complete the list of exported symbols.
567 2000-10-02 Akim Demaille <akim@epita.fr>
569 * src/reader.h: New file.
570 Propagate its use instead of tedious list of `extern' and
572 * src/reader.c: Formatting changes, topological sort,
575 2000-10-02 Akim Demaille <akim@epita.fr>
577 * src/lex.h: Prototype `lex.c' exported functions.
578 * src/reader.c: Adjust.
579 * src/lex.c: Formatting changes.
580 (safegetc): Rename as...
583 2000-10-02 Akim Demaille <akim@epita.fr>
585 * src/lalr.h: New file.
586 Propagate its inclusion instead of prototypes and `extern'.
587 * src/lalr.c: Formatting changes, topological sorting etc.
589 2000-10-02 Akim Demaille <akim@epita.fr>
591 * src/output.c (token_actions): Introduce a temporary array,
592 YYDEFACT, that makes it possible for this function to use
595 2000-10-02 Akim Demaille <akim@epita.fr>
597 `user_toknums' is output as a `short[]' in `output.c', while it is
598 defined as a `int[]' in `reader.c'. For consistency with the
599 other output tables, `user_toknums' is now defined as a table of
602 * src/reader.c (user_toknums): Be a short table instead of an int
606 Factor the short table outputs.
608 * src/output.c (output_short_table): New function.
609 * src/output.c (output_gram, output_stos, output_rule_data)
610 (output_base, output_table, output_check): Use it.
612 2000-10-02 Akim Demaille <akim@epita.fr>
614 * src/output.c (output): Topological sort of the functions, in
615 order to get rid of the `static' prototypes.
616 No longer use `register'.
617 * src/output.h: New file.
618 Propagate its inclusion in files explicitly prototyping functions
621 2000-09-21 Akim Demaille <akim@epita.fr>
623 * src/atgeneral.m4: Update from Autoconf.
625 2000-09-21 Akim Demaille <akim@epita.fr>
627 * src/closure.h: New file.
628 * src/closure.c: Formatting changes, topological sort over the
629 functions, use of closure.h.
630 (initialize_closure, finalize_closure): Rename as...
631 (new_closure, free_closure): these. Adjust dependencies.
632 * src/LR0.c: Formatting changes, topological sort, use of
634 (initialize_states): Rename as...
636 * src/Makefile.am (noinst_HEADERS): Adjust.
638 2000-09-20 Akim Demaille <akim@epita.fr>
640 * src/acconfig.h: Don't protect config.h against multiple
643 * src/system.h: Define PARAMS.
644 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
645 purpose of config.h. system.h must not try to fix wrong
646 definitions in config.h.
648 2000-09-20 Akim Demaille <akim@epita.fr>
650 * src/derives.h: New file.
651 * src/main.c, src/derives.h: Use it.
653 * src/Makefile.am (noinst_HEADERS): Adjust.
655 2000-09-20 Akim Demaille <akim@epita.fr>
657 * tests/atgeneral.m4: Update from Autoconf.
658 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
659 (AT_CHECK_CALC): New macros.
660 Use these macros to test bison with options `', `--raw',
661 `--debug', `--yacc', `--yacc --debug'.
663 2000-09-19 Akim Demaille <akim@epita.fr>
665 * src/output.c: Formatting changes.
666 * src/machine.h: Remove, leaving its contents in...
667 * src/system.h: here.
669 Adjust all dependencies on stdio.h and machine.h.
670 * src/getargs.h: New file.
671 Let all `extern' declarations about getargs.c be replaced with
672 inclusion of `getargs.h'.
673 * src/Makefile.am (noinst_HEADERS): Adjust.
675 * tests/calc.m4 (yyin): Be initialized in main, not on the global
677 (yyerror): Returns void, not int.
678 * doc/bison.texinfo: Formatting changes.
680 2000-09-19 Akim Demaille <akim@epita.fr>
682 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
685 2000-09-18 Akim Demaille <akim@epita.fr>
687 * configure.in: Append WARNING_CFLAGS to CFLAGS.
688 * src/Makefile.am (INCLUDES): Don't.
689 Be ready to fetch headers in lib/.
691 2000-09-18 Akim Demaille <akim@epita.fr>
693 * doc/bison.texinfo: Update the copyright.
694 ANSIfy and GNUify the examples.
697 2000-09-18 Akim Demaille <akim@epita.fr>
699 First set of tests: use the `calc' example from the documentation.
701 * src/bison.s1 (yyparse): Condition the code using `yytname' which
702 is defined only when YYDEBUG is.
703 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
704 * src/files.c (tryopen, tryclose): Formatting changes.
705 Move to the top and be static.
706 * src/reader.c (read_signed_integer): Likewise.
707 * tests/calc.m4: New file.
708 * Makefile.am, suite.m4: Adjust.
709 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
711 2000-09-18 Akim Demaille <akim@epita.fr>
713 Add support for an Autotest test suite for Bison.
715 * m4/m4.m4, m4/atconfig.m4: New files.
716 * m4/Makefile.am (EXTRA_DIST): Adjust.
717 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
719 * src/getargs.c: Display a more standard --version message.
720 * src/reader.c (reader): Formatting changes.
721 No longer depend upon VERSION_STRING.
722 * configure.in: No longer use `dnl'.
723 Set up the test suite and the new directory `tests/.
724 (VERSION_STRING): Remove.
726 2000-04-14 Akim Demaille <akim@epita.fr>
728 * src/reader.c (copy_comment2): New function, same as former
729 `copy_comment', but outputs into two FILE *.
730 (copy_comment): Use it.
731 (parse_union_decl): Use it.
732 (get_type, parse_start_decl): Use the same `invalid' message.
733 (parse_start_decl, parse_union_decl): Use the same `multiple'
735 (parse_union_decl, copy_guard, copy_action): Use the same
737 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
739 2000-03-31 Akim Demaille <akim@epita.fr>
741 * src/files.c (tryopen, tryclose): Move to the top.
744 2000-03-31 Akim Demaille <akim@epita.fr>
746 * src/main.c (main): Don't call `done', exit does it.
748 2000-03-31 Akim Demaille <akim@epita.fr>
750 * allocate.c: s/return (foo)/return foo/.
753 * output.c: Likewise.
754 * reader.c: Likewise.
755 * symtab.c: Likewise.
756 * vmsgetargs.c: Likewise.
758 2000-03-31 Akim Demaille <akim@epita.fr>
760 Clean up the error reporting functions.
762 * src/report.c: New file.
763 * src/report.h: Likewise.
764 * src/Makefile.am: Adjust.
765 * m4/error.m4: New file.
766 * m4/Makefile.am: Adjust.
767 * configure.in (jm_PREREQ_ERROR): Call it.
768 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
770 (fatal, fatals): Remove. All callers use complain.c::fatal.
771 (warn, warni, warns, warnss, warnss): Remove. All callers use
772 complain.c::complain.
773 (toomany): Remove, use fatal instead.
774 * src/files.c (done): No argument, use complain_message_count.
775 * src/main.c (main): Register `done' to `atexit'.
777 * src/getargs.c (usage): More `fputs', less `fprintf'.
779 2000-03-28 Akim Demaille <akim@epita.fr>
781 * lib/: New directory.
782 * Makefile.am (SUBDIRS): Adjust.
783 * configure.in: Adjust.
784 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
786 * src/alloca.c: Moved to lib/.
787 * src/getopt.c: Likewise.
788 * src/getopt1.c: Likewise.
789 * src/getopt.h: Likewise.
790 * src/ansi2knr.c: Likewise.
791 * src/ansi2knr.1: Likewise.
792 * src/Makefile.am: Adjust.
793 * lib/Makefile.am: New file.
795 2000-03-28 Akim Demaille <akim@epita.fr>
797 * src/getargs.c (usage): Refresh the help message.
799 2000-03-17 Akim Demaille <akim@epita.fr>
801 * src/getopt1.c: Updated from textutils 2.0e
802 * src/getopt.c: Likewise.
803 * src/getopt.h: Likewise.
805 2000-03-17 Akim Demaille <akim@epita.fr>
807 * src/Makefile.am (bison.simple): Fix the awk program: quote only
808 the file name, not the whole `#line LINE FILE'.
810 2000-03-17 Akim Demaille <akim@epita.fr>
812 On syntax errors, report the token on which we choked.
814 * src/bison.s1 (yyparse): In the label yyerrlab, when
815 YYERROR_VERBOSE, add yychar in msg.
817 2000-03-17 Akim Demaille <akim@epita.fr>
819 * src/reader.c (copy_at): New function.
820 (copy_guard): Use it.
821 (copy_action): Use it.
823 2000-03-17 Akim Demaille <akim@epita.fr>
825 Be kind to translators, save some useless translations.
827 * src/main.c (banner): New function.
828 (fatal_banner): Use it.
829 (warn_banner): Use it.
831 2000-03-17 Akim Demaille <akim@epita.fr>
833 * src/reader.c (copy_definition): Use copy_string and
834 copy_comment. Removed now unused `match', `ended',
836 (copy_comment, copy_string): Moved, to be visible from
839 2000-03-17 Akim Demaille <akim@epita.fr>
841 * src/reader.c (copy_string): Declare `static inline'. No
842 problems with inline, since it is checked by configure.
843 (copy_comment): Likewise.
845 2000-03-17 Akim Demaille <akim@epita.fr>
847 * src/reader.c (packsymbols): Formatting changes.
849 2000-03-17 Akim Demaille <akim@epita.fr>
851 * src/reader.c (copy_comment): New function, factored out from:
852 (copy_action): Use it. Removed now unused `match', `ended',
854 (copy_guard): Likewise.
856 2000-03-17 Akim Demaille <akim@epita.fr>
858 * src/reader.c (copy_string): New function, factored out from:
859 (copy_action): Use it.
860 (copy_guard): Likewise.
862 2000-03-17 Akim Demaille <akim@epita.fr>
864 Change the handling of @s so that they behave exactly like $s.
865 There is now a pseudo variable @$ (readble and writable), location
866 of the lhs of the rule (by default ranging from the location of
867 the first symbol of the rhs, to the location of the last symbol,
868 or, if the rhs is empty, YYLLOC).
870 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
872 (yyparse): When providing a default semantic action, provide a
873 default location action.
874 (after the $): No longer change `*YYLSP', just stack YYLOC the
875 same way you stack YYVAL.
876 * src/reader.c (read_declarations): Use warns.
877 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
878 (copy_action, case '@'): Likewise.
879 Use a standard error message, to save useless work from
882 2000-03-17 Akim Demaille <akim@epita.fr>
884 * src/bison.s1: Formatting and cosmetics changes.
885 * src/reader.c: Likewise.
886 Update the Copyright notice.
888 2000-03-17 Akim Demaille <akim@epita.fr>
890 * src/bison.s1 (#line): All set to `#line' only, since the
891 Makefile now handles them.
893 2000-03-16 Akim Demaille <akim@epita.fr>
895 * src/output.c (output_rule_data): Output the documentation of
897 (Copyright notice): Update.
900 2000-03-16 Akim Demaille <akim@epita.fr>
902 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
903 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
904 One `#if YYDEBUG' remains, since it uses variables which are
905 defined only if `YYDEBUG != 0'.
907 2000-03-16 Akim Demaille <akim@epita.fr>
909 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
910 and related variables so that the similarities are highlighted.
912 2000-03-16 Akim Demaille <akim@epita.fr>
914 * src/bison.s1: Properly indent CPP directives.
916 2000-03-16 Akim Demaille <akim@epita.fr>
918 * src/bison.s1: Properly indent the `alloca' CPP section.
920 2000-03-16 Akim Demaille <akim@epita.fr>
922 Do not hard code values of directories in `configure.in'.
923 Update the `configure' tool chain.
925 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
927 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
928 (AC_OUTPUT): Add m4/Makefile.
929 Bump to bison 1.28a, 1.29 has never been released.
930 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
931 handled via src/Makefile.am.
932 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
933 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
935 * Makefile.am (SUBDIRS): Add m4.
936 (ACLOCAL_AM_FLAGS): New variable.
937 (AUTOMAKE_OPTIONS): Add check-news.
938 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
939 the proper line number and file name.
940 (DEFS): Propagate the location of bison library files and of the
942 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
944 * acinclude.m4: Remove, replaced by the directory m4.
945 * m4/Makefile.am (EXTRA_DIST): New variable.
946 * m4/gettext.m4: New file, from the fileutils.
947 * m4/lcmessage.m4: Likewise
948 * m4/progtest.m4: Likewise.
949 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
951 2000-03-10 Akim Demaille <akim@epita.fr>
954 Formatting changes of various comments.
955 Respect the GNU coding standards at various places.
956 Don't use `_()' when no translation is needed.
958 1999-12-13 Jesse Thilo <jthilo@gnu.org>
961 OS/2 honors TMPDIR environment variable.
963 1999-12-13 Jesse Thilo <jthilo@gnu.org>
965 * doc/bison.texinfo: Tweaked spelling and grammar.
967 Removed reference to price of printed copy.
968 Mention BISON_SIMPLE and BISON_HAIRY.
970 1999-12-13 Jesse Thilo <jthilo@gnu.org>
972 * configure.in, NEWS:
975 1999-10-27 Jesse Thilo <jthilo@gnu.org>
977 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
978 Added reference card.
980 1999-07-26 Jesse Thilo <jthilo@gnu.org>
982 * po/ru.po: Added Russian translation.
984 1999-07-26 Jesse Thilo <jthilo@gnu.org>
986 * configure.in: Added Russian translation.
988 1999-07-06 Jesse Thilo <jthilo@gnu.org>
990 * configure.in, NEWS, README:
991 Released version 1.28.
993 1999-06-14 Jesse Thilo <jthilo@gnu.org>
996 Squashed redefinition warning on some systems.
998 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
999 Have configure build version string instead of relying on ANSI string
1002 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1004 * po/POTFILES.in: Got rid of version.c.
1006 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1008 * acconfig.h, configure.in:
1009 Have configure build version string instead of relying on ANSI string
1012 1999-06-08 Jesse Thilo <jthilo@gnu.org>
1015 Dropped mention of `+' for long-named options.
1017 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1019 * src/files.c: Added <unistd.h> for unlink().
1021 * src/Makefile.am, src/system.h:
1024 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1026 * README: Added a FAQ list.
1028 * configure.in, acconfig.h:
1031 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1033 * doc/FAQ, doc/Makefile.am:
1036 1999-05-19 Jesse Thilo <jthilo@gnu.org>
1038 * src/alloc.h, src/symtab.h, src/version.c:
1039 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1041 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1043 * src/.cvsignore, src/Makefile.am:
1044 Reorganized: sources in `src', documentation in `doc'.
1046 * src/lex.c (literalchar):
1047 fixed the code for escaping double quotes (thanks
1050 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1052 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1053 Adjusted paths to reflect directory reorganization.
1055 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1057 * doc/.cvsignore, doc/Makefile.am:
1058 Reorganized: sources in `src', documentation in `doc'.
1060 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1063 Updated AC_INIT file to reflect directory reorganization.
1065 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1066 Reorganized: sources in `src', documentation in `doc'.
1068 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1071 Don't declare calloc() and realloc() if not necessary.
1073 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1075 * configure.in, acconfig.h, acinclude.m4:
1076 Don't declare calloc() and realloc() if not necessary.
1078 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1080 * po/.cvsignore: Added i18n support.
1082 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1084 * acconfig.h, configure.in, Makefile.am:
1087 1999-03-22 Jesse Thilo <jthilo@gnu.org>
1089 * src/bison.s1: Fixed #line numbers.
1091 1999-03-15 Jesse Thilo <jthilo@gnu.org>
1093 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1094 Added PO files from Translation Project.
1096 1999-03-03 Jesse Thilo <jthilo@gnu.org>
1099 Added support for non-ANSI compilers (ansi2knr).
1101 1999-02-16 Jesse Thilo <jthilo@gnu.org>
1103 * configure.in: Bumped version number to 1.27.
1106 Added `bison.simple' to list of files removed by `make distclean'.
1108 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1110 * src/files.c, src/files.h:
1111 Defined locations of parser files in config.h instead of Makefile.
1113 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1115 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1116 Defined locations of parser files in config.h instead of Makefile.
1118 1999-02-09 Jesse Thilo <jthilo@gnu.org>
1121 Removed inappropriate use of $< macro.
1123 1999-02-05 Jesse Thilo <jthilo@gnu.org>
1125 * po/Makefile.in.in, po/POTFILES.in:
1126 Add `po' directory skeleton.
1128 1999-01-27 Jesse Thilo <jthilo@gnu.org>
1130 * README: Document help-bison list.
1132 * configure.in: Add check for mkstemp().
1134 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1136 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1137 Hush a few compiler warnings.
1140 Add tryclose(), which verifies that fclose was successful.
1141 Hush a couple of compiler warnings.
1143 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1145 * Makefile.am, OChangeLog:
1146 ChangeLog is now automatically generated. Include the old version as
1149 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1151 * 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:
1154 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1156 * doc/bison.texinfo: Fix formatting glitch.
1158 * doc/bison.texinfo: Update FSF address.
1160 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1162 * acconfig.h: Update FSF address.
1164 1999-01-08 Jesse Thilo <jthilo@gnu.org>
1167 Don't define PACKAGE here, since config.h defines it.
1169 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1171 * src/reader.c: Update copyright date.
1174 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1175 favor of output directly to stderr (avoids buffer overruns).
1177 * src/reader.c: Some checks for premature EOF.
1179 * 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:
1180 Use prototypes if the compiler understands them.
1182 * src/files.c: Honor TMPDIR on Unix hosts.
1183 Use prototypes if the compiler understands them.
1186 Fix a couple of buffer overrun bugs.
1187 Use prototypes if the compiler understands them.
1189 * src/system.h: Include unistd.h and ctype.h.
1190 Use #ifdef instead of #if for NLS symbols.
1192 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1194 * doc/bison.texinfo:
1195 Delete comment "consider using @set for edition number, etc..." since
1196 we now are doing so.
1198 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1201 Use prototypes if the compiler understands them.
1203 * NEWS: Document 1.26 highlights.
1205 * Makefile.am: Require Automake 1.3 or later.
1208 Use prototypes if the compiler understands them.
1210 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1213 Use VERSION symbol from automake for version number.
1215 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1217 * acconfig.h, configure.in, version.cin:
1218 Use VERSION symbol from automake for version number.
1220 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1223 Distribute original version of simple parser (bison.s1), not built
1224 version (bison.simple).
1226 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1228 * doc/bison.texinfo: Add info dir entry.
1230 * doc/bison.texinfo:
1231 Let automake put version number into documentation.
1233 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1235 * src/bison.cld, src/build.com, src/vmshlp.mar:
1236 Add non-RCS files from /gd/gnu/bison.
1238 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1241 Document the BISON_HAIRY and BISON_SIMPLE variables.
1243 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1245 * src/version.c: Build version.c automatically.
1248 Fix token numbering (used to start at 258, not 257).
1250 * src/system.h: Include config.h.
1252 * src/getargs.c: Update bug report address.
1254 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1255 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1257 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1260 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1262 * configure.in, version.cin:
1263 Build version.c automatically.
1265 * AUTHORS: Add AUTHORS file.
1267 * README: Update bug report address.
1270 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1272 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1275 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1277 * doc/bison.texinfo: Clean up some formatting.
1279 1998-05-05 Richard Stallman <rms@gnu.org>
1281 * doc/bison.texinfo:
1282 Explain better why to make a pure parser.
1284 1998-01-05 Richard Stallman <rms@gnu.org>
1286 * src/files.c (openfiles):
1287 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1288 find a temporary directory, if possible. Do not unlink files while
1291 1997-08-25 Richard Stallman <rms@gnu.org>
1293 * src/reader.c (stack_offset;):
1294 Change some warni to warns.
1296 * src/lex.c (literalchar): Use warns, not warni.
1298 1997-06-28 Richard Stallman <rms@gnu.org>
1300 * src/bison.s1: Add a Bison version comment.
1302 * src/main.c (fatal, warn, berror):
1305 1997-06-28 Richard Stallman <rms@gnu.org>
1307 * Makefile.in (bison_version): New variable.
1308 (dist): Use that variable.
1309 (bison.s1): Substitute the Bison version into bison.simple.
1311 * bison.simple: Add a Bison version comment.
1313 1997-06-18 Richard Stallman <rms@gnu.org>
1315 * src/main.c (fatal, warn, berror):
1316 Make error messages standard.
1317 (toomany): Improve error message text.
1319 * 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:
1320 new.h renamed to alloc.h.
1322 1997-06-18 Richard Stallman <rms@gnu.org>
1324 * Makefile.in: new.h renamed to alloc.h.
1326 1997-05-24 Richard Stallman <rms@gnu.org>
1328 * src/lex.c (literalchar):
1329 Fix the code for escaping \, " and '.
1331 (lex): Avoid trouble when there are many chars
1332 to discard in a char literal with just several chars in it.
1334 1997-05-17 Richard Stallman <rms@gnu.org>
1337 Use malloc, if using alloca is troublesome.
1338 (YYSTACK_USE_ALLOCA): New flag macro.
1339 Define it for some systems and compilers.
1340 (YYSTACK_ALLOC): New macro.
1341 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1342 If it was malloc'd, free it.
1344 1997-05-17 Richard Stallman <rms@gnu.org>
1347 Use malloc, if using alloca is troublesome.
1348 (YYSTACK_USE_ALLOCA): New flag macro.
1349 Define it for some systems and compilers.
1350 (YYSTACK_ALLOC): New macro.
1351 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1352 If it was malloc'd, free it.
1354 1997-04-23 Richard Stallman <rms@gnu.org>
1357 (alloca) [__hpux]: Always define as __builtin_alloca.
1359 1997-04-23 Richard Stallman <rms@gnu.org>
1362 (alloca) [__hpux]: Always define as __builtin_alloca.
1364 1997-04-22 Richard Stallman <rms@gnu.org>
1367 [__hpux]: Include alloca.h (right for HPUX 10)
1368 instead of declaring alloca (right for HPUX 9).
1370 * src/bison.s1 (__yy_memcpy):
1371 Declare arg `count' as unsigned int.
1372 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1374 1997-04-22 Richard Stallman <rms@gnu.org>
1377 [__hpux]: Include alloca.h (right for HPUX 10)
1378 instead of declaring alloca (right for HPUX 9).
1380 * bison.simple (__yy_memcpy):
1381 Declare arg `count' as unsigned int.
1382 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1384 1997-01-03 Richard Stallman <rms@gnu.org>
1386 * src/allocate.c: [__STDC__ or _MSC_VER]:
1387 Declare calloc and realloc to return void *.
1389 1997-01-02 Richard Stallman <rms@gnu.org>
1392 [_MSC_VER]: Include stdlib.h and process.h.
1393 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
1395 * src/main.c (main): Return FAILURE as a value.
1396 (printable_version): Declare arg as int, not char.
1398 1997-01-02 Richard Stallman <rms@gnu.org>
1400 * Makefile.in (dist):
1401 Explicitly check for symlinks, and copy them.
1403 1996-12-19 Richard Stallman <rms@gnu.org>
1406 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
1408 1996-12-18 Paul Eggert <eggert@gnu.org>
1410 * src/bison.s1 (yyparse):
1411 If __GNUC__ and YYPARSE_PARAM are both defined,
1412 declare yyparse to have a void * argument.
1414 1996-12-18 Paul Eggert <eggert@gnu.org>
1416 * bison.simple (yyparse):
1417 If __GNUC__ and YYPARSE_PARAM are both defined,
1418 declare yyparse to have a void * argument.
1420 1996-12-17 Richard Stallman <rms@gnu.org>
1422 * src/reduce.c (nbits): Add some casts.
1424 1996-08-12 Richard Stallman <rms@gnu.org>
1426 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
1428 1996-08-12 Richard Stallman <rms@gnu.org>
1430 * bison.simple: Test _MSDOS as well as _MSDOS_.
1432 1996-07-31 Richard Stallman <rms@gnu.org>
1435 [__sun && __i386]: Include alloca.h.
1437 1996-07-31 Richard Stallman <rms@gnu.org>
1440 [__sun && __i386]: Include alloca.h.
1442 1996-07-30 Richard Stallman <rms@gnu.org>
1444 * src/bison.s1: Comment change.
1446 * src/bison.s1: Test _MSDOS_, not MSDOS.
1448 1996-07-30 Richard Stallman <rms@gnu.org>
1450 * bison.simple: Comment change.
1452 * bison.simple: Test _MSDOS_, not MSDOS.
1454 1996-06-01 Richard Stallman <rms@gnu.org>
1456 * 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:
1457 Insert `_' macro around many string constants.
1460 Insert `_' macro around many string constants.
1462 (main): Call setlocale, bindtextdomain and textdomain.
1464 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
1465 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
1466 [ENABLE_NLS]: Include libintl.h.
1467 [ENABLE_NLS] (gettext): Define.
1468 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
1469 (N_, PACKAGE, LOCALEDIR): New macros.
1471 1996-06-01 Richard Stallman <rms@gnu.org>
1473 * POTFILES.in: New file.
1475 * Makefile.in (allocate.o):
1476 Define target explicitly.
1478 * Makefile.in (CFLAGS): Set to @CFLAGS@.
1479 (LDFLAGS): Set to @LDFLAGS@.
1480 (configure): Run autoconf only if preceding `cd' succeeds.
1481 (bison.s1): Redirect output to temporary file then move the
1482 temporary to the target, rather than redirecting directly to bison.s1.
1483 (clean): Remove config.status and config.log.
1484 (distclean): Don't remove config.status here.
1486 1996-05-12 Richard Stallman <rms@gnu.org>
1489 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1491 1996-05-12 Richard Stallman <rms@gnu.org>
1494 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1496 1996-05-11 Richard Stallman <rms@gnu.org>
1498 * src/bison.s1 (__yy_memcpy):
1499 Really reorder the args, as was supposedly done on Feb 14 1995.
1500 (yyparse): Calls changed accordingly.
1502 1996-05-11 Richard Stallman <rms@gnu.org>
1504 * Makefile.in (dist): Don't use $(srcdir).
1506 * bison.simple (__yy_memcpy):
1507 Really reorder the args, as was supposedly done on Feb 14 1995.
1508 (yyparse): Calls changed accordingly.
1510 1996-01-27 Richard Stallman <rms@gnu.org>
1512 * src/output.c (output_rule_data):
1513 Test YYERROR_VERBOSE in the conditional
1514 around the definition of ttyname.
1516 1995-12-29 Richard Stallman <rms@gnu.org>
1519 Fix line numbers in #line commands.
1521 1995-12-29 Richard Stallman <rms@gnu.org>
1524 Fix line numbers in #line commands.
1526 1995-12-27 Richard Stallman <rms@gnu.org>
1528 * src/bison.s1 (YYPARSE_PARAM_DECL):
1529 In C++, make it always null.
1530 (YYPARSE_PARAM_ARG): New macro.
1531 (yyparse): Use YYPARSE_PARAM_ARG.
1533 1995-12-27 Richard Stallman <rms@gnu.org>
1535 * bison.simple (YYPARSE_PARAM_DECL):
1536 In C++, make it always null.
1537 (YYPARSE_PARAM_ARG): New macro.
1538 (yyparse): Use YYPARSE_PARAM_ARG.
1540 1995-11-29 Richard Stallman <rms@gnu.org>
1542 * doc/bison.texinfo:
1543 Describe literal string tokens, %raw, %no_lines, %token_table.
1545 1995-11-29 Daniel Hagerty <hag@gnu.org>
1547 * doc/bison.texinfo: Fixed update date
1549 1995-10-16 Richard Stallman <rms@gnu.org>
1551 * src/version.c: Version 1.25.
1553 1995-10-16 Richard Stallman <rms@gnu.org>
1555 * NEWS: *** empty log message ***
1557 1995-10-16 Richard Stallman <rms@gnu.org>
1559 * doc/bison.1, doc/bison.rnh:
1562 1995-10-15 Richard Stallman <rms@gnu.org>
1564 * src/vmsgetargs.c, src/getargs.c:
1565 Added -n, -k, and -raw switches.
1566 (noparserflag, toknumflag, rawtoknumflag): New variables.
1568 * src/symtab.h (SALIAS):
1569 New #define for adding aliases to %token.
1570 (struct bucket): Added `alias' field.
1572 * src/reduce.c (reduce_grammar):
1573 Revise error message.
1574 (print_notices): Remove final `.' from error message.
1576 * src/reader.c (reader_output_yylsp):
1578 (readgram): Use `#if 0' around code that accepted %command
1579 inside grammar rules: The documentation doesn't allow it,
1580 and it will fail since the %command processors scan for the next %.
1581 (parse_token_decl): Extended the %token
1582 declaration to allow a multi-character symbol as an alias.
1583 (parse_thong_decl): New function.
1584 (read_declarations): Added %thong declarations.
1585 (read_declarations): Handle NOOP to deal with allowing
1586 % declarations as another means to specify the flags.
1587 (readgram): Allow %prec prior to semantics embedded in a rule.
1588 (skip_to_char, read_declarations, copy_definition)
1589 (parse_token_decl, parse_start_decl, parse_type_decl)
1590 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
1591 (get_type_name, copy_guard, copy_action, readgram)
1592 (get_type, packsymbols): Revised most error messages.
1593 Changed `fatal' to `warnxxx' to avoid aborting for error.
1594 Revised and use multiple warnxxx functions to avoid using VARARGS1.
1595 (read_declarations): Improve the error message for
1596 an invalid character. Do not abort.
1597 (read_declarations, copy_guard, copy_action): Use
1598 printable_version to avoid unprintable characters in printed output.
1599 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
1600 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
1601 Allow the type of a non-terminal can be given
1602 more than once, as long as all specifications give the same type.
1605 (output_headers, output_trailers, output, output_gram)
1606 (output_rule_data): Implement noparserflag variable.
1607 Implement toknumflag variable.
1608 (output): Call reader_output_yylsp to output LTYPESTR.
1610 * src/main.c (main):
1611 If reader sees an error, don't process the grammar.
1612 (fatals): Updated to not use VARARGS1.
1613 (printable_version, int_to_string, warn, warni, warns, warnss)
1614 (warnsss): New error reporting functions. Avoid abort for error.
1617 Added THONG and NOOP for alias processing.
1618 Added SETOPT for the new code that allows setting options with %flags.
1621 Include getopt.h. Add some extern decls.
1622 (safegetc): New function to deal with EOF gracefully.
1623 (literalchar); new function to deal with reading \ escapes.
1624 (lex): Use literalchar.
1625 (lex): Implemented "..." tokens.
1626 (literalchar, lex, parse_percent_token): Made tokenbuffer
1627 always contain the token. This includes growing the token
1628 buffer while reading an integer.
1629 (parse_percent_token): Replaced if-else statement with percent_table.
1630 (parse_percent_token): Added % declarations as another
1631 way to specify the flags -n, -l, and -r. Also added hooks for
1632 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
1633 major changes to files.c.
1634 (lex) Retain in the incoming stream a character following
1636 (skip_white_space, lex): Revised most error messages
1637 and changed fatal to warn to avoid aborting.
1638 (percent_table): Added %thong declarations.
1640 * src/gram.h: Comment changes.
1642 * src/files.c (openfiles, open_extra_files, done):
1644 and actfile file. Handle noparserflag. Both for -n switch.
1646 * src/conflicts.c (resolve_sr_conflict):
1647 Remove use of alloca.
1649 1995-06-01 Jim Meyering <meyering@gnu.org>
1651 * doc/bison.texinfo: *** empty log message ***
1653 1995-05-06 Richard Stallman <rms@gnu.org>
1655 * src/bison.s1: Comment change.
1657 1995-05-06 Richard Stallman <rms@gnu.org>
1659 * bison.simple: Comment change.
1661 1995-05-03 Richard Stallman <rms@gnu.org>
1663 * src/version.c: Version now 1.24.
1665 * src/bison.s1: Change distribution terms.
1667 * src/version.c: Version now 1.23.
1669 1995-05-03 Richard Stallman <rms@gnu.org>
1671 * doc/bison.texinfo:
1672 Rewrite "Conditions for Using Bison".
1673 Update version to 1.24.
1675 1995-05-03 Richard Stallman <rms@gnu.org>
1677 * bison.simple: Change distribution terms.
1679 1995-02-23 Richard Stallman <rms@gnu.org>
1681 * src/files.c: Test __VMS_POSIX as well as VMS.
1683 1995-02-14 Jim Meyering <meyering@gnu.org>
1685 * src/bison.s1 (__yy_memcpy):
1686 Renamed from __yy_bcopy to avoid
1687 confusion. Reverse FROM and TO arguments to be consistent with
1690 1995-02-14 Jim Meyering <meyering@gnu.org>
1692 * bison.simple (__yy_memcpy):
1693 Renamed from __yy_bcopy to avoid
1694 confusion. Reverse FROM and TO arguments to be consistent with
1697 1994-11-10 David J. MacKenzie <djm@gnu.org>
1703 * Makefile.in (DISTFILES): Include NEWS.
1705 * Makefile.in (DISTFILES):
1706 Include install-sh, not install.sh.
1708 * configure.in: Update to Autoconf v2 macro names.
1710 1994-10-05 David J. MacKenzie <djm@gnu.org>
1712 * Makefile.in: fix typo
1714 * Makefile.in (prefix, exec_prefix):
1715 Let configure set them.
1717 1994-09-28 David J. MacKenzie <djm@gnu.org>
1719 * Makefile.in: Set datadir to $(prefix)/share.
1721 1994-09-15 Richard Stallman <rms@gnu.org>
1724 Update copyright notice and GPL version.
1726 1994-09-15 Richard Stallman <rms@gnu.org>
1729 Update copyright notice and GPL version.
1731 1994-07-12 Richard Stallman <rms@gnu.org>
1733 * src/reduce.c, src/reader.c:
1736 1994-05-05 David J. MacKenzie <djm@gnu.org>
1738 * Makefile.in: entered into RCS
1740 1994-03-26 Richard Stallman <rms@gnu.org>
1742 * src/bison.s1: entered into RCS
1744 1994-03-26 Richard Stallman <rms@gnu.org>
1746 * bison.simple: entered into RCS
1748 1994-03-25 Richard Stallman <rms@gnu.org>
1750 * src/main.c: entered into RCS
1752 1994-03-24 Richard Stallman <rms@gnu.org>
1754 * src/conflicts.c: entered into RCS
1756 1994-01-02 Richard Stallman <rms@gnu.org>
1758 * Makefile.in: *** empty log message ***
1760 1993-11-21 Richard Stallman <rms@gnu.org>
1762 * src/bison.s1: *** empty log message ***
1764 1993-11-21 Richard Stallman <rms@gnu.org>
1766 * doc/bison.texinfo: entered into RCS
1768 * doc/bison.texinfo: *** empty log message ***
1770 1993-11-21 Richard Stallman <rms@gnu.org>
1772 * bison.simple: *** empty log message ***
1774 1993-10-25 David J. MacKenzie <djm@gnu.org>
1776 * doc/bison.texinfo: *** empty log message ***
1778 1993-10-19 Richard Stallman <rms@gnu.org>
1780 * src/bison.s1: *** empty log message ***
1782 1993-10-19 Richard Stallman <rms@gnu.org>
1784 * bison.simple: *** empty log message ***
1786 1993-10-14 Richard Stallman <rms@gnu.org>
1788 * src/bison.s1: *** empty log message ***
1790 1993-10-14 Richard Stallman <rms@gnu.org>
1792 * bison.simple: *** empty log message ***
1794 1993-09-14 David J. MacKenzie <djm@gnu.org>
1796 * doc/bison.texinfo: *** empty log message ***
1798 1993-09-13 Noah Friedman <friedman@gnu.org>
1800 * Makefile.in: *** empty log message ***
1802 1993-09-10 Richard Stallman <rms@gnu.org>
1804 * src/conflicts.c: *** empty log message ***
1806 * src/system.h: entered into RCS
1808 1993-09-10 Richard Stallman <rms@gnu.org>
1810 * doc/bison.1: entered into RCS
1812 1993-09-06 Noah Friedman <friedman@gnu.org>
1814 * src/version.c: entered into RCS
1816 1993-09-06 Noah Friedman <friedman@gnu.org>
1818 * Makefile.in: *** empty log message ***
1820 1993-07-30 David J. MacKenzie <djm@gnu.org>
1822 * Makefile.in: *** empty log message ***
1824 1993-07-24 Richard Stallman <rms@gnu.org>
1826 * src/bison.s1: *** empty log message ***
1828 1993-07-24 Richard Stallman <rms@gnu.org>
1830 * bison.simple: *** empty log message ***
1832 1993-07-08 David J. MacKenzie <djm@gnu.org>
1834 * Makefile.in: *** empty log message ***
1836 1993-07-04 Richard Stallman <rms@gnu.org>
1838 * src/bison.s1: *** empty log message ***
1840 1993-07-04 Richard Stallman <rms@gnu.org>
1842 * bison.simple: *** empty log message ***
1844 1993-06-26 David J. MacKenzie <djm@gnu.org>
1846 * src/getargs.c: entered into RCS
1848 1993-06-26 David J. MacKenzie <djm@gnu.org>
1850 * doc/bison.texinfo: *** empty log message ***
1852 * doc/bison.1: New file.
1854 1993-06-25 Richard Stallman <rms@gnu.org>
1856 * src/getargs.c: New file.
1858 1993-06-16 Richard Stallman <rms@gnu.org>
1860 * src/bison.s1: *** empty log message ***
1862 1993-06-16 Richard Stallman <rms@gnu.org>
1864 * bison.simple: *** empty log message ***
1866 1993-06-03 Richard Stallman <rms@gnu.org>
1868 * src/bison.s1: New file.
1870 1993-06-03 Richard Stallman <rms@gnu.org>
1872 * doc/bison.texinfo: *** empty log message ***
1874 1993-06-03 Richard Stallman <rms@gnu.org>
1876 * bison.simple: New file.
1878 1993-05-19 Richard Stallman <rms@gnu.org>
1880 * doc/bison.texinfo: New file.
1882 1993-05-07 Noah Friedman <friedman@gnu.org>
1884 * Makefile.in: *** empty log message ***
1886 1993-04-28 Noah Friedman <friedman@gnu.org>
1888 * src/reader.c: *** empty log message ***
1890 1993-04-23 Noah Friedman <friedman@gnu.org>
1892 * src/alloc.h: entered into RCS
1894 1993-04-20 David J. MacKenzie <djm@gnu.org>
1896 * src/version.c: *** empty log message ***
1898 * src/files.c, src/allocate.c:
1901 * src/reader.c: *** empty log message ***
1903 * src/lex.c: entered into RCS
1905 * src/conflicts.c: New file.
1907 * src/symtab.c: entered into RCS
1909 * src/alloc.h: New file.
1911 * src/LR0.c: entered into RCS
1913 1993-04-18 Noah Friedman <friedman@gnu.org>
1915 * src/reader.c: New file.
1917 * src/version.c: *** empty log message ***
1919 1993-04-18 Noah Friedman <friedman@gnu.org>
1921 * Makefile.in: *** empty log message ***
1923 1993-04-17 Noah Friedman <friedman@gnu.org>
1925 * Makefile.in: *** empty log message ***
1927 1993-04-15 Richard Stallman <rms@gnu.org>
1929 * src/main.c, src/files.c:
1932 1993-04-15 Noah Friedman <friedman@gnu.org>
1934 * configure.in: entered into RCS
1936 * configure.in: *** empty log message ***
1938 * configure.in: New file.
1940 1993-04-14 Richard Stallman <rms@gnu.org>
1942 * Makefile.in: New file.
1944 1993-04-13 Richard Stallman <rms@gnu.org>
1946 * src/version.c: New file.
1948 1993-03-25 Richard Stallman <rms@gnu.org>
1950 * src/output.c: entered into RCS
1952 1992-09-25 Richard Stallman <rms@gnu.org>
1954 * configure.bat: entered into RCS
1956 1992-06-22 Richard Stallman <rms@gnu.org>
1958 * src/vmsgetargs.c: entered into RCS
1960 1992-06-22 Richard Stallman <rms@gnu.org>
1962 * doc/bison.rnh: entered into RCS
1964 1992-04-20 David J. MacKenzie <djm@gnu.org>
1966 * README: entered into RCS
1968 1992-01-22 Richard Stallman <rms@gnu.org>
1970 * src/machine.h: entered into RCS
1972 1991-12-21 Richard Stallman <rms@gnu.org>
1974 * src/lalr.c, src/closure.c:
1977 1991-12-20 Richard Stallman <rms@gnu.org>
1979 * src/state.h: entered into RCS
1981 1991-12-18 Richard Stallman <rms@gnu.org>
1983 * src/print.c, src/nullable.c, src/derives.c:
1986 1991-11-03 David J. MacKenzie <djm@gnu.org>
1988 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
1991 1988-09-09 Richard Stallman <rms@gnu.org>
1993 * src/bison.hairy: entered into RCS
1995 1987-12-16 Richard Stallman <rms@gnu.org>
1997 * REFERENCES: entered into RCS