1 2001-07-18 Akim Demaille <akim@epita.fr>
3 * Makefile.maint, GNUmakefile: New, from Autoconf 2.52.
4 * config/prev-version.txt, config/move-if-change: New.
7 2001-07-08 Pascal Bart <pascal.bart@epita.fr>
9 * src/bison.simple (yyparse): Suppress warning `comparaison
10 between signed and unsigned'.
12 2001-07-05 Pascal Bart <pascal.bart@epita.fr>
14 * src/getargs.h (raw_flag): Remove.
15 * src/getargs.c: Die on `-r'/`--raw'.
16 * src/lex.c (parse_percent_token): Die on `%raw'.
17 * src/reader.c (output_token_defines): Suppress call to `raw_flag'.
18 * tests/calc.at: Suppress test with option `--raw'.
20 2001-07-14 Akim Demaille <akim@epita.fr>
23 * configure.in: Require Autoconf 2.50.
24 Update to gettext 0.10.38.
26 2001-03-16 Akim Demaille <akim@epita.fr>
28 * doc/bison.texinfo: ANSIfy the examples.
30 2001-03-16 Akim Demaille <akim@epita.fr>
32 * getargs.c (skeleton): New variable.
33 (longopts): --skeleton is a new option.
34 (shortopts, getargs): -S is a new option.
35 * getargs.h: Declare skeleton.
36 * output.c (output_parser): Use it.
38 2001-03-16 Akim Demaille <akim@epita.fr>
40 * m4/strerror_r.m4: New.
41 * m4/error.m4: Run AC_FUNC_STRERROR_R.
42 * lib/error.h, lib/error.c: Update.
44 2001-03-16 Akim Demaille <akim@epita.fr>
46 * src/getargs.c (longopts): Clean up.
48 2001-02-21 Akim Demaille <akim@epita.fr>
50 * src/reader.c (gensym): `gensym_count' is your own.
51 Use a static buf to create the symbol name, as token_buffer is no
54 2001-02-08 Akim Demaille <akim@epita.fr>
56 * src/conflicts.c (conflict_report): Be sure not to append to res
57 between two calls, which could happen if both first sprintf were
58 skipped, but not the first cp += strlen.
60 2001-02-08 Akim Demaille <akim@epita.fr>
62 * lib/memchr.c, lib/stpcpy.c, lib/strndup.c, lib/strnlen.c:
63 New, from fileutils 4.0.37.
64 * configure.in: Require Autoconf 2.49c. I took some time before
65 making this decision. This is the only way out for portability
66 issues in Bison, it would mean way too much duplicate effort to
67 import in Bison features implemented in 2.49c since 2.13.
68 AC_REPLACE_FUNCS and AC_CHECK_DECLS the functions above.
70 2001-02-02 Akim Demaille <akim@epita.fr>
72 * lib/malloc.c, lib/realloc.c: New, from the fileutils 4.0.37.
73 * lib/xalloc.h, lib/xmalloc.c: Update.
75 2001-01-19 Akim Demaille <akim@epita.fr>
77 Get rid of the ad hoc handling of token_buffer in the scanner: use
80 * src/lex.c (token_obstack): New.
81 (init_lex): Initialize it. No longer call...
82 (grow_token_buffer): this. Remove it.
83 Adjust all the places which used it to use the obstack.
85 2001-01-19 Akim Demaille <akim@epita.fr>
87 * src/lex.h: Rename all the tokens:
88 s/\bENDFILE\b/tok_eof/g;
89 s/\bIDENTIFIER\b/tok_identifier/g;
91 Let them be enums, not #define, to ease debugging.
94 2001-01-18 Akim Demaille <akim@epita.fr>
96 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
97 * src/lex.c (maxtoken, grow_token_buffer): Static.
99 2001-01-18 Akim Demaille <akim@epita.fr>
101 Since we now use obstacks, more % directives can be enabled.
103 * src/lex.c (percent_table): Also accept `%yacc',
104 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
106 Handle the actions for `%semantic_parser' and `%pure_parser' here,
107 instead of returning a token.
108 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
109 * src/reader.c (read_declarations): Adjust.
110 * src/files.c (open_files): Don't call `compute_base_names', don't
111 compute `attrsfile' since they depend upon data which might be
112 *in* the input file now.
113 (output_files): Do it here.
114 * src/output.c (output_headers): Document the fact that this patch
115 introduces a guaranteed SEGV for semantic parsers.
116 * doc/bison.texinfo: Document them.
117 * tests/suite.at: Exercise these %options.
119 2000-12-20 Akim Demaille <akim@epita.fr>
121 Also handle the output file (--verbose) with obstacks.
123 * files.c (foutput): Remove.
124 (output_obstack): New.
125 Adjust all dependencies.
126 * src/conflicts.c: Return a string.
127 * src/system.h (obstack_grow_string): Rename as...
128 (obstack_sgrow): this. Be ready to work with non literals.
129 (obstack_fgrow4): New.
131 2000-12-20 Akim Demaille <akim@epita.fr>
133 * src/files.c (open_files): Fix the computation of short_base_name
134 in the case of `-o foo.tab.c'.
136 2000-12-20 Akim Demaille <akim@epita.fr>
138 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
139 (copy_dollar): Now that everything uses obstacks, get rid of the
142 2000-12-20 Akim Demaille <akim@epita.fr>
144 * src/files.c (open_files): Actually the `.output' file is based
145 on the short_base_name, not base_name.
146 * tests/suite.at (Checking output file names): Adjust.
148 2000-12-20 Akim Demaille <akim@epita.fr>
150 * src/bison.s1: Remove, we now use directly...
151 * src/bison.simple: this.
152 * src/Makefile.am: Use pkgdata instead of data.
154 2000-12-20 Akim Demaille <akim@epita.fr>
156 * src/files.c (guard_obstack): New.
157 (open_files): Initialize it.
158 (output_files): Dump it...
159 * src/files.h: Export it.
160 * src/reader.c (copy_guard): Use it.
162 2000-12-19 Akim Demaille <akim@epita.fr>
164 * src/files.c (outfile, defsfile, actfile): Removed as global
166 (open_files): Don't compute them.
167 (output_files): Adjust.
168 (base_name, short_base_name): Be global.
171 2000-12-19 Akim Demaille <akim@epita.fr>
173 * src/files.c (strsuffix): New.
174 (stringappend): Be just like strcat but allocate.
175 (base_names): Eve out from open_files.
176 Try to simplify the rather hairy computation of base_name and
178 (open_files): Use it.
179 * tests/suite.at (Checking output file names): New test.
181 2000-12-19 Akim Demaille <akim@epita.fr>
183 * src/system.h (obstack_grow_literal_string): Rename as...
184 (obstack_grow_string): this.
185 * src/output.c (output_parser): Recognize `%% actions' instead of
187 * src/bison.s1: s/$/%% actions/.
188 * src/bison.hairy: Likewise.
190 2000-12-19 Akim Demaille <akim@epita.fr>
192 * src/output.c (output_parser): Compute the `#line' lines when
194 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
195 Suggested by Hans Aberg.
197 2000-12-19 Akim Demaille <akim@epita.fr>
199 Let the handling of the skeleton files be local to the procedures
202 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
204 (fparser, open_extra_files): Remove.
205 (open_files, output_files): Don't take care of fparser.
206 * src/files.h: Adjust.
207 * src/output.c (output_parser): Open and close the file to the
209 * src/reader.c (read_declarations): When %semantic_parser, open
212 2000-12-19 Akim Demaille <akim@epita.fr>
214 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
215 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
217 2000-12-19 Akim Demaille <akim@epita.fr>
219 * src/files.c (open_files): Yipee! We no longer need all the code
220 looking for `/tmp' since we have no tmp file.
222 2000-12-19 Akim Demaille <akim@epita.fr>
224 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
226 * src/files.c (open_files): Less dependency on MSDOS etc.
228 2000-12-14 Akim Demaille <akim@epita.fr>
230 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
231 Provide a default definition.
232 Use it when executing the default @ action.
233 * src/reader.c (reader_output_yylsp): No longer include
234 `timestamp' and `text' in the default YYLTYPE.
236 2000-12-12 Akim Demaille <akim@epita.fr>
238 * src/reader.c (copy_definition, parse_union_decl, copy_action)
239 (copy_guard): Quote the file names.
240 Reported by Laurent Mascherpa.
242 2000-12-12 Akim Demaille <akim@epita.fr>
244 * src/output.c (output_headers, output_program, output): Be sure
245 to escape special characters when outputting filenames.
246 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
247 (output_headers): Don't depend on them, Use ACTSTR.
249 2000-11-17 Akim Demaille <akim@epita.fr>
251 * lib/obstack.h: Formatting changes.
252 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
253 prevents type checking.
254 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
255 cast the value to (void *): assigning a `foo *' to a `void *'
257 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
258 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
261 2000-11-17 Akim Demaille <akim@epita.fr>
263 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
265 (suite.m4, regression.m4, calc.m4): these.
266 * tests/atgeneral.m4: Update from CVS Autoconf.
268 2000-11-17 Akim Demaille <akim@epita.fr>
270 * tests/regression.m4 (%union and --defines): New test,
271 demonstrating a current bug in the obstack implementation.
273 2000-11-17 Akim Demaille <akim@epita.fr>
275 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
277 Use them to declare the variables which are global or local to
280 2000-11-17 Akim Demaille <akim@epita.fr>
282 * acconfig.h: Remove, no longer used.
284 2000-11-07 Akim Demaille <akim@epita.fr>
286 * src: s/Copyright (C)/Copyright/g.
288 2000-11-07 Akim Demaille <akim@epita.fr>
290 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
292 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
294 2000-11-07 Akim Demaille <akim@epita.fr>
296 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
297 Merge in a single CPP if/else.
299 2000-11-07 Akim Demaille <akim@epita.fr>
301 * src/output.c (output): Remove useless variables.
302 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
303 argument `data' for consistency with the prototypes.
305 (obstack_copy, obstack_copy0): Rename the second argument as
306 `address' for consistency. Qualify it `const'.
307 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
308 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
309 `const' their input argument (`data' or `address').
310 Adjust the corresponding macros to include `const' in casts.
312 2000-11-03 Akim Demaille <akim@epita.fr>
314 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
315 s/PFILE1/BISON_HAIRY/.
318 2000-11-03 Akim Demaille <akim@epita.fr>
320 For some reason, this was not applied.
322 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
323 `unlink': it's no longer used.
325 2000-11-03 Akim Demaille <akim@epita.fr>
327 * src/files.c (skeleton_find): New function, eved out of...
328 (open_files, open_extra_files): here.
330 2000-11-03 Akim Demaille <akim@epita.fr>
334 * src/files.c (obstack_save): New function.
336 (output_files): this.
338 * src/main.c (main): Don't use `atexit' to register `done', since
339 it no longer has to remove tmp files, just call `output_files'
340 when there are no errors.
342 2000-11-02 Akim Demaille <akim@epita.fr>
344 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
345 `unlink': it's no longer used.
346 * src/files.h: Formatting changes.
348 2000-11-02 Akim Demaille <akim@epita.fr>
350 Remove the last uses of mktemp and unlink/delete.
352 * src/files.c (fdefines, ftable): Removed.
353 (defines_ostack, table_obstack): New.
354 Adjust dependencies of the former into uses of the latter.
355 * src/output.c (output_short_or_char_table, output_short_table):
356 Convert to using obstacks.
357 * src/reader.c (copy_comment2): Accept one FILE * and two
359 (output_token_defines, reader_output_yylsp): Use obstacks.
360 * src/system.h (obstack_fgrow3): New.
362 2000-11-01 Akim Demaille <akim@epita.fr>
364 Change each use of `fattrs' into a use of `attrs_obstack'.
366 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
367 * src/files.c (fattrs): Remove.
368 (attrs_obstack): New.
369 Adjust all dependencies.
370 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
372 2000-11-01 Akim Demaille <akim@epita.fr>
375 Change each use of `faction' into a use of `action_obstack'.
377 * lib/obstack.h, lib/obstack.c: New files.
378 * src/files.c (faction): Remove.
379 (action_obstack): New.
380 Adjust all dependencies.
382 2000-10-20 Akim Demaille <akim@epita.fr>
384 * lib/quote.h (PARAMS): New macro. Use it.
386 2000-10-16 Akim Demaille <akim@epita.fr>
388 * src/output.c (output_short_or_char_table): New function.
389 (output_short_table, output_token_translations): Use it.
390 (goto_actions): Use output_short_table.
392 2000-10-16 Akim Demaille <akim@epita.fr>
394 * src/symtab.c (bucket_new): New function.
397 * src/output.c (output_short_table): New argument to display the
398 comment associated with the table.
400 (output_gram): Use it.
401 (output_rule_data): Nicer output layout for YYTNAME.
403 2000-10-16 Akim Demaille <akim@epita.fr>
405 * src/lex.c (read_typename): New function.
407 * src/reader.c (copy_dollar): Likewise.
409 2000-10-16 Akim Demaille <akim@epita.fr>
411 * src/reader.c (copy_comment2): Expect the input stream to be on
412 the `/' which is suspected to open a comment, instead of being
413 called after `//' or `/*' was read.
414 (copy_comment, copy_definition, parse_union_decl, copy_action)
415 (copy_guard): Adjust.
417 2000-10-16 Akim Demaille <akim@epita.fr>
419 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
420 `read_signed_integer'.
422 2000-10-16 Akim Demaille <akim@epita.fr>
424 * src/reader.c (copy_dollar): New function.
425 (copy_guard, copy_action): Use it.
427 2000-10-16 Akim Demaille <akim@epita.fr>
429 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
430 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
431 New files, from Fileutils 4.0.27.
432 * src/main.c (printable_version): Remove.
433 * src/lex.c, src/reader.c: Use `quote'.
435 2000-10-04 Akim Demaille <akim@epita.fr>
437 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
439 2000-10-04 Akim Demaille <akim@epita.fr>
441 * doc/bison.texinfo: Various typos spotted by Neil Booth.
443 2000-10-04 Akim Demaille <akim@epita.fr>
445 When a literal string is used to define two different tokens,
446 `bison -v' segfaults.
447 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
449 * tests/regression.m4: New file.
450 Include the core of the sample provided by Piotr Gackiewicz.
451 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
454 2000-10-04 Akim Demaille <akim@epita.fr>
456 * src/reader.c (parse_expect_decl): Keep `count' within the size
460 2000-10-02 Paul Eggert <eggert@twinsun.com>
462 * bison.s1 (yyparse): Assign the default value
463 unconditionally, to avoid a GCC warning and make the parser a
466 2000-10-02 Akim Demaille <akim@epita.fr>
468 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
471 2000-10-02 Akim Demaille <akim@epita.fr>
473 * src/derives.c, src/print.c, src/reduce.c: To ease the
474 translation, move some `\n' out of the translated strings.
476 2000-10-02 Akim Demaille <akim@epita.fr>
478 The location tracking mechanism is precious for parse error
479 messages. Nevertheless, it is enabled only when `@n' is used in
480 the grammar, which is a different issue (you can use it in error
481 message, but not in the grammar per se). Therefore, there should
482 be another means to enable it.
484 * src/getargs.c (getargs): Support `--locations'.
486 * src/getargs.h (locationsflag): Export it.
487 * src/lex.c (percent_table): Support `%locations'.
488 * src/reader.c (yylsp_needed): Remove this variable, now replaced
489 with `locationsflag'.
490 * doc/bison.texinfo: Document `--locations' and `%locations'.
492 * tests/calc.m4: Test it.
494 For regularity of the names, replace each
495 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
496 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
497 In addition replace each `flag' with `_flag'.
499 2000-10-02 Akim Demaille <akim@epita.fr>
501 Also test parse error messages, including with YYERROR_VERBOSE.
503 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
505 Use it to check the computations.
506 Use it to check `nonassoc' is honored.
507 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
509 (_AT_CHECK_CALC): Adjust to this option.
510 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
512 2000-10-02 Akim Demaille <akim@epita.fr>
514 Test also `--verbose', `--defines' and `--name-prefix'. Testing
515 the latter demonstrates a flaw in the handling of non debugging
516 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
517 was used in order to simplify:
533 unfortunately this leads to a CPP conflict when
534 `--name-prefix=foo' is used since it produces `#define yydebug
537 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
538 (YYDPRINTF): New macro.
540 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
542 Also test `--verbose', `--defines' and `--name-prefix'.
544 2000-10-02 Akim Demaille <akim@epita.fr>
546 Improve the readability of the produced parsers.
548 * src/bison.s1: Formatting changes.
549 Improve the comment related to the `$' mark.
550 (yydefault): Don't fall through to `yyresume': `goto' there.
551 * src/output.c (output_parser): When the `$' is met, skip the end
553 New variable, `number_of_dollar_signs', to check there's exactly
554 one `$' in the parser skeleton.
556 2000-10-02 Akim Demaille <akim@epita.fr>
558 * lib/xstrdup.c: New file, from the fileutils.
559 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
560 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
561 instead of strlen + xmalloc + strcpy.
562 * src/symtab.c (copys): Remove, use xstrdup instead.
564 2000-10-02 Akim Demaille <akim@epita.fr>
566 * src/gram.h (associativity): New enum type which replaces the
567 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
568 `right_assoc', `left_assoc' and `non_assoc'.
569 Adjust all dependencies.
570 * src/reader.c: Formatting changes.
571 (LTYPESTR): Don't define it, use it as a literal in
572 `reader_output_yylsp'.
573 * src/symtab.h (symbol_class): New enum type which replaces the
574 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
575 `sunknown', `stoken and `snterm'.
577 2000-10-02 Akim Demaille <akim@epita.fr>
579 * src/getargs.c (fixed_outfiles): Rename as...
580 (yaccflag): for consistency and accuracy.
583 2000-10-02 Akim Demaille <akim@epita.fr>
585 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
586 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
587 difficult and introduced a lot of core dump. It turns out that
588 Bison used an implementation of `xmalloc' based on `calloc', and
589 at various places it does depend upon the initialization to 0. I
590 have not tried to isolate the pertinent places, and all the former
591 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
592 someone should address this issue.
594 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
595 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
598 * src/warshall.h: New file.
601 2000-10-02 Akim Demaille <akim@epita.fr>
603 Various anti-`extern in *.c' changes.
605 * src/system.h: Include `assert.h'.
607 2000-10-02 Akim Demaille <akim@epita.fr>
609 * src/state.h (nstates, final_state, first_state, first_shift)
610 (first_reduction): Move their exportation from here...
611 * src/LR0.h: to here.
613 * src/getargs.c (statisticsflag): New variable.
614 Add support for `--statistics'.
617 Remove a lot of now useless `extern' statements in most files.
619 2000-10-02 Akim Demaille <akim@epita.fr>
621 * src/LR0.h: New file.
624 2000-10-02 Akim Demaille <akim@epita.fr>
626 * src/print.h: New file.
628 * src/print.c: Formatting and ordering changes.
629 (verbose, terse): Replace with...
630 (print_results): this new function.
633 2000-10-02 Akim Demaille <akim@epita.fr>
635 * src/conflicts.c (conflict_report): New function.
636 (conflict_log, verbose_conflict_log): Replace with...
637 (print_conflicts): this function.
639 * src/conflicts.h: New file.
640 Propagate its inclusion.
642 2000-10-02 Akim Demaille <akim@epita.fr>
644 * src/nullable.h: New file.
645 Propagate its inclusion.
646 * src/nullable.c: Formatting changes.
648 2000-10-02 Akim Demaille <akim@epita.fr>
650 * src/reduce.h: New file.
651 Propagate its inclusion.
652 * src/reduce.c: Topological sort and other formatting changes.
653 (bool, TRUE, FALSE): Move their definition to...
654 * src/system.h: here.
656 2000-10-02 Akim Demaille <akim@epita.fr>
658 * src/files.c: Formatting changes.
659 (tryopen, tryclose, openfiles): Rename as...
660 (xfopen, xfclose, open_files): this.
661 (stringappend): static.
662 * src/files.h: Complete the list of exported symbols.
665 2000-10-02 Akim Demaille <akim@epita.fr>
667 * src/reader.h: New file.
668 Propagate its use instead of tedious list of `extern' and
670 * src/reader.c: Formatting changes, topological sort,
673 2000-10-02 Akim Demaille <akim@epita.fr>
675 * src/lex.h: Prototype `lex.c' exported functions.
676 * src/reader.c: Adjust.
677 * src/lex.c: Formatting changes.
678 (safegetc): Rename as...
681 2000-10-02 Akim Demaille <akim@epita.fr>
683 * src/lalr.h: New file.
684 Propagate its inclusion instead of prototypes and `extern'.
685 * src/lalr.c: Formatting changes, topological sorting etc.
687 2000-10-02 Akim Demaille <akim@epita.fr>
689 * src/output.c (token_actions): Introduce a temporary array,
690 YYDEFACT, that makes it possible for this function to use
693 2000-10-02 Akim Demaille <akim@epita.fr>
695 `user_toknums' is output as a `short[]' in `output.c', while it is
696 defined as a `int[]' in `reader.c'. For consistency with the
697 other output tables, `user_toknums' is now defined as a table of
700 * src/reader.c (user_toknums): Be a short table instead of an int
704 Factor the short table outputs.
706 * src/output.c (output_short_table): New function.
707 * src/output.c (output_gram, output_stos, output_rule_data)
708 (output_base, output_table, output_check): Use it.
710 2000-10-02 Akim Demaille <akim@epita.fr>
712 * src/output.c (output): Topological sort of the functions, in
713 order to get rid of the `static' prototypes.
714 No longer use `register'.
715 * src/output.h: New file.
716 Propagate its inclusion in files explicitly prototyping functions
719 2000-09-21 Akim Demaille <akim@epita.fr>
721 * src/atgeneral.m4: Update from Autoconf.
723 2000-09-21 Akim Demaille <akim@epita.fr>
725 * src/closure.h: New file.
726 * src/closure.c: Formatting changes, topological sort over the
727 functions, use of closure.h.
728 (initialize_closure, finalize_closure): Rename as...
729 (new_closure, free_closure): these. Adjust dependencies.
730 * src/LR0.c: Formatting changes, topological sort, use of
732 (initialize_states): Rename as...
734 * src/Makefile.am (noinst_HEADERS): Adjust.
736 2000-09-20 Akim Demaille <akim@epita.fr>
738 * src/acconfig.h: Don't protect config.h against multiple
741 * src/system.h: Define PARAMS.
742 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
743 purpose of config.h. system.h must not try to fix wrong
744 definitions in config.h.
746 2000-09-20 Akim Demaille <akim@epita.fr>
748 * src/derives.h: New file.
749 * src/main.c, src/derives.h: Use it.
751 * src/Makefile.am (noinst_HEADERS): Adjust.
753 2000-09-20 Akim Demaille <akim@epita.fr>
755 * tests/atgeneral.m4: Update from Autoconf.
756 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
757 (AT_CHECK_CALC): New macros.
758 Use these macros to test bison with options `', `--raw',
759 `--debug', `--yacc', `--yacc --debug'.
761 2000-09-19 Akim Demaille <akim@epita.fr>
763 * src/output.c: Formatting changes.
764 * src/machine.h: Remove, leaving its contents in...
765 * src/system.h: here.
767 Adjust all dependencies on stdio.h and machine.h.
768 * src/getargs.h: New file.
769 Let all `extern' declarations about getargs.c be replaced with
770 inclusion of `getargs.h'.
771 * src/Makefile.am (noinst_HEADERS): Adjust.
773 * tests/calc.m4 (yyin): Be initialized in main, not on the global
775 (yyerror): Returns void, not int.
776 * doc/bison.texinfo: Formatting changes.
778 2000-09-19 Akim Demaille <akim@epita.fr>
780 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
783 2000-09-18 Akim Demaille <akim@epita.fr>
785 * configure.in: Append WARNING_CFLAGS to CFLAGS.
786 * src/Makefile.am (INCLUDES): Don't.
787 Be ready to fetch headers in lib/.
789 2000-09-18 Akim Demaille <akim@epita.fr>
791 * doc/bison.texinfo: Update the copyright.
792 ANSIfy and GNUify the examples.
795 2000-09-18 Akim Demaille <akim@epita.fr>
797 First set of tests: use the `calc' example from the documentation.
799 * src/bison.s1 (yyparse): Condition the code using `yytname' which
800 is defined only when YYDEBUG is.
801 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
802 * src/files.c (tryopen, tryclose): Formatting changes.
803 Move to the top and be static.
804 * src/reader.c (read_signed_integer): Likewise.
805 * tests/calc.m4: New file.
806 * Makefile.am, suite.m4: Adjust.
807 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
809 2000-09-18 Akim Demaille <akim@epita.fr>
811 Add support for an Autotest test suite for Bison.
813 * m4/m4.m4, m4/atconfig.m4: New files.
814 * m4/Makefile.am (EXTRA_DIST): Adjust.
815 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
817 * src/getargs.c: Display a more standard --version message.
818 * src/reader.c (reader): Formatting changes.
819 No longer depend upon VERSION_STRING.
820 * configure.in: No longer use `dnl'.
821 Set up the test suite and the new directory `tests/.
822 (VERSION_STRING): Remove.
824 2000-04-14 Akim Demaille <akim@epita.fr>
826 * src/reader.c (copy_comment2): New function, same as former
827 `copy_comment', but outputs into two FILE *.
828 (copy_comment): Use it.
829 (parse_union_decl): Use it.
830 (get_type, parse_start_decl): Use the same `invalid' message.
831 (parse_start_decl, parse_union_decl): Use the same `multiple'
833 (parse_union_decl, copy_guard, copy_action): Use the same
835 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
837 2000-03-31 Akim Demaille <akim@epita.fr>
839 * src/files.c (tryopen, tryclose): Move to the top.
842 2000-03-31 Akim Demaille <akim@epita.fr>
844 * src/main.c (main): Don't call `done', exit does it.
846 2000-03-31 Akim Demaille <akim@epita.fr>
848 * allocate.c: s/return (foo)/return foo/.
851 * output.c: Likewise.
852 * reader.c: Likewise.
853 * symtab.c: Likewise.
854 * vmsgetargs.c: Likewise.
856 2000-03-31 Akim Demaille <akim@epita.fr>
858 Clean up the error reporting functions.
860 * src/report.c: New file.
861 * src/report.h: Likewise.
862 * src/Makefile.am: Adjust.
863 * m4/error.m4: New file.
864 * m4/Makefile.am: Adjust.
865 * configure.in (jm_PREREQ_ERROR): Call it.
866 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
868 (fatal, fatals): Remove. All callers use complain.c::fatal.
869 (warn, warni, warns, warnss, warnss): Remove. All callers use
870 complain.c::complain.
871 (toomany): Remove, use fatal instead.
872 * src/files.c (done): No argument, use complain_message_count.
873 * src/main.c (main): Register `done' to `atexit'.
875 * src/getargs.c (usage): More `fputs', less `fprintf'.
877 2000-03-28 Akim Demaille <akim@epita.fr>
879 * lib/: New directory.
880 * Makefile.am (SUBDIRS): Adjust.
881 * configure.in: Adjust.
882 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
884 * src/alloca.c: Moved to lib/.
885 * src/getopt.c: Likewise.
886 * src/getopt1.c: Likewise.
887 * src/getopt.h: Likewise.
888 * src/ansi2knr.c: Likewise.
889 * src/ansi2knr.1: Likewise.
890 * src/Makefile.am: Adjust.
891 * lib/Makefile.am: New file.
893 2000-03-28 Akim Demaille <akim@epita.fr>
895 * src/getargs.c (usage): Refresh the help message.
897 2000-03-17 Akim Demaille <akim@epita.fr>
899 * src/getopt1.c: Updated from textutils 2.0e
900 * src/getopt.c: Likewise.
901 * src/getopt.h: Likewise.
903 2000-03-17 Akim Demaille <akim@epita.fr>
905 * src/Makefile.am (bison.simple): Fix the awk program: quote only
906 the file name, not the whole `#line LINE FILE'.
908 2000-03-17 Akim Demaille <akim@epita.fr>
910 On syntax errors, report the token on which we choked.
912 * src/bison.s1 (yyparse): In the label yyerrlab, when
913 YYERROR_VERBOSE, add yychar in msg.
915 2000-03-17 Akim Demaille <akim@epita.fr>
917 * src/reader.c (copy_at): New function.
918 (copy_guard): Use it.
919 (copy_action): Use it.
921 2000-03-17 Akim Demaille <akim@epita.fr>
923 Be kind to translators, save some useless translations.
925 * src/main.c (banner): New function.
926 (fatal_banner): Use it.
927 (warn_banner): Use it.
929 2000-03-17 Akim Demaille <akim@epita.fr>
931 * src/reader.c (copy_definition): Use copy_string and
932 copy_comment. Removed now unused `match', `ended',
934 (copy_comment, copy_string): Moved, to be visible from
937 2000-03-17 Akim Demaille <akim@epita.fr>
939 * src/reader.c (copy_string): Declare `static inline'. No
940 problems with inline, since it is checked by configure.
941 (copy_comment): Likewise.
943 2000-03-17 Akim Demaille <akim@epita.fr>
945 * src/reader.c (packsymbols): Formatting changes.
947 2000-03-17 Akim Demaille <akim@epita.fr>
949 * src/reader.c (copy_comment): New function, factored out from:
950 (copy_action): Use it. Removed now unused `match', `ended',
952 (copy_guard): Likewise.
954 2000-03-17 Akim Demaille <akim@epita.fr>
956 * src/reader.c (copy_string): New function, factored out from:
957 (copy_action): Use it.
958 (copy_guard): Likewise.
960 2000-03-17 Akim Demaille <akim@epita.fr>
962 Change the handling of @s so that they behave exactly like $s.
963 There is now a pseudo variable @$ (readble and writable), location
964 of the lhs of the rule (by default ranging from the location of
965 the first symbol of the rhs, to the location of the last symbol,
966 or, if the rhs is empty, YYLLOC).
968 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
970 (yyparse): When providing a default semantic action, provide a
971 default location action.
972 (after the $): No longer change `*YYLSP', just stack YYLOC the
973 same way you stack YYVAL.
974 * src/reader.c (read_declarations): Use warns.
975 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
976 (copy_action, case '@'): Likewise.
977 Use a standard error message, to save useless work from
980 2000-03-17 Akim Demaille <akim@epita.fr>
982 * src/bison.s1: Formatting and cosmetics changes.
983 * src/reader.c: Likewise.
984 Update the Copyright notice.
986 2000-03-17 Akim Demaille <akim@epita.fr>
988 * src/bison.s1 (#line): All set to `#line' only, since the
989 Makefile now handles them.
991 2000-03-16 Akim Demaille <akim@epita.fr>
993 * src/output.c (output_rule_data): Output the documentation of
995 (Copyright notice): Update.
998 2000-03-16 Akim Demaille <akim@epita.fr>
1000 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
1001 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
1002 One `#if YYDEBUG' remains, since it uses variables which are
1003 defined only if `YYDEBUG != 0'.
1005 2000-03-16 Akim Demaille <akim@epita.fr>
1007 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
1008 and related variables so that the similarities are highlighted.
1010 2000-03-16 Akim Demaille <akim@epita.fr>
1012 * src/bison.s1: Properly indent CPP directives.
1014 2000-03-16 Akim Demaille <akim@epita.fr>
1016 * src/bison.s1: Properly indent the `alloca' CPP section.
1018 2000-03-16 Akim Demaille <akim@epita.fr>
1020 Do not hard code values of directories in `configure.in'.
1021 Update the `configure' tool chain.
1023 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
1025 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
1026 (AC_OUTPUT): Add m4/Makefile.
1027 Bump to bison 1.28a, 1.29 has never been released.
1028 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
1029 handled via src/Makefile.am.
1030 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
1031 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
1033 * Makefile.am (SUBDIRS): Add m4.
1034 (ACLOCAL_AM_FLAGS): New variable.
1035 (AUTOMAKE_OPTIONS): Add check-news.
1036 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
1037 the proper line number and file name.
1038 (DEFS): Propagate the location of bison library files and of the
1040 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
1042 * acinclude.m4: Remove, replaced by the directory m4.
1043 * m4/Makefile.am (EXTRA_DIST): New variable.
1044 * m4/gettext.m4: New file, from the fileutils.
1045 * m4/lcmessage.m4: Likewise
1046 * m4/progtest.m4: Likewise.
1047 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
1049 2000-03-10 Akim Demaille <akim@epita.fr>
1052 Formatting changes of various comments.
1053 Respect the GNU coding standards at various places.
1054 Don't use `_()' when no translation is needed.
1056 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1059 OS/2 honors TMPDIR environment variable.
1061 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1063 * doc/bison.texinfo: Tweaked spelling and grammar.
1065 Removed reference to price of printed copy.
1066 Mention BISON_SIMPLE and BISON_HAIRY.
1068 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1070 * configure.in, NEWS:
1071 Bison 1.29 released.
1073 1999-10-27 Jesse Thilo <jthilo@gnu.org>
1075 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
1076 Added reference card.
1078 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1080 * po/ru.po: Added Russian translation.
1082 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1084 * configure.in: Added Russian translation.
1086 1999-07-06 Jesse Thilo <jthilo@gnu.org>
1088 * configure.in, NEWS, README:
1089 Released version 1.28.
1091 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1094 Squashed redefinition warning on some systems.
1096 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
1097 Have configure build version string instead of relying on ANSI string
1100 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1102 * po/POTFILES.in: Got rid of version.c.
1104 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1106 * acconfig.h, configure.in:
1107 Have configure build version string instead of relying on ANSI string
1110 1999-06-08 Jesse Thilo <jthilo@gnu.org>
1113 Dropped mention of `+' for long-named options.
1115 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1117 * src/files.c: Added <unistd.h> for unlink().
1119 * src/Makefile.am, src/system.h:
1122 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1124 * README: Added a FAQ list.
1126 * configure.in, acconfig.h:
1129 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1131 * doc/FAQ, doc/Makefile.am:
1134 1999-05-19 Jesse Thilo <jthilo@gnu.org>
1136 * src/alloc.h, src/symtab.h, src/version.c:
1137 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1139 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1141 * src/.cvsignore, src/Makefile.am:
1142 Reorganized: sources in `src', documentation in `doc'.
1144 * src/lex.c (literalchar):
1145 fixed the code for escaping double quotes (thanks
1148 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1150 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1151 Adjusted paths to reflect directory reorganization.
1153 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1155 * doc/.cvsignore, doc/Makefile.am:
1156 Reorganized: sources in `src', documentation in `doc'.
1158 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1161 Updated AC_INIT file to reflect directory reorganization.
1163 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1164 Reorganized: sources in `src', documentation in `doc'.
1166 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1169 Don't declare calloc() and realloc() if not necessary.
1171 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1173 * configure.in, acconfig.h, acinclude.m4:
1174 Don't declare calloc() and realloc() if not necessary.
1176 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1178 * po/.cvsignore: Added i18n support.
1180 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1182 * acconfig.h, configure.in, Makefile.am:
1185 1999-03-22 Jesse Thilo <jthilo@gnu.org>
1187 * src/bison.s1: Fixed #line numbers.
1189 1999-03-15 Jesse Thilo <jthilo@gnu.org>
1191 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1192 Added PO files from Translation Project.
1194 1999-03-03 Jesse Thilo <jthilo@gnu.org>
1197 Added support for non-ANSI compilers (ansi2knr).
1199 1999-02-16 Jesse Thilo <jthilo@gnu.org>
1201 * configure.in: Bumped version number to 1.27.
1204 Added `bison.simple' to list of files removed by `make distclean'.
1206 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1208 * src/files.c, src/files.h:
1209 Defined locations of parser files in config.h instead of Makefile.
1211 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1213 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1214 Defined locations of parser files in config.h instead of Makefile.
1216 1999-02-09 Jesse Thilo <jthilo@gnu.org>
1219 Removed inappropriate use of $< macro.
1221 1999-02-05 Jesse Thilo <jthilo@gnu.org>
1223 * po/Makefile.in.in, po/POTFILES.in:
1224 Add `po' directory skeleton.
1226 1999-01-27 Jesse Thilo <jthilo@gnu.org>
1228 * README: Document help-bison list.
1230 * configure.in: Add check for mkstemp().
1232 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1234 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1235 Hush a few compiler warnings.
1238 Add tryclose(), which verifies that fclose was successful.
1239 Hush a couple of compiler warnings.
1241 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1243 * Makefile.am, OChangeLog:
1244 ChangeLog is now automatically generated. Include the old version as
1247 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1249 * 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:
1252 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1254 * doc/bison.texinfo: Fix formatting glitch.
1256 * doc/bison.texinfo: Update FSF address.
1258 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1260 * acconfig.h: Update FSF address.
1262 1999-01-08 Jesse Thilo <jthilo@gnu.org>
1265 Don't define PACKAGE here, since config.h defines it.
1267 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1269 * src/reader.c: Update copyright date.
1272 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1273 favor of output directly to stderr (avoids buffer overruns).
1275 * src/reader.c: Some checks for premature EOF.
1277 * 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:
1278 Use prototypes if the compiler understands them.
1280 * src/files.c: Honor TMPDIR on Unix hosts.
1281 Use prototypes if the compiler understands them.
1284 Fix a couple of buffer overrun bugs.
1285 Use prototypes if the compiler understands them.
1287 * src/system.h: Include unistd.h and ctype.h.
1288 Use #ifdef instead of #if for NLS symbols.
1290 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1292 * doc/bison.texinfo:
1293 Delete comment "consider using @set for edition number, etc..." since
1294 we now are doing so.
1296 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1299 Use prototypes if the compiler understands them.
1301 * NEWS: Document 1.26 highlights.
1303 * Makefile.am: Require Automake 1.3 or later.
1306 Use prototypes if the compiler understands them.
1308 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1311 Use VERSION symbol from automake for version number.
1313 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1315 * acconfig.h, configure.in, version.cin:
1316 Use VERSION symbol from automake for version number.
1318 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1321 Distribute original version of simple parser (bison.s1), not built
1322 version (bison.simple).
1324 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1326 * doc/bison.texinfo: Add info dir entry.
1328 * doc/bison.texinfo:
1329 Let automake put version number into documentation.
1331 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1333 * src/bison.cld, src/build.com, src/vmshlp.mar:
1334 Add non-RCS files from /gd/gnu/bison.
1336 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1339 Document the BISON_HAIRY and BISON_SIMPLE variables.
1341 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1343 * src/version.c: Build version.c automatically.
1346 Fix token numbering (used to start at 258, not 257).
1348 * src/system.h: Include config.h.
1350 * src/getargs.c: Update bug report address.
1352 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1353 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1355 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1358 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1360 * configure.in, version.cin:
1361 Build version.c automatically.
1363 * AUTHORS: Add AUTHORS file.
1365 * README: Update bug report address.
1368 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1370 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1373 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1375 * doc/bison.texinfo: Clean up some formatting.
1377 1998-05-05 Richard Stallman <rms@gnu.org>
1379 * doc/bison.texinfo:
1380 Explain better why to make a pure parser.
1382 1998-01-05 Richard Stallman <rms@gnu.org>
1384 * src/files.c (openfiles):
1385 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1386 find a temporary directory, if possible. Do not unlink files while
1389 1997-08-25 Richard Stallman <rms@gnu.org>
1391 * src/reader.c (stack_offset;):
1392 Change some warni to warns.
1394 * src/lex.c (literalchar): Use warns, not warni.
1396 1997-06-28 Richard Stallman <rms@gnu.org>
1398 * src/bison.s1: Add a Bison version comment.
1400 * src/main.c (fatal, warn, berror):
1403 1997-06-28 Richard Stallman <rms@gnu.org>
1405 * Makefile.in (bison_version): New variable.
1406 (dist): Use that variable.
1407 (bison.s1): Substitute the Bison version into bison.simple.
1409 * bison.simple: Add a Bison version comment.
1411 1997-06-18 Richard Stallman <rms@gnu.org>
1413 * src/main.c (fatal, warn, berror):
1414 Make error messages standard.
1415 (toomany): Improve error message text.
1417 * 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:
1418 new.h renamed to alloc.h.
1420 1997-06-18 Richard Stallman <rms@gnu.org>
1422 * Makefile.in: new.h renamed to alloc.h.
1424 1997-05-24 Richard Stallman <rms@gnu.org>
1426 * src/lex.c (literalchar):
1427 Fix the code for escaping \, " and '.
1429 (lex): Avoid trouble when there are many chars
1430 to discard in a char literal with just several chars in it.
1432 1997-05-17 Richard Stallman <rms@gnu.org>
1435 Use malloc, if using alloca is troublesome.
1436 (YYSTACK_USE_ALLOCA): New flag macro.
1437 Define it for some systems and compilers.
1438 (YYSTACK_ALLOC): New macro.
1439 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1440 If it was malloc'd, free it.
1442 1997-05-17 Richard Stallman <rms@gnu.org>
1445 Use malloc, if using alloca is troublesome.
1446 (YYSTACK_USE_ALLOCA): New flag macro.
1447 Define it for some systems and compilers.
1448 (YYSTACK_ALLOC): New macro.
1449 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1450 If it was malloc'd, free it.
1452 1997-04-23 Richard Stallman <rms@gnu.org>
1455 (alloca) [__hpux]: Always define as __builtin_alloca.
1457 1997-04-23 Richard Stallman <rms@gnu.org>
1460 (alloca) [__hpux]: Always define as __builtin_alloca.
1462 1997-04-22 Richard Stallman <rms@gnu.org>
1465 [__hpux]: Include alloca.h (right for HPUX 10)
1466 instead of declaring alloca (right for HPUX 9).
1468 * src/bison.s1 (__yy_memcpy):
1469 Declare arg `count' as unsigned int.
1470 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1472 1997-04-22 Richard Stallman <rms@gnu.org>
1475 [__hpux]: Include alloca.h (right for HPUX 10)
1476 instead of declaring alloca (right for HPUX 9).
1478 * bison.simple (__yy_memcpy):
1479 Declare arg `count' as unsigned int.
1480 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1482 1997-01-03 Richard Stallman <rms@gnu.org>
1484 * src/allocate.c: [__STDC__ or _MSC_VER]:
1485 Declare calloc and realloc to return void *.
1487 1997-01-02 Richard Stallman <rms@gnu.org>
1490 [_MSC_VER]: Include stdlib.h and process.h.
1491 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
1493 * src/main.c (main): Return FAILURE as a value.
1494 (printable_version): Declare arg as int, not char.
1496 1997-01-02 Richard Stallman <rms@gnu.org>
1498 * Makefile.in (dist):
1499 Explicitly check for symlinks, and copy them.
1501 1996-12-19 Richard Stallman <rms@gnu.org>
1504 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
1506 1996-12-18 Paul Eggert <eggert@gnu.org>
1508 * src/bison.s1 (yyparse):
1509 If __GNUC__ and YYPARSE_PARAM are both defined,
1510 declare yyparse to have a void * argument.
1512 1996-12-18 Paul Eggert <eggert@gnu.org>
1514 * bison.simple (yyparse):
1515 If __GNUC__ and YYPARSE_PARAM are both defined,
1516 declare yyparse to have a void * argument.
1518 1996-12-17 Richard Stallman <rms@gnu.org>
1520 * src/reduce.c (nbits): Add some casts.
1522 1996-08-12 Richard Stallman <rms@gnu.org>
1524 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
1526 1996-08-12 Richard Stallman <rms@gnu.org>
1528 * bison.simple: Test _MSDOS as well as _MSDOS_.
1530 1996-07-31 Richard Stallman <rms@gnu.org>
1533 [__sun && __i386]: Include alloca.h.
1535 1996-07-31 Richard Stallman <rms@gnu.org>
1538 [__sun && __i386]: Include alloca.h.
1540 1996-07-30 Richard Stallman <rms@gnu.org>
1542 * src/bison.s1: Comment change.
1544 * src/bison.s1: Test _MSDOS_, not MSDOS.
1546 1996-07-30 Richard Stallman <rms@gnu.org>
1548 * bison.simple: Comment change.
1550 * bison.simple: Test _MSDOS_, not MSDOS.
1552 1996-06-01 Richard Stallman <rms@gnu.org>
1554 * 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:
1555 Insert `_' macro around many string constants.
1558 Insert `_' macro around many string constants.
1560 (main): Call setlocale, bindtextdomain and textdomain.
1562 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
1563 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
1564 [ENABLE_NLS]: Include libintl.h.
1565 [ENABLE_NLS] (gettext): Define.
1566 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
1567 (N_, PACKAGE, LOCALEDIR): New macros.
1569 1996-06-01 Richard Stallman <rms@gnu.org>
1571 * POTFILES.in: New file.
1573 * Makefile.in (allocate.o):
1574 Define target explicitly.
1576 * Makefile.in (CFLAGS): Set to @CFLAGS@.
1577 (LDFLAGS): Set to @LDFLAGS@.
1578 (configure): Run autoconf only if preceding `cd' succeeds.
1579 (bison.s1): Redirect output to temporary file then move the
1580 temporary to the target, rather than redirecting directly to bison.s1.
1581 (clean): Remove config.status and config.log.
1582 (distclean): Don't remove config.status here.
1584 1996-05-12 Richard Stallman <rms@gnu.org>
1587 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1589 1996-05-12 Richard Stallman <rms@gnu.org>
1592 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1594 1996-05-11 Richard Stallman <rms@gnu.org>
1596 * src/bison.s1 (__yy_memcpy):
1597 Really reorder the args, as was supposedly done on Feb 14 1995.
1598 (yyparse): Calls changed accordingly.
1600 1996-05-11 Richard Stallman <rms@gnu.org>
1602 * Makefile.in (dist): Don't use $(srcdir).
1604 * bison.simple (__yy_memcpy):
1605 Really reorder the args, as was supposedly done on Feb 14 1995.
1606 (yyparse): Calls changed accordingly.
1608 1996-01-27 Richard Stallman <rms@gnu.org>
1610 * src/output.c (output_rule_data):
1611 Test YYERROR_VERBOSE in the conditional
1612 around the definition of ttyname.
1614 1995-12-29 Richard Stallman <rms@gnu.org>
1617 Fix line numbers in #line commands.
1619 1995-12-29 Richard Stallman <rms@gnu.org>
1622 Fix line numbers in #line commands.
1624 1995-12-27 Richard Stallman <rms@gnu.org>
1626 * src/bison.s1 (YYPARSE_PARAM_DECL):
1627 In C++, make it always null.
1628 (YYPARSE_PARAM_ARG): New macro.
1629 (yyparse): Use YYPARSE_PARAM_ARG.
1631 1995-12-27 Richard Stallman <rms@gnu.org>
1633 * bison.simple (YYPARSE_PARAM_DECL):
1634 In C++, make it always null.
1635 (YYPARSE_PARAM_ARG): New macro.
1636 (yyparse): Use YYPARSE_PARAM_ARG.
1638 1995-11-29 Richard Stallman <rms@gnu.org>
1640 * doc/bison.texinfo:
1641 Describe literal string tokens, %raw, %no_lines, %token_table.
1643 1995-11-29 Daniel Hagerty <hag@gnu.org>
1645 * doc/bison.texinfo: Fixed update date
1647 1995-10-16 Richard Stallman <rms@gnu.org>
1649 * src/version.c: Version 1.25.
1651 1995-10-16 Richard Stallman <rms@gnu.org>
1653 * NEWS: *** empty log message ***
1655 1995-10-16 Richard Stallman <rms@gnu.org>
1657 * doc/bison.1, doc/bison.rnh:
1660 1995-10-15 Richard Stallman <rms@gnu.org>
1662 * src/vmsgetargs.c, src/getargs.c:
1663 Added -n, -k, and -raw switches.
1664 (noparserflag, toknumflag, rawtoknumflag): New variables.
1666 * src/symtab.h (SALIAS):
1667 New #define for adding aliases to %token.
1668 (struct bucket): Added `alias' field.
1670 * src/reduce.c (reduce_grammar):
1671 Revise error message.
1672 (print_notices): Remove final `.' from error message.
1674 * src/reader.c (reader_output_yylsp):
1676 (readgram): Use `#if 0' around code that accepted %command
1677 inside grammar rules: The documentation doesn't allow it,
1678 and it will fail since the %command processors scan for the next %.
1679 (parse_token_decl): Extended the %token
1680 declaration to allow a multi-character symbol as an alias.
1681 (parse_thong_decl): New function.
1682 (read_declarations): Added %thong declarations.
1683 (read_declarations): Handle NOOP to deal with allowing
1684 % declarations as another means to specify the flags.
1685 (readgram): Allow %prec prior to semantics embedded in a rule.
1686 (skip_to_char, read_declarations, copy_definition)
1687 (parse_token_decl, parse_start_decl, parse_type_decl)
1688 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
1689 (get_type_name, copy_guard, copy_action, readgram)
1690 (get_type, packsymbols): Revised most error messages.
1691 Changed `fatal' to `warnxxx' to avoid aborting for error.
1692 Revised and use multiple warnxxx functions to avoid using VARARGS1.
1693 (read_declarations): Improve the error message for
1694 an invalid character. Do not abort.
1695 (read_declarations, copy_guard, copy_action): Use
1696 printable_version to avoid unprintable characters in printed output.
1697 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
1698 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
1699 Allow the type of a non-terminal can be given
1700 more than once, as long as all specifications give the same type.
1703 (output_headers, output_trailers, output, output_gram)
1704 (output_rule_data): Implement noparserflag variable.
1705 Implement toknumflag variable.
1706 (output): Call reader_output_yylsp to output LTYPESTR.
1708 * src/main.c (main):
1709 If reader sees an error, don't process the grammar.
1710 (fatals): Updated to not use VARARGS1.
1711 (printable_version, int_to_string, warn, warni, warns, warnss)
1712 (warnsss): New error reporting functions. Avoid abort for error.
1715 Added THONG and NOOP for alias processing.
1716 Added SETOPT for the new code that allows setting options with %flags.
1719 Include getopt.h. Add some extern decls.
1720 (safegetc): New function to deal with EOF gracefully.
1721 (literalchar); new function to deal with reading \ escapes.
1722 (lex): Use literalchar.
1723 (lex): Implemented "..." tokens.
1724 (literalchar, lex, parse_percent_token): Made tokenbuffer
1725 always contain the token. This includes growing the token
1726 buffer while reading an integer.
1727 (parse_percent_token): Replaced if-else statement with percent_table.
1728 (parse_percent_token): Added % declarations as another
1729 way to specify the flags -n, -l, and -r. Also added hooks for
1730 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
1731 major changes to files.c.
1732 (lex) Retain in the incoming stream a character following
1734 (skip_white_space, lex): Revised most error messages
1735 and changed fatal to warn to avoid aborting.
1736 (percent_table): Added %thong declarations.
1738 * src/gram.h: Comment changes.
1740 * src/files.c (openfiles, open_extra_files, done):
1742 and actfile file. Handle noparserflag. Both for -n switch.
1744 * src/conflicts.c (resolve_sr_conflict):
1745 Remove use of alloca.
1747 1995-06-01 Jim Meyering <meyering@gnu.org>
1749 * doc/bison.texinfo: *** empty log message ***
1751 1995-05-06 Richard Stallman <rms@gnu.org>
1753 * src/bison.s1: Comment change.
1755 1995-05-06 Richard Stallman <rms@gnu.org>
1757 * bison.simple: Comment change.
1759 1995-05-03 Richard Stallman <rms@gnu.org>
1761 * src/version.c: Version now 1.24.
1763 * src/bison.s1: Change distribution terms.
1765 * src/version.c: Version now 1.23.
1767 1995-05-03 Richard Stallman <rms@gnu.org>
1769 * doc/bison.texinfo:
1770 Rewrite "Conditions for Using Bison".
1771 Update version to 1.24.
1773 1995-05-03 Richard Stallman <rms@gnu.org>
1775 * bison.simple: Change distribution terms.
1777 1995-02-23 Richard Stallman <rms@gnu.org>
1779 * src/files.c: Test __VMS_POSIX as well as VMS.
1781 1995-02-14 Jim Meyering <meyering@gnu.org>
1783 * src/bison.s1 (__yy_memcpy):
1784 Renamed from __yy_bcopy to avoid
1785 confusion. Reverse FROM and TO arguments to be consistent with
1788 1995-02-14 Jim Meyering <meyering@gnu.org>
1790 * bison.simple (__yy_memcpy):
1791 Renamed from __yy_bcopy to avoid
1792 confusion. Reverse FROM and TO arguments to be consistent with
1795 1994-11-10 David J. MacKenzie <djm@gnu.org>
1801 * Makefile.in (DISTFILES): Include NEWS.
1803 * Makefile.in (DISTFILES):
1804 Include install-sh, not install.sh.
1806 * configure.in: Update to Autoconf v2 macro names.
1808 1994-10-05 David J. MacKenzie <djm@gnu.org>
1810 * Makefile.in: fix typo
1812 * Makefile.in (prefix, exec_prefix):
1813 Let configure set them.
1815 1994-09-28 David J. MacKenzie <djm@gnu.org>
1817 * Makefile.in: Set datadir to $(prefix)/share.
1819 1994-09-15 Richard Stallman <rms@gnu.org>
1822 Update copyright notice and GPL version.
1824 1994-09-15 Richard Stallman <rms@gnu.org>
1827 Update copyright notice and GPL version.
1829 1994-07-12 Richard Stallman <rms@gnu.org>
1831 * src/reduce.c, src/reader.c:
1834 1994-05-05 David J. MacKenzie <djm@gnu.org>
1836 * Makefile.in: entered into RCS
1838 1994-03-26 Richard Stallman <rms@gnu.org>
1840 * src/bison.s1: entered into RCS
1842 1994-03-26 Richard Stallman <rms@gnu.org>
1844 * bison.simple: entered into RCS
1846 1994-03-25 Richard Stallman <rms@gnu.org>
1848 * src/main.c: entered into RCS
1850 1994-03-24 Richard Stallman <rms@gnu.org>
1852 * src/conflicts.c: entered into RCS
1854 1994-01-02 Richard Stallman <rms@gnu.org>
1856 * Makefile.in: *** empty log message ***
1858 1993-11-21 Richard Stallman <rms@gnu.org>
1860 * src/bison.s1: *** empty log message ***
1862 1993-11-21 Richard Stallman <rms@gnu.org>
1864 * doc/bison.texinfo: entered into RCS
1866 * doc/bison.texinfo: *** empty log message ***
1868 1993-11-21 Richard Stallman <rms@gnu.org>
1870 * bison.simple: *** empty log message ***
1872 1993-10-25 David J. MacKenzie <djm@gnu.org>
1874 * doc/bison.texinfo: *** empty log message ***
1876 1993-10-19 Richard Stallman <rms@gnu.org>
1878 * src/bison.s1: *** empty log message ***
1880 1993-10-19 Richard Stallman <rms@gnu.org>
1882 * bison.simple: *** empty log message ***
1884 1993-10-14 Richard Stallman <rms@gnu.org>
1886 * src/bison.s1: *** empty log message ***
1888 1993-10-14 Richard Stallman <rms@gnu.org>
1890 * bison.simple: *** empty log message ***
1892 1993-09-14 David J. MacKenzie <djm@gnu.org>
1894 * doc/bison.texinfo: *** empty log message ***
1896 1993-09-13 Noah Friedman <friedman@gnu.org>
1898 * Makefile.in: *** empty log message ***
1900 1993-09-10 Richard Stallman <rms@gnu.org>
1902 * src/conflicts.c: *** empty log message ***
1904 * src/system.h: entered into RCS
1906 1993-09-10 Richard Stallman <rms@gnu.org>
1908 * doc/bison.1: entered into RCS
1910 1993-09-06 Noah Friedman <friedman@gnu.org>
1912 * src/version.c: entered into RCS
1914 1993-09-06 Noah Friedman <friedman@gnu.org>
1916 * Makefile.in: *** empty log message ***
1918 1993-07-30 David J. MacKenzie <djm@gnu.org>
1920 * Makefile.in: *** empty log message ***
1922 1993-07-24 Richard Stallman <rms@gnu.org>
1924 * src/bison.s1: *** empty log message ***
1926 1993-07-24 Richard Stallman <rms@gnu.org>
1928 * bison.simple: *** empty log message ***
1930 1993-07-08 David J. MacKenzie <djm@gnu.org>
1932 * Makefile.in: *** empty log message ***
1934 1993-07-04 Richard Stallman <rms@gnu.org>
1936 * src/bison.s1: *** empty log message ***
1938 1993-07-04 Richard Stallman <rms@gnu.org>
1940 * bison.simple: *** empty log message ***
1942 1993-06-26 David J. MacKenzie <djm@gnu.org>
1944 * src/getargs.c: entered into RCS
1946 1993-06-26 David J. MacKenzie <djm@gnu.org>
1948 * doc/bison.texinfo: *** empty log message ***
1950 * doc/bison.1: New file.
1952 1993-06-25 Richard Stallman <rms@gnu.org>
1954 * src/getargs.c: New file.
1956 1993-06-16 Richard Stallman <rms@gnu.org>
1958 * src/bison.s1: *** empty log message ***
1960 1993-06-16 Richard Stallman <rms@gnu.org>
1962 * bison.simple: *** empty log message ***
1964 1993-06-03 Richard Stallman <rms@gnu.org>
1966 * src/bison.s1: New file.
1968 1993-06-03 Richard Stallman <rms@gnu.org>
1970 * doc/bison.texinfo: *** empty log message ***
1972 1993-06-03 Richard Stallman <rms@gnu.org>
1974 * bison.simple: New file.
1976 1993-05-19 Richard Stallman <rms@gnu.org>
1978 * doc/bison.texinfo: New file.
1980 1993-05-07 Noah Friedman <friedman@gnu.org>
1982 * Makefile.in: *** empty log message ***
1984 1993-04-28 Noah Friedman <friedman@gnu.org>
1986 * src/reader.c: *** empty log message ***
1988 1993-04-23 Noah Friedman <friedman@gnu.org>
1990 * src/alloc.h: entered into RCS
1992 1993-04-20 David J. MacKenzie <djm@gnu.org>
1994 * src/version.c: *** empty log message ***
1996 * src/files.c, src/allocate.c:
1999 * src/reader.c: *** empty log message ***
2001 * src/lex.c: entered into RCS
2003 * src/conflicts.c: New file.
2005 * src/symtab.c: entered into RCS
2007 * src/alloc.h: New file.
2009 * src/LR0.c: entered into RCS
2011 1993-04-18 Noah Friedman <friedman@gnu.org>
2013 * src/reader.c: New file.
2015 * src/version.c: *** empty log message ***
2017 1993-04-18 Noah Friedman <friedman@gnu.org>
2019 * Makefile.in: *** empty log message ***
2021 1993-04-17 Noah Friedman <friedman@gnu.org>
2023 * Makefile.in: *** empty log message ***
2025 1993-04-15 Richard Stallman <rms@gnu.org>
2027 * src/main.c, src/files.c:
2030 1993-04-15 Noah Friedman <friedman@gnu.org>
2032 * configure.in: entered into RCS
2034 * configure.in: *** empty log message ***
2036 * configure.in: New file.
2038 1993-04-14 Richard Stallman <rms@gnu.org>
2040 * Makefile.in: New file.
2042 1993-04-13 Richard Stallman <rms@gnu.org>
2044 * src/version.c: New file.
2046 1993-03-25 Richard Stallman <rms@gnu.org>
2048 * src/output.c: entered into RCS
2050 1992-09-25 Richard Stallman <rms@gnu.org>
2052 * configure.bat: entered into RCS
2054 1992-06-22 Richard Stallman <rms@gnu.org>
2056 * src/vmsgetargs.c: entered into RCS
2058 1992-06-22 Richard Stallman <rms@gnu.org>
2060 * doc/bison.rnh: entered into RCS
2062 1992-04-20 David J. MacKenzie <djm@gnu.org>
2064 * README: entered into RCS
2066 1992-01-22 Richard Stallman <rms@gnu.org>
2068 * src/machine.h: entered into RCS
2070 1991-12-21 Richard Stallman <rms@gnu.org>
2072 * src/lalr.c, src/closure.c:
2075 1991-12-20 Richard Stallman <rms@gnu.org>
2077 * src/state.h: entered into RCS
2079 1991-12-18 Richard Stallman <rms@gnu.org>
2081 * src/print.c, src/nullable.c, src/derives.c:
2084 1991-11-03 David J. MacKenzie <djm@gnu.org>
2086 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
2089 1988-09-09 Richard Stallman <rms@gnu.org>
2091 * src/bison.hairy: entered into RCS
2093 1987-12-16 Richard Stallman <rms@gnu.org>
2095 * REFERENCES: entered into RCS