1 2001-08-03 Akim Demaille <akim@epita.fr>
5 2001-08-01 Marc Autret <autret_m@epita.fr>
7 * doc/bison.texinfo: Update.
8 * doc/bison.1 (mandoc): Update.
9 * src/system.h (EXT_GUARD_C, EXT_STYPE_H): Remove .c and .h.
10 * src/files.c: Support output files extensions computing.
11 (src_extension): New static variable.
12 (header_extension): New static variable.
14 (get_extension_index): New function, gets the index of an extension
16 (compute_exts_from_gf): New function, computes extensions from the
17 grammar file extension.
18 (compute_exts_from_src): New functions, computes extensions from the
19 C source file extension, file given by ``-o'' option.
20 (compute_base_names): Update.
21 (output_files): Update.
23 2001-08-01 Robert Anisko <anisko_r@epita.fr>
25 * doc/bison.texi: Document @$.
26 (Locations): New section.
28 2001-07-18 Akim Demaille <akim@epita.fr>
30 * Makefile.maint, GNUmakefile: New, from Autoconf 2.52.
31 * config/prev-version.txt, config/move-if-change: New.
32 * Makefile.am: Adjust.
34 2001-07-08 Pascal Bart <pascal.bart@epita.fr>
36 * src/bison.simple (yyparse): Suppress warning `comparaison
37 between signed and unsigned'.
39 2001-07-05 Pascal Bart <pascal.bart@epita.fr>
41 * src/getargs.h (raw_flag): Remove.
42 * src/getargs.c: Die on `-r'/`--raw'.
43 * src/lex.c (parse_percent_token): Die on `%raw'.
44 * src/reader.c (output_token_defines): Suppress call to `raw_flag'.
45 * tests/calc.at: Suppress test with option `--raw'.
47 2001-07-14 Akim Demaille <akim@epita.fr>
50 * configure.in: Require Autoconf 2.50.
51 Update to gettext 0.10.38.
53 2001-03-16 Akim Demaille <akim@epita.fr>
55 * doc/bison.texinfo: ANSIfy the examples.
57 2001-03-16 Akim Demaille <akim@epita.fr>
59 * getargs.c (skeleton): New variable.
60 (longopts): --skeleton is a new option.
61 (shortopts, getargs): -S is a new option.
62 * getargs.h: Declare skeleton.
63 * output.c (output_parser): Use it.
65 2001-03-16 Akim Demaille <akim@epita.fr>
67 * m4/strerror_r.m4: New.
68 * m4/error.m4: Run AC_FUNC_STRERROR_R.
69 * lib/error.h, lib/error.c: Update.
71 2001-03-16 Akim Demaille <akim@epita.fr>
73 * src/getargs.c (longopts): Clean up.
75 2001-02-21 Akim Demaille <akim@epita.fr>
77 * src/reader.c (gensym): `gensym_count' is your own.
78 Use a static buf to create the symbol name, as token_buffer is no
81 2001-02-08 Akim Demaille <akim@epita.fr>
83 * src/conflicts.c (conflict_report): Be sure not to append to res
84 between two calls, which could happen if both first sprintf were
85 skipped, but not the first cp += strlen.
87 2001-02-08 Akim Demaille <akim@epita.fr>
89 * lib/memchr.c, lib/stpcpy.c, lib/strndup.c, lib/strnlen.c:
90 New, from fileutils 4.0.37.
91 * configure.in: Require Autoconf 2.49c. I took some time before
92 making this decision. This is the only way out for portability
93 issues in Bison, it would mean way too much duplicate effort to
94 import in Bison features implemented in 2.49c since 2.13.
95 AC_REPLACE_FUNCS and AC_CHECK_DECLS the functions above.
97 2001-02-02 Akim Demaille <akim@epita.fr>
99 * lib/malloc.c, lib/realloc.c: New, from the fileutils 4.0.37.
100 * lib/xalloc.h, lib/xmalloc.c: Update.
102 2001-01-19 Akim Demaille <akim@epita.fr>
104 Get rid of the ad hoc handling of token_buffer in the scanner: use
107 * src/lex.c (token_obstack): New.
108 (init_lex): Initialize it. No longer call...
109 (grow_token_buffer): this. Remove it.
110 Adjust all the places which used it to use the obstack.
112 2001-01-19 Akim Demaille <akim@epita.fr>
114 * src/lex.h: Rename all the tokens:
115 s/\bENDFILE\b/tok_eof/g;
116 s/\bIDENTIFIER\b/tok_identifier/g;
118 Let them be enums, not #define, to ease debugging.
121 2001-01-18 Akim Demaille <akim@epita.fr>
123 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
124 * src/lex.c (maxtoken, grow_token_buffer): Static.
126 2001-01-18 Akim Demaille <akim@epita.fr>
128 Since we now use obstacks, more % directives can be enabled.
130 * src/lex.c (percent_table): Also accept `%yacc',
131 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
133 Handle the actions for `%semantic_parser' and `%pure_parser' here,
134 instead of returning a token.
135 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
136 * src/reader.c (read_declarations): Adjust.
137 * src/files.c (open_files): Don't call `compute_base_names', don't
138 compute `attrsfile' since they depend upon data which might be
139 *in* the input file now.
140 (output_files): Do it here.
141 * src/output.c (output_headers): Document the fact that this patch
142 introduces a guaranteed SEGV for semantic parsers.
143 * doc/bison.texinfo: Document them.
144 * tests/suite.at: Exercise these %options.
146 2000-12-20 Akim Demaille <akim@epita.fr>
148 Also handle the output file (--verbose) with obstacks.
150 * files.c (foutput): Remove.
151 (output_obstack): New.
152 Adjust all dependencies.
153 * src/conflicts.c: Return a string.
154 * src/system.h (obstack_grow_string): Rename as...
155 (obstack_sgrow): this. Be ready to work with non literals.
156 (obstack_fgrow4): New.
158 2000-12-20 Akim Demaille <akim@epita.fr>
160 * src/files.c (open_files): Fix the computation of short_base_name
161 in the case of `-o foo.tab.c'.
163 2000-12-20 Akim Demaille <akim@epita.fr>
165 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
166 (copy_dollar): Now that everything uses obstacks, get rid of the
169 2000-12-20 Akim Demaille <akim@epita.fr>
171 * src/files.c (open_files): Actually the `.output' file is based
172 on the short_base_name, not base_name.
173 * tests/suite.at (Checking output file names): Adjust.
175 2000-12-20 Akim Demaille <akim@epita.fr>
177 * src/bison.s1: Remove, we now use directly...
178 * src/bison.simple: this.
179 * src/Makefile.am: Use pkgdata instead of data.
181 2000-12-20 Akim Demaille <akim@epita.fr>
183 * src/files.c (guard_obstack): New.
184 (open_files): Initialize it.
185 (output_files): Dump it...
186 * src/files.h: Export it.
187 * src/reader.c (copy_guard): Use it.
189 2000-12-19 Akim Demaille <akim@epita.fr>
191 * src/files.c (outfile, defsfile, actfile): Removed as global
193 (open_files): Don't compute them.
194 (output_files): Adjust.
195 (base_name, short_base_name): Be global.
198 2000-12-19 Akim Demaille <akim@epita.fr>
200 * src/files.c (strsuffix): New.
201 (stringappend): Be just like strcat but allocate.
202 (base_names): Eve out from open_files.
203 Try to simplify the rather hairy computation of base_name and
205 (open_files): Use it.
206 * tests/suite.at (Checking output file names): New test.
208 2000-12-19 Akim Demaille <akim@epita.fr>
210 * src/system.h (obstack_grow_literal_string): Rename as...
211 (obstack_grow_string): this.
212 * src/output.c (output_parser): Recognize `%% actions' instead of
214 * src/bison.s1: s/$/%% actions/.
215 * src/bison.hairy: Likewise.
217 2000-12-19 Akim Demaille <akim@epita.fr>
219 * src/output.c (output_parser): Compute the `#line' lines when
221 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
222 Suggested by Hans Aberg.
224 2000-12-19 Akim Demaille <akim@epita.fr>
226 Let the handling of the skeleton files be local to the procedures
229 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
231 (fparser, open_extra_files): Remove.
232 (open_files, output_files): Don't take care of fparser.
233 * src/files.h: Adjust.
234 * src/output.c (output_parser): Open and close the file to the
236 * src/reader.c (read_declarations): When %semantic_parser, open
239 2000-12-19 Akim Demaille <akim@epita.fr>
241 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
242 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
244 2000-12-19 Akim Demaille <akim@epita.fr>
246 * src/files.c (open_files): Yipee! We no longer need all the code
247 looking for `/tmp' since we have no tmp file.
249 2000-12-19 Akim Demaille <akim@epita.fr>
251 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
253 * src/files.c (open_files): Less dependency on MSDOS etc.
255 2000-12-14 Akim Demaille <akim@epita.fr>
257 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
258 Provide a default definition.
259 Use it when executing the default @ action.
260 * src/reader.c (reader_output_yylsp): No longer include
261 `timestamp' and `text' in the default YYLTYPE.
263 2000-12-12 Akim Demaille <akim@epita.fr>
265 * src/reader.c (copy_definition, parse_union_decl, copy_action)
266 (copy_guard): Quote the file names.
267 Reported by Laurent Mascherpa.
269 2000-12-12 Akim Demaille <akim@epita.fr>
271 * src/output.c (output_headers, output_program, output): Be sure
272 to escape special characters when outputting filenames.
273 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
274 (output_headers): Don't depend on them, Use ACTSTR.
276 2000-11-17 Akim Demaille <akim@epita.fr>
278 * lib/obstack.h: Formatting changes.
279 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
280 prevents type checking.
281 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
282 cast the value to (void *): assigning a `foo *' to a `void *'
284 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
285 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
288 2000-11-17 Akim Demaille <akim@epita.fr>
290 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
292 (suite.m4, regression.m4, calc.m4): these.
293 * tests/atgeneral.m4: Update from CVS Autoconf.
295 2000-11-17 Akim Demaille <akim@epita.fr>
297 * tests/regression.m4 (%union and --defines): New test,
298 demonstrating a current bug in the obstack implementation.
300 2000-11-17 Akim Demaille <akim@epita.fr>
302 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
304 Use them to declare the variables which are global or local to
307 2000-11-17 Akim Demaille <akim@epita.fr>
309 * acconfig.h: Remove, no longer used.
311 2000-11-07 Akim Demaille <akim@epita.fr>
313 * src: s/Copyright (C)/Copyright/g.
315 2000-11-07 Akim Demaille <akim@epita.fr>
317 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
319 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
321 2000-11-07 Akim Demaille <akim@epita.fr>
323 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
324 Merge in a single CPP if/else.
326 2000-11-07 Akim Demaille <akim@epita.fr>
328 * src/output.c (output): Remove useless variables.
329 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
330 argument `data' for consistency with the prototypes.
332 (obstack_copy, obstack_copy0): Rename the second argument as
333 `address' for consistency. Qualify it `const'.
334 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
335 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
336 `const' their input argument (`data' or `address').
337 Adjust the corresponding macros to include `const' in casts.
339 2000-11-03 Akim Demaille <akim@epita.fr>
341 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
342 s/PFILE1/BISON_HAIRY/.
345 2000-11-03 Akim Demaille <akim@epita.fr>
347 For some reason, this was not applied.
349 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
350 `unlink': it's no longer used.
352 2000-11-03 Akim Demaille <akim@epita.fr>
354 * src/files.c (skeleton_find): New function, eved out of...
355 (open_files, open_extra_files): here.
357 2000-11-03 Akim Demaille <akim@epita.fr>
361 * src/files.c (obstack_save): New function.
363 (output_files): this.
365 * src/main.c (main): Don't use `atexit' to register `done', since
366 it no longer has to remove tmp files, just call `output_files'
367 when there are no errors.
369 2000-11-02 Akim Demaille <akim@epita.fr>
371 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
372 `unlink': it's no longer used.
373 * src/files.h: Formatting changes.
375 2000-11-02 Akim Demaille <akim@epita.fr>
377 Remove the last uses of mktemp and unlink/delete.
379 * src/files.c (fdefines, ftable): Removed.
380 (defines_ostack, table_obstack): New.
381 Adjust dependencies of the former into uses of the latter.
382 * src/output.c (output_short_or_char_table, output_short_table):
383 Convert to using obstacks.
384 * src/reader.c (copy_comment2): Accept one FILE * and two
386 (output_token_defines, reader_output_yylsp): Use obstacks.
387 * src/system.h (obstack_fgrow3): New.
389 2000-11-01 Akim Demaille <akim@epita.fr>
391 Change each use of `fattrs' into a use of `attrs_obstack'.
393 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
394 * src/files.c (fattrs): Remove.
395 (attrs_obstack): New.
396 Adjust all dependencies.
397 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
399 2000-11-01 Akim Demaille <akim@epita.fr>
402 Change each use of `faction' into a use of `action_obstack'.
404 * lib/obstack.h, lib/obstack.c: New files.
405 * src/files.c (faction): Remove.
406 (action_obstack): New.
407 Adjust all dependencies.
409 2000-10-20 Akim Demaille <akim@epita.fr>
411 * lib/quote.h (PARAMS): New macro. Use it.
413 2000-10-16 Akim Demaille <akim@epita.fr>
415 * src/output.c (output_short_or_char_table): New function.
416 (output_short_table, output_token_translations): Use it.
417 (goto_actions): Use output_short_table.
419 2000-10-16 Akim Demaille <akim@epita.fr>
421 * src/symtab.c (bucket_new): New function.
424 * src/output.c (output_short_table): New argument to display the
425 comment associated with the table.
427 (output_gram): Use it.
428 (output_rule_data): Nicer output layout for YYTNAME.
430 2000-10-16 Akim Demaille <akim@epita.fr>
432 * src/lex.c (read_typename): New function.
434 * src/reader.c (copy_dollar): Likewise.
436 2000-10-16 Akim Demaille <akim@epita.fr>
438 * src/reader.c (copy_comment2): Expect the input stream to be on
439 the `/' which is suspected to open a comment, instead of being
440 called after `//' or `/*' was read.
441 (copy_comment, copy_definition, parse_union_decl, copy_action)
442 (copy_guard): Adjust.
444 2000-10-16 Akim Demaille <akim@epita.fr>
446 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
447 `read_signed_integer'.
449 2000-10-16 Akim Demaille <akim@epita.fr>
451 * src/reader.c (copy_dollar): New function.
452 (copy_guard, copy_action): Use it.
454 2000-10-16 Akim Demaille <akim@epita.fr>
456 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
457 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
458 New files, from Fileutils 4.0.27.
459 * src/main.c (printable_version): Remove.
460 * src/lex.c, src/reader.c: Use `quote'.
462 2000-10-04 Akim Demaille <akim@epita.fr>
464 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
466 2000-10-04 Akim Demaille <akim@epita.fr>
468 * doc/bison.texinfo: Various typos spotted by Neil Booth.
470 2000-10-04 Akim Demaille <akim@epita.fr>
472 When a literal string is used to define two different tokens,
473 `bison -v' segfaults.
474 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
476 * tests/regression.m4: New file.
477 Include the core of the sample provided by Piotr Gackiewicz.
478 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
481 2000-10-04 Akim Demaille <akim@epita.fr>
483 * src/reader.c (parse_expect_decl): Keep `count' within the size
487 2000-10-02 Paul Eggert <eggert@twinsun.com>
489 * bison.s1 (yyparse): Assign the default value
490 unconditionally, to avoid a GCC warning and make the parser a
493 2000-10-02 Akim Demaille <akim@epita.fr>
495 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
498 2000-10-02 Akim Demaille <akim@epita.fr>
500 * src/derives.c, src/print.c, src/reduce.c: To ease the
501 translation, move some `\n' out of the translated strings.
503 2000-10-02 Akim Demaille <akim@epita.fr>
505 The location tracking mechanism is precious for parse error
506 messages. Nevertheless, it is enabled only when `@n' is used in
507 the grammar, which is a different issue (you can use it in error
508 message, but not in the grammar per se). Therefore, there should
509 be another means to enable it.
511 * src/getargs.c (getargs): Support `--locations'.
513 * src/getargs.h (locationsflag): Export it.
514 * src/lex.c (percent_table): Support `%locations'.
515 * src/reader.c (yylsp_needed): Remove this variable, now replaced
516 with `locationsflag'.
517 * doc/bison.texinfo: Document `--locations' and `%locations'.
519 * tests/calc.m4: Test it.
521 For regularity of the names, replace each
522 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
523 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
524 In addition replace each `flag' with `_flag'.
526 2000-10-02 Akim Demaille <akim@epita.fr>
528 Also test parse error messages, including with YYERROR_VERBOSE.
530 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
532 Use it to check the computations.
533 Use it to check `nonassoc' is honored.
534 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
536 (_AT_CHECK_CALC): Adjust to this option.
537 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
539 2000-10-02 Akim Demaille <akim@epita.fr>
541 Test also `--verbose', `--defines' and `--name-prefix'. Testing
542 the latter demonstrates a flaw in the handling of non debugging
543 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
544 was used in order to simplify:
560 unfortunately this leads to a CPP conflict when
561 `--name-prefix=foo' is used since it produces `#define yydebug
564 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
565 (YYDPRINTF): New macro.
567 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
569 Also test `--verbose', `--defines' and `--name-prefix'.
571 2000-10-02 Akim Demaille <akim@epita.fr>
573 Improve the readability of the produced parsers.
575 * src/bison.s1: Formatting changes.
576 Improve the comment related to the `$' mark.
577 (yydefault): Don't fall through to `yyresume': `goto' there.
578 * src/output.c (output_parser): When the `$' is met, skip the end
580 New variable, `number_of_dollar_signs', to check there's exactly
581 one `$' in the parser skeleton.
583 2000-10-02 Akim Demaille <akim@epita.fr>
585 * lib/xstrdup.c: New file, from the fileutils.
586 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
587 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
588 instead of strlen + xmalloc + strcpy.
589 * src/symtab.c (copys): Remove, use xstrdup instead.
591 2000-10-02 Akim Demaille <akim@epita.fr>
593 * src/gram.h (associativity): New enum type which replaces the
594 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
595 `right_assoc', `left_assoc' and `non_assoc'.
596 Adjust all dependencies.
597 * src/reader.c: Formatting changes.
598 (LTYPESTR): Don't define it, use it as a literal in
599 `reader_output_yylsp'.
600 * src/symtab.h (symbol_class): New enum type which replaces the
601 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
602 `sunknown', `stoken and `snterm'.
604 2000-10-02 Akim Demaille <akim@epita.fr>
606 * src/getargs.c (fixed_outfiles): Rename as...
607 (yaccflag): for consistency and accuracy.
610 2000-10-02 Akim Demaille <akim@epita.fr>
612 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
613 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
614 difficult and introduced a lot of core dump. It turns out that
615 Bison used an implementation of `xmalloc' based on `calloc', and
616 at various places it does depend upon the initialization to 0. I
617 have not tried to isolate the pertinent places, and all the former
618 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
619 someone should address this issue.
621 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
622 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
625 * src/warshall.h: New file.
628 2000-10-02 Akim Demaille <akim@epita.fr>
630 Various anti-`extern in *.c' changes.
632 * src/system.h: Include `assert.h'.
634 2000-10-02 Akim Demaille <akim@epita.fr>
636 * src/state.h (nstates, final_state, first_state, first_shift)
637 (first_reduction): Move their exportation from here...
638 * src/LR0.h: to here.
640 * src/getargs.c (statisticsflag): New variable.
641 Add support for `--statistics'.
644 Remove a lot of now useless `extern' statements in most files.
646 2000-10-02 Akim Demaille <akim@epita.fr>
648 * src/LR0.h: New file.
651 2000-10-02 Akim Demaille <akim@epita.fr>
653 * src/print.h: New file.
655 * src/print.c: Formatting and ordering changes.
656 (verbose, terse): Replace with...
657 (print_results): this new function.
660 2000-10-02 Akim Demaille <akim@epita.fr>
662 * src/conflicts.c (conflict_report): New function.
663 (conflict_log, verbose_conflict_log): Replace with...
664 (print_conflicts): this function.
666 * src/conflicts.h: New file.
667 Propagate its inclusion.
669 2000-10-02 Akim Demaille <akim@epita.fr>
671 * src/nullable.h: New file.
672 Propagate its inclusion.
673 * src/nullable.c: Formatting changes.
675 2000-10-02 Akim Demaille <akim@epita.fr>
677 * src/reduce.h: New file.
678 Propagate its inclusion.
679 * src/reduce.c: Topological sort and other formatting changes.
680 (bool, TRUE, FALSE): Move their definition to...
681 * src/system.h: here.
683 2000-10-02 Akim Demaille <akim@epita.fr>
685 * src/files.c: Formatting changes.
686 (tryopen, tryclose, openfiles): Rename as...
687 (xfopen, xfclose, open_files): this.
688 (stringappend): static.
689 * src/files.h: Complete the list of exported symbols.
692 2000-10-02 Akim Demaille <akim@epita.fr>
694 * src/reader.h: New file.
695 Propagate its use instead of tedious list of `extern' and
697 * src/reader.c: Formatting changes, topological sort,
700 2000-10-02 Akim Demaille <akim@epita.fr>
702 * src/lex.h: Prototype `lex.c' exported functions.
703 * src/reader.c: Adjust.
704 * src/lex.c: Formatting changes.
705 (safegetc): Rename as...
708 2000-10-02 Akim Demaille <akim@epita.fr>
710 * src/lalr.h: New file.
711 Propagate its inclusion instead of prototypes and `extern'.
712 * src/lalr.c: Formatting changes, topological sorting etc.
714 2000-10-02 Akim Demaille <akim@epita.fr>
716 * src/output.c (token_actions): Introduce a temporary array,
717 YYDEFACT, that makes it possible for this function to use
720 2000-10-02 Akim Demaille <akim@epita.fr>
722 `user_toknums' is output as a `short[]' in `output.c', while it is
723 defined as a `int[]' in `reader.c'. For consistency with the
724 other output tables, `user_toknums' is now defined as a table of
727 * src/reader.c (user_toknums): Be a short table instead of an int
731 Factor the short table outputs.
733 * src/output.c (output_short_table): New function.
734 * src/output.c (output_gram, output_stos, output_rule_data)
735 (output_base, output_table, output_check): Use it.
737 2000-10-02 Akim Demaille <akim@epita.fr>
739 * src/output.c (output): Topological sort of the functions, in
740 order to get rid of the `static' prototypes.
741 No longer use `register'.
742 * src/output.h: New file.
743 Propagate its inclusion in files explicitly prototyping functions
746 2000-09-21 Akim Demaille <akim@epita.fr>
748 * src/atgeneral.m4: Update from Autoconf.
750 2000-09-21 Akim Demaille <akim@epita.fr>
752 * src/closure.h: New file.
753 * src/closure.c: Formatting changes, topological sort over the
754 functions, use of closure.h.
755 (initialize_closure, finalize_closure): Rename as...
756 (new_closure, free_closure): these. Adjust dependencies.
757 * src/LR0.c: Formatting changes, topological sort, use of
759 (initialize_states): Rename as...
761 * src/Makefile.am (noinst_HEADERS): Adjust.
763 2000-09-20 Akim Demaille <akim@epita.fr>
765 * src/acconfig.h: Don't protect config.h against multiple
768 * src/system.h: Define PARAMS.
769 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
770 purpose of config.h. system.h must not try to fix wrong
771 definitions in config.h.
773 2000-09-20 Akim Demaille <akim@epita.fr>
775 * src/derives.h: New file.
776 * src/main.c, src/derives.h: Use it.
778 * src/Makefile.am (noinst_HEADERS): Adjust.
780 2000-09-20 Akim Demaille <akim@epita.fr>
782 * tests/atgeneral.m4: Update from Autoconf.
783 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
784 (AT_CHECK_CALC): New macros.
785 Use these macros to test bison with options `', `--raw',
786 `--debug', `--yacc', `--yacc --debug'.
788 2000-09-19 Akim Demaille <akim@epita.fr>
790 * src/output.c: Formatting changes.
791 * src/machine.h: Remove, leaving its contents in...
792 * src/system.h: here.
794 Adjust all dependencies on stdio.h and machine.h.
795 * src/getargs.h: New file.
796 Let all `extern' declarations about getargs.c be replaced with
797 inclusion of `getargs.h'.
798 * src/Makefile.am (noinst_HEADERS): Adjust.
800 * tests/calc.m4 (yyin): Be initialized in main, not on the global
802 (yyerror): Returns void, not int.
803 * doc/bison.texinfo: Formatting changes.
805 2000-09-19 Akim Demaille <akim@epita.fr>
807 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
810 2000-09-18 Akim Demaille <akim@epita.fr>
812 * configure.in: Append WARNING_CFLAGS to CFLAGS.
813 * src/Makefile.am (INCLUDES): Don't.
814 Be ready to fetch headers in lib/.
816 2000-09-18 Akim Demaille <akim@epita.fr>
818 * doc/bison.texinfo: Update the copyright.
819 ANSIfy and GNUify the examples.
822 2000-09-18 Akim Demaille <akim@epita.fr>
824 First set of tests: use the `calc' example from the documentation.
826 * src/bison.s1 (yyparse): Condition the code using `yytname' which
827 is defined only when YYDEBUG is.
828 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
829 * src/files.c (tryopen, tryclose): Formatting changes.
830 Move to the top and be static.
831 * src/reader.c (read_signed_integer): Likewise.
832 * tests/calc.m4: New file.
833 * Makefile.am, suite.m4: Adjust.
834 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
836 2000-09-18 Akim Demaille <akim@epita.fr>
838 Add support for an Autotest test suite for Bison.
840 * m4/m4.m4, m4/atconfig.m4: New files.
841 * m4/Makefile.am (EXTRA_DIST): Adjust.
842 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
844 * src/getargs.c: Display a more standard --version message.
845 * src/reader.c (reader): Formatting changes.
846 No longer depend upon VERSION_STRING.
847 * configure.in: No longer use `dnl'.
848 Set up the test suite and the new directory `tests/.
849 (VERSION_STRING): Remove.
851 2000-04-14 Akim Demaille <akim@epita.fr>
853 * src/reader.c (copy_comment2): New function, same as former
854 `copy_comment', but outputs into two FILE *.
855 (copy_comment): Use it.
856 (parse_union_decl): Use it.
857 (get_type, parse_start_decl): Use the same `invalid' message.
858 (parse_start_decl, parse_union_decl): Use the same `multiple'
860 (parse_union_decl, copy_guard, copy_action): Use the same
862 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
864 2000-03-31 Akim Demaille <akim@epita.fr>
866 * src/files.c (tryopen, tryclose): Move to the top.
869 2000-03-31 Akim Demaille <akim@epita.fr>
871 * src/main.c (main): Don't call `done', exit does it.
873 2000-03-31 Akim Demaille <akim@epita.fr>
875 * allocate.c: s/return (foo)/return foo/.
878 * output.c: Likewise.
879 * reader.c: Likewise.
880 * symtab.c: Likewise.
881 * vmsgetargs.c: Likewise.
883 2000-03-31 Akim Demaille <akim@epita.fr>
885 Clean up the error reporting functions.
887 * src/report.c: New file.
888 * src/report.h: Likewise.
889 * src/Makefile.am: Adjust.
890 * m4/error.m4: New file.
891 * m4/Makefile.am: Adjust.
892 * configure.in (jm_PREREQ_ERROR): Call it.
893 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
895 (fatal, fatals): Remove. All callers use complain.c::fatal.
896 (warn, warni, warns, warnss, warnss): Remove. All callers use
897 complain.c::complain.
898 (toomany): Remove, use fatal instead.
899 * src/files.c (done): No argument, use complain_message_count.
900 * src/main.c (main): Register `done' to `atexit'.
902 * src/getargs.c (usage): More `fputs', less `fprintf'.
904 2000-03-28 Akim Demaille <akim@epita.fr>
906 * lib/: New directory.
907 * Makefile.am (SUBDIRS): Adjust.
908 * configure.in: Adjust.
909 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
911 * src/alloca.c: Moved to lib/.
912 * src/getopt.c: Likewise.
913 * src/getopt1.c: Likewise.
914 * src/getopt.h: Likewise.
915 * src/ansi2knr.c: Likewise.
916 * src/ansi2knr.1: Likewise.
917 * src/Makefile.am: Adjust.
918 * lib/Makefile.am: New file.
920 2000-03-28 Akim Demaille <akim@epita.fr>
922 * src/getargs.c (usage): Refresh the help message.
924 2000-03-17 Akim Demaille <akim@epita.fr>
926 * src/getopt1.c: Updated from textutils 2.0e
927 * src/getopt.c: Likewise.
928 * src/getopt.h: Likewise.
930 2000-03-17 Akim Demaille <akim@epita.fr>
932 * src/Makefile.am (bison.simple): Fix the awk program: quote only
933 the file name, not the whole `#line LINE FILE'.
935 2000-03-17 Akim Demaille <akim@epita.fr>
937 On syntax errors, report the token on which we choked.
939 * src/bison.s1 (yyparse): In the label yyerrlab, when
940 YYERROR_VERBOSE, add yychar in msg.
942 2000-03-17 Akim Demaille <akim@epita.fr>
944 * src/reader.c (copy_at): New function.
945 (copy_guard): Use it.
946 (copy_action): Use it.
948 2000-03-17 Akim Demaille <akim@epita.fr>
950 Be kind to translators, save some useless translations.
952 * src/main.c (banner): New function.
953 (fatal_banner): Use it.
954 (warn_banner): Use it.
956 2000-03-17 Akim Demaille <akim@epita.fr>
958 * src/reader.c (copy_definition): Use copy_string and
959 copy_comment. Removed now unused `match', `ended',
961 (copy_comment, copy_string): Moved, to be visible from
964 2000-03-17 Akim Demaille <akim@epita.fr>
966 * src/reader.c (copy_string): Declare `static inline'. No
967 problems with inline, since it is checked by configure.
968 (copy_comment): Likewise.
970 2000-03-17 Akim Demaille <akim@epita.fr>
972 * src/reader.c (packsymbols): Formatting changes.
974 2000-03-17 Akim Demaille <akim@epita.fr>
976 * src/reader.c (copy_comment): New function, factored out from:
977 (copy_action): Use it. Removed now unused `match', `ended',
979 (copy_guard): Likewise.
981 2000-03-17 Akim Demaille <akim@epita.fr>
983 * src/reader.c (copy_string): New function, factored out from:
984 (copy_action): Use it.
985 (copy_guard): Likewise.
987 2000-03-17 Akim Demaille <akim@epita.fr>
989 Change the handling of @s so that they behave exactly like $s.
990 There is now a pseudo variable @$ (readble and writable), location
991 of the lhs of the rule (by default ranging from the location of
992 the first symbol of the rhs, to the location of the last symbol,
993 or, if the rhs is empty, YYLLOC).
995 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
997 (yyparse): When providing a default semantic action, provide a
998 default location action.
999 (after the $): No longer change `*YYLSP', just stack YYLOC the
1000 same way you stack YYVAL.
1001 * src/reader.c (read_declarations): Use warns.
1002 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
1003 (copy_action, case '@'): Likewise.
1004 Use a standard error message, to save useless work from
1007 2000-03-17 Akim Demaille <akim@epita.fr>
1009 * src/bison.s1: Formatting and cosmetics changes.
1010 * src/reader.c: Likewise.
1011 Update the Copyright notice.
1013 2000-03-17 Akim Demaille <akim@epita.fr>
1015 * src/bison.s1 (#line): All set to `#line' only, since the
1016 Makefile now handles them.
1018 2000-03-16 Akim Demaille <akim@epita.fr>
1020 * src/output.c (output_rule_data): Output the documentation of
1022 (Copyright notice): Update.
1025 2000-03-16 Akim Demaille <akim@epita.fr>
1027 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
1028 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
1029 One `#if YYDEBUG' remains, since it uses variables which are
1030 defined only if `YYDEBUG != 0'.
1032 2000-03-16 Akim Demaille <akim@epita.fr>
1034 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
1035 and related variables so that the similarities are highlighted.
1037 2000-03-16 Akim Demaille <akim@epita.fr>
1039 * src/bison.s1: Properly indent CPP directives.
1041 2000-03-16 Akim Demaille <akim@epita.fr>
1043 * src/bison.s1: Properly indent the `alloca' CPP section.
1045 2000-03-16 Akim Demaille <akim@epita.fr>
1047 Do not hard code values of directories in `configure.in'.
1048 Update the `configure' tool chain.
1050 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
1052 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
1053 (AC_OUTPUT): Add m4/Makefile.
1054 Bump to bison 1.28a, 1.29 has never been released.
1055 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
1056 handled via src/Makefile.am.
1057 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
1058 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
1060 * Makefile.am (SUBDIRS): Add m4.
1061 (ACLOCAL_AM_FLAGS): New variable.
1062 (AUTOMAKE_OPTIONS): Add check-news.
1063 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
1064 the proper line number and file name.
1065 (DEFS): Propagate the location of bison library files and of the
1067 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
1069 * acinclude.m4: Remove, replaced by the directory m4.
1070 * m4/Makefile.am (EXTRA_DIST): New variable.
1071 * m4/gettext.m4: New file, from the fileutils.
1072 * m4/lcmessage.m4: Likewise
1073 * m4/progtest.m4: Likewise.
1074 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
1076 2000-03-10 Akim Demaille <akim@epita.fr>
1079 Formatting changes of various comments.
1080 Respect the GNU coding standards at various places.
1081 Don't use `_()' when no translation is needed.
1083 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1086 OS/2 honors TMPDIR environment variable.
1088 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1090 * doc/bison.texinfo: Tweaked spelling and grammar.
1092 Removed reference to price of printed copy.
1093 Mention BISON_SIMPLE and BISON_HAIRY.
1095 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1097 * configure.in, NEWS:
1098 Bison 1.29 released.
1100 1999-10-27 Jesse Thilo <jthilo@gnu.org>
1102 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
1103 Added reference card.
1105 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1107 * po/ru.po: Added Russian translation.
1109 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1111 * configure.in: Added Russian translation.
1113 1999-07-06 Jesse Thilo <jthilo@gnu.org>
1115 * configure.in, NEWS, README:
1116 Released version 1.28.
1118 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1121 Squashed redefinition warning on some systems.
1123 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
1124 Have configure build version string instead of relying on ANSI string
1127 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1129 * po/POTFILES.in: Got rid of version.c.
1131 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1133 * acconfig.h, configure.in:
1134 Have configure build version string instead of relying on ANSI string
1137 1999-06-08 Jesse Thilo <jthilo@gnu.org>
1140 Dropped mention of `+' for long-named options.
1142 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1144 * src/files.c: Added <unistd.h> for unlink().
1146 * src/Makefile.am, src/system.h:
1149 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1151 * README: Added a FAQ list.
1153 * configure.in, acconfig.h:
1156 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1158 * doc/FAQ, doc/Makefile.am:
1161 1999-05-19 Jesse Thilo <jthilo@gnu.org>
1163 * src/alloc.h, src/symtab.h, src/version.c:
1164 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1166 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1168 * src/.cvsignore, src/Makefile.am:
1169 Reorganized: sources in `src', documentation in `doc'.
1171 * src/lex.c (literalchar):
1172 fixed the code for escaping double quotes (thanks
1175 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1177 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1178 Adjusted paths to reflect directory reorganization.
1180 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1182 * doc/.cvsignore, doc/Makefile.am:
1183 Reorganized: sources in `src', documentation in `doc'.
1185 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1188 Updated AC_INIT file to reflect directory reorganization.
1190 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1191 Reorganized: sources in `src', documentation in `doc'.
1193 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1196 Don't declare calloc() and realloc() if not necessary.
1198 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1200 * configure.in, acconfig.h, acinclude.m4:
1201 Don't declare calloc() and realloc() if not necessary.
1203 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1205 * po/.cvsignore: Added i18n support.
1207 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1209 * acconfig.h, configure.in, Makefile.am:
1212 1999-03-22 Jesse Thilo <jthilo@gnu.org>
1214 * src/bison.s1: Fixed #line numbers.
1216 1999-03-15 Jesse Thilo <jthilo@gnu.org>
1218 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1219 Added PO files from Translation Project.
1221 1999-03-03 Jesse Thilo <jthilo@gnu.org>
1224 Added support for non-ANSI compilers (ansi2knr).
1226 1999-02-16 Jesse Thilo <jthilo@gnu.org>
1228 * configure.in: Bumped version number to 1.27.
1231 Added `bison.simple' to list of files removed by `make distclean'.
1233 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1235 * src/files.c, src/files.h:
1236 Defined locations of parser files in config.h instead of Makefile.
1238 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1240 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1241 Defined locations of parser files in config.h instead of Makefile.
1243 1999-02-09 Jesse Thilo <jthilo@gnu.org>
1246 Removed inappropriate use of $< macro.
1248 1999-02-05 Jesse Thilo <jthilo@gnu.org>
1250 * po/Makefile.in.in, po/POTFILES.in:
1251 Add `po' directory skeleton.
1253 1999-01-27 Jesse Thilo <jthilo@gnu.org>
1255 * README: Document help-bison list.
1257 * configure.in: Add check for mkstemp().
1259 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1261 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1262 Hush a few compiler warnings.
1265 Add tryclose(), which verifies that fclose was successful.
1266 Hush a couple of compiler warnings.
1268 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1270 * Makefile.am, OChangeLog:
1271 ChangeLog is now automatically generated. Include the old version as
1274 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1276 * 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:
1279 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1281 * doc/bison.texinfo: Fix formatting glitch.
1283 * doc/bison.texinfo: Update FSF address.
1285 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1287 * acconfig.h: Update FSF address.
1289 1999-01-08 Jesse Thilo <jthilo@gnu.org>
1292 Don't define PACKAGE here, since config.h defines it.
1294 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1296 * src/reader.c: Update copyright date.
1299 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1300 favor of output directly to stderr (avoids buffer overruns).
1302 * src/reader.c: Some checks for premature EOF.
1304 * 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:
1305 Use prototypes if the compiler understands them.
1307 * src/files.c: Honor TMPDIR on Unix hosts.
1308 Use prototypes if the compiler understands them.
1311 Fix a couple of buffer overrun bugs.
1312 Use prototypes if the compiler understands them.
1314 * src/system.h: Include unistd.h and ctype.h.
1315 Use #ifdef instead of #if for NLS symbols.
1317 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1319 * doc/bison.texinfo:
1320 Delete comment "consider using @set for edition number, etc..." since
1321 we now are doing so.
1323 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1326 Use prototypes if the compiler understands them.
1328 * NEWS: Document 1.26 highlights.
1330 * Makefile.am: Require Automake 1.3 or later.
1333 Use prototypes if the compiler understands them.
1335 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1338 Use VERSION symbol from automake for version number.
1340 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1342 * acconfig.h, configure.in, version.cin:
1343 Use VERSION symbol from automake for version number.
1345 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1348 Distribute original version of simple parser (bison.s1), not built
1349 version (bison.simple).
1351 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1353 * doc/bison.texinfo: Add info dir entry.
1355 * doc/bison.texinfo:
1356 Let automake put version number into documentation.
1358 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1360 * src/bison.cld, src/build.com, src/vmshlp.mar:
1361 Add non-RCS files from /gd/gnu/bison.
1363 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1366 Document the BISON_HAIRY and BISON_SIMPLE variables.
1368 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1370 * src/version.c: Build version.c automatically.
1373 Fix token numbering (used to start at 258, not 257).
1375 * src/system.h: Include config.h.
1377 * src/getargs.c: Update bug report address.
1379 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1380 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1382 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1385 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1387 * configure.in, version.cin:
1388 Build version.c automatically.
1390 * AUTHORS: Add AUTHORS file.
1392 * README: Update bug report address.
1395 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1397 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1400 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1402 * doc/bison.texinfo: Clean up some formatting.
1404 1998-05-05 Richard Stallman <rms@gnu.org>
1406 * doc/bison.texinfo:
1407 Explain better why to make a pure parser.
1409 1998-01-05 Richard Stallman <rms@gnu.org>
1411 * src/files.c (openfiles):
1412 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1413 find a temporary directory, if possible. Do not unlink files while
1416 1997-08-25 Richard Stallman <rms@gnu.org>
1418 * src/reader.c (stack_offset;):
1419 Change some warni to warns.
1421 * src/lex.c (literalchar): Use warns, not warni.
1423 1997-06-28 Richard Stallman <rms@gnu.org>
1425 * src/bison.s1: Add a Bison version comment.
1427 * src/main.c (fatal, warn, berror):
1430 1997-06-28 Richard Stallman <rms@gnu.org>
1432 * Makefile.in (bison_version): New variable.
1433 (dist): Use that variable.
1434 (bison.s1): Substitute the Bison version into bison.simple.
1436 * bison.simple: Add a Bison version comment.
1438 1997-06-18 Richard Stallman <rms@gnu.org>
1440 * src/main.c (fatal, warn, berror):
1441 Make error messages standard.
1442 (toomany): Improve error message text.
1444 * 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:
1445 new.h renamed to alloc.h.
1447 1997-06-18 Richard Stallman <rms@gnu.org>
1449 * Makefile.in: new.h renamed to alloc.h.
1451 1997-05-24 Richard Stallman <rms@gnu.org>
1453 * src/lex.c (literalchar):
1454 Fix the code for escaping \, " and '.
1456 (lex): Avoid trouble when there are many chars
1457 to discard in a char literal with just several chars in it.
1459 1997-05-17 Richard Stallman <rms@gnu.org>
1462 Use malloc, if using alloca is troublesome.
1463 (YYSTACK_USE_ALLOCA): New flag macro.
1464 Define it for some systems and compilers.
1465 (YYSTACK_ALLOC): New macro.
1466 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1467 If it was malloc'd, free it.
1469 1997-05-17 Richard Stallman <rms@gnu.org>
1472 Use malloc, if using alloca is troublesome.
1473 (YYSTACK_USE_ALLOCA): New flag macro.
1474 Define it for some systems and compilers.
1475 (YYSTACK_ALLOC): New macro.
1476 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1477 If it was malloc'd, free it.
1479 1997-04-23 Richard Stallman <rms@gnu.org>
1482 (alloca) [__hpux]: Always define as __builtin_alloca.
1484 1997-04-23 Richard Stallman <rms@gnu.org>
1487 (alloca) [__hpux]: Always define as __builtin_alloca.
1489 1997-04-22 Richard Stallman <rms@gnu.org>
1492 [__hpux]: Include alloca.h (right for HPUX 10)
1493 instead of declaring alloca (right for HPUX 9).
1495 * src/bison.s1 (__yy_memcpy):
1496 Declare arg `count' as unsigned int.
1497 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1499 1997-04-22 Richard Stallman <rms@gnu.org>
1502 [__hpux]: Include alloca.h (right for HPUX 10)
1503 instead of declaring alloca (right for HPUX 9).
1505 * bison.simple (__yy_memcpy):
1506 Declare arg `count' as unsigned int.
1507 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1509 1997-01-03 Richard Stallman <rms@gnu.org>
1511 * src/allocate.c: [__STDC__ or _MSC_VER]:
1512 Declare calloc and realloc to return void *.
1514 1997-01-02 Richard Stallman <rms@gnu.org>
1517 [_MSC_VER]: Include stdlib.h and process.h.
1518 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
1520 * src/main.c (main): Return FAILURE as a value.
1521 (printable_version): Declare arg as int, not char.
1523 1997-01-02 Richard Stallman <rms@gnu.org>
1525 * Makefile.in (dist):
1526 Explicitly check for symlinks, and copy them.
1528 1996-12-19 Richard Stallman <rms@gnu.org>
1531 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
1533 1996-12-18 Paul Eggert <eggert@gnu.org>
1535 * src/bison.s1 (yyparse):
1536 If __GNUC__ and YYPARSE_PARAM are both defined,
1537 declare yyparse to have a void * argument.
1539 1996-12-18 Paul Eggert <eggert@gnu.org>
1541 * bison.simple (yyparse):
1542 If __GNUC__ and YYPARSE_PARAM are both defined,
1543 declare yyparse to have a void * argument.
1545 1996-12-17 Richard Stallman <rms@gnu.org>
1547 * src/reduce.c (nbits): Add some casts.
1549 1996-08-12 Richard Stallman <rms@gnu.org>
1551 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
1553 1996-08-12 Richard Stallman <rms@gnu.org>
1555 * bison.simple: Test _MSDOS as well as _MSDOS_.
1557 1996-07-31 Richard Stallman <rms@gnu.org>
1560 [__sun && __i386]: Include alloca.h.
1562 1996-07-31 Richard Stallman <rms@gnu.org>
1565 [__sun && __i386]: Include alloca.h.
1567 1996-07-30 Richard Stallman <rms@gnu.org>
1569 * src/bison.s1: Comment change.
1571 * src/bison.s1: Test _MSDOS_, not MSDOS.
1573 1996-07-30 Richard Stallman <rms@gnu.org>
1575 * bison.simple: Comment change.
1577 * bison.simple: Test _MSDOS_, not MSDOS.
1579 1996-06-01 Richard Stallman <rms@gnu.org>
1581 * 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:
1582 Insert `_' macro around many string constants.
1585 Insert `_' macro around many string constants.
1587 (main): Call setlocale, bindtextdomain and textdomain.
1589 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
1590 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
1591 [ENABLE_NLS]: Include libintl.h.
1592 [ENABLE_NLS] (gettext): Define.
1593 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
1594 (N_, PACKAGE, LOCALEDIR): New macros.
1596 1996-06-01 Richard Stallman <rms@gnu.org>
1598 * POTFILES.in: New file.
1600 * Makefile.in (allocate.o):
1601 Define target explicitly.
1603 * Makefile.in (CFLAGS): Set to @CFLAGS@.
1604 (LDFLAGS): Set to @LDFLAGS@.
1605 (configure): Run autoconf only if preceding `cd' succeeds.
1606 (bison.s1): Redirect output to temporary file then move the
1607 temporary to the target, rather than redirecting directly to bison.s1.
1608 (clean): Remove config.status and config.log.
1609 (distclean): Don't remove config.status here.
1611 1996-05-12 Richard Stallman <rms@gnu.org>
1614 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1616 1996-05-12 Richard Stallman <rms@gnu.org>
1619 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1621 1996-05-11 Richard Stallman <rms@gnu.org>
1623 * src/bison.s1 (__yy_memcpy):
1624 Really reorder the args, as was supposedly done on Feb 14 1995.
1625 (yyparse): Calls changed accordingly.
1627 1996-05-11 Richard Stallman <rms@gnu.org>
1629 * Makefile.in (dist): Don't use $(srcdir).
1631 * bison.simple (__yy_memcpy):
1632 Really reorder the args, as was supposedly done on Feb 14 1995.
1633 (yyparse): Calls changed accordingly.
1635 1996-01-27 Richard Stallman <rms@gnu.org>
1637 * src/output.c (output_rule_data):
1638 Test YYERROR_VERBOSE in the conditional
1639 around the definition of ttyname.
1641 1995-12-29 Richard Stallman <rms@gnu.org>
1644 Fix line numbers in #line commands.
1646 1995-12-29 Richard Stallman <rms@gnu.org>
1649 Fix line numbers in #line commands.
1651 1995-12-27 Richard Stallman <rms@gnu.org>
1653 * src/bison.s1 (YYPARSE_PARAM_DECL):
1654 In C++, make it always null.
1655 (YYPARSE_PARAM_ARG): New macro.
1656 (yyparse): Use YYPARSE_PARAM_ARG.
1658 1995-12-27 Richard Stallman <rms@gnu.org>
1660 * bison.simple (YYPARSE_PARAM_DECL):
1661 In C++, make it always null.
1662 (YYPARSE_PARAM_ARG): New macro.
1663 (yyparse): Use YYPARSE_PARAM_ARG.
1665 1995-11-29 Richard Stallman <rms@gnu.org>
1667 * doc/bison.texinfo:
1668 Describe literal string tokens, %raw, %no_lines, %token_table.
1670 1995-11-29 Daniel Hagerty <hag@gnu.org>
1672 * doc/bison.texinfo: Fixed update date
1674 1995-10-16 Richard Stallman <rms@gnu.org>
1676 * src/version.c: Version 1.25.
1678 1995-10-16 Richard Stallman <rms@gnu.org>
1680 * NEWS: *** empty log message ***
1682 1995-10-16 Richard Stallman <rms@gnu.org>
1684 * doc/bison.1, doc/bison.rnh:
1687 1995-10-15 Richard Stallman <rms@gnu.org>
1689 * src/vmsgetargs.c, src/getargs.c:
1690 Added -n, -k, and -raw switches.
1691 (noparserflag, toknumflag, rawtoknumflag): New variables.
1693 * src/symtab.h (SALIAS):
1694 New #define for adding aliases to %token.
1695 (struct bucket): Added `alias' field.
1697 * src/reduce.c (reduce_grammar):
1698 Revise error message.
1699 (print_notices): Remove final `.' from error message.
1701 * src/reader.c (reader_output_yylsp):
1703 (readgram): Use `#if 0' around code that accepted %command
1704 inside grammar rules: The documentation doesn't allow it,
1705 and it will fail since the %command processors scan for the next %.
1706 (parse_token_decl): Extended the %token
1707 declaration to allow a multi-character symbol as an alias.
1708 (parse_thong_decl): New function.
1709 (read_declarations): Added %thong declarations.
1710 (read_declarations): Handle NOOP to deal with allowing
1711 % declarations as another means to specify the flags.
1712 (readgram): Allow %prec prior to semantics embedded in a rule.
1713 (skip_to_char, read_declarations, copy_definition)
1714 (parse_token_decl, parse_start_decl, parse_type_decl)
1715 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
1716 (get_type_name, copy_guard, copy_action, readgram)
1717 (get_type, packsymbols): Revised most error messages.
1718 Changed `fatal' to `warnxxx' to avoid aborting for error.
1719 Revised and use multiple warnxxx functions to avoid using VARARGS1.
1720 (read_declarations): Improve the error message for
1721 an invalid character. Do not abort.
1722 (read_declarations, copy_guard, copy_action): Use
1723 printable_version to avoid unprintable characters in printed output.
1724 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
1725 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
1726 Allow the type of a non-terminal can be given
1727 more than once, as long as all specifications give the same type.
1730 (output_headers, output_trailers, output, output_gram)
1731 (output_rule_data): Implement noparserflag variable.
1732 Implement toknumflag variable.
1733 (output): Call reader_output_yylsp to output LTYPESTR.
1735 * src/main.c (main):
1736 If reader sees an error, don't process the grammar.
1737 (fatals): Updated to not use VARARGS1.
1738 (printable_version, int_to_string, warn, warni, warns, warnss)
1739 (warnsss): New error reporting functions. Avoid abort for error.
1742 Added THONG and NOOP for alias processing.
1743 Added SETOPT for the new code that allows setting options with %flags.
1746 Include getopt.h. Add some extern decls.
1747 (safegetc): New function to deal with EOF gracefully.
1748 (literalchar); new function to deal with reading \ escapes.
1749 (lex): Use literalchar.
1750 (lex): Implemented "..." tokens.
1751 (literalchar, lex, parse_percent_token): Made tokenbuffer
1752 always contain the token. This includes growing the token
1753 buffer while reading an integer.
1754 (parse_percent_token): Replaced if-else statement with percent_table.
1755 (parse_percent_token): Added % declarations as another
1756 way to specify the flags -n, -l, and -r. Also added hooks for
1757 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
1758 major changes to files.c.
1759 (lex) Retain in the incoming stream a character following
1761 (skip_white_space, lex): Revised most error messages
1762 and changed fatal to warn to avoid aborting.
1763 (percent_table): Added %thong declarations.
1765 * src/gram.h: Comment changes.
1767 * src/files.c (openfiles, open_extra_files, done):
1769 and actfile file. Handle noparserflag. Both for -n switch.
1771 * src/conflicts.c (resolve_sr_conflict):
1772 Remove use of alloca.
1774 1995-06-01 Jim Meyering <meyering@gnu.org>
1776 * doc/bison.texinfo: *** empty log message ***
1778 1995-05-06 Richard Stallman <rms@gnu.org>
1780 * src/bison.s1: Comment change.
1782 1995-05-06 Richard Stallman <rms@gnu.org>
1784 * bison.simple: Comment change.
1786 1995-05-03 Richard Stallman <rms@gnu.org>
1788 * src/version.c: Version now 1.24.
1790 * src/bison.s1: Change distribution terms.
1792 * src/version.c: Version now 1.23.
1794 1995-05-03 Richard Stallman <rms@gnu.org>
1796 * doc/bison.texinfo:
1797 Rewrite "Conditions for Using Bison".
1798 Update version to 1.24.
1800 1995-05-03 Richard Stallman <rms@gnu.org>
1802 * bison.simple: Change distribution terms.
1804 1995-02-23 Richard Stallman <rms@gnu.org>
1806 * src/files.c: Test __VMS_POSIX as well as VMS.
1808 1995-02-14 Jim Meyering <meyering@gnu.org>
1810 * src/bison.s1 (__yy_memcpy):
1811 Renamed from __yy_bcopy to avoid
1812 confusion. Reverse FROM and TO arguments to be consistent with
1815 1995-02-14 Jim Meyering <meyering@gnu.org>
1817 * bison.simple (__yy_memcpy):
1818 Renamed from __yy_bcopy to avoid
1819 confusion. Reverse FROM and TO arguments to be consistent with
1822 1994-11-10 David J. MacKenzie <djm@gnu.org>
1828 * Makefile.in (DISTFILES): Include NEWS.
1830 * Makefile.in (DISTFILES):
1831 Include install-sh, not install.sh.
1833 * configure.in: Update to Autoconf v2 macro names.
1835 1994-10-05 David J. MacKenzie <djm@gnu.org>
1837 * Makefile.in: fix typo
1839 * Makefile.in (prefix, exec_prefix):
1840 Let configure set them.
1842 1994-09-28 David J. MacKenzie <djm@gnu.org>
1844 * Makefile.in: Set datadir to $(prefix)/share.
1846 1994-09-15 Richard Stallman <rms@gnu.org>
1849 Update copyright notice and GPL version.
1851 1994-09-15 Richard Stallman <rms@gnu.org>
1854 Update copyright notice and GPL version.
1856 1994-07-12 Richard Stallman <rms@gnu.org>
1858 * src/reduce.c, src/reader.c:
1861 1994-05-05 David J. MacKenzie <djm@gnu.org>
1863 * Makefile.in: entered into RCS
1865 1994-03-26 Richard Stallman <rms@gnu.org>
1867 * src/bison.s1: entered into RCS
1869 1994-03-26 Richard Stallman <rms@gnu.org>
1871 * bison.simple: entered into RCS
1873 1994-03-25 Richard Stallman <rms@gnu.org>
1875 * src/main.c: entered into RCS
1877 1994-03-24 Richard Stallman <rms@gnu.org>
1879 * src/conflicts.c: entered into RCS
1881 1994-01-02 Richard Stallman <rms@gnu.org>
1883 * Makefile.in: *** empty log message ***
1885 1993-11-21 Richard Stallman <rms@gnu.org>
1887 * src/bison.s1: *** empty log message ***
1889 1993-11-21 Richard Stallman <rms@gnu.org>
1891 * doc/bison.texinfo: entered into RCS
1893 * doc/bison.texinfo: *** empty log message ***
1895 1993-11-21 Richard Stallman <rms@gnu.org>
1897 * bison.simple: *** empty log message ***
1899 1993-10-25 David J. MacKenzie <djm@gnu.org>
1901 * doc/bison.texinfo: *** empty log message ***
1903 1993-10-19 Richard Stallman <rms@gnu.org>
1905 * src/bison.s1: *** empty log message ***
1907 1993-10-19 Richard Stallman <rms@gnu.org>
1909 * bison.simple: *** empty log message ***
1911 1993-10-14 Richard Stallman <rms@gnu.org>
1913 * src/bison.s1: *** empty log message ***
1915 1993-10-14 Richard Stallman <rms@gnu.org>
1917 * bison.simple: *** empty log message ***
1919 1993-09-14 David J. MacKenzie <djm@gnu.org>
1921 * doc/bison.texinfo: *** empty log message ***
1923 1993-09-13 Noah Friedman <friedman@gnu.org>
1925 * Makefile.in: *** empty log message ***
1927 1993-09-10 Richard Stallman <rms@gnu.org>
1929 * src/conflicts.c: *** empty log message ***
1931 * src/system.h: entered into RCS
1933 1993-09-10 Richard Stallman <rms@gnu.org>
1935 * doc/bison.1: entered into RCS
1937 1993-09-06 Noah Friedman <friedman@gnu.org>
1939 * src/version.c: entered into RCS
1941 1993-09-06 Noah Friedman <friedman@gnu.org>
1943 * Makefile.in: *** empty log message ***
1945 1993-07-30 David J. MacKenzie <djm@gnu.org>
1947 * Makefile.in: *** empty log message ***
1949 1993-07-24 Richard Stallman <rms@gnu.org>
1951 * src/bison.s1: *** empty log message ***
1953 1993-07-24 Richard Stallman <rms@gnu.org>
1955 * bison.simple: *** empty log message ***
1957 1993-07-08 David J. MacKenzie <djm@gnu.org>
1959 * Makefile.in: *** empty log message ***
1961 1993-07-04 Richard Stallman <rms@gnu.org>
1963 * src/bison.s1: *** empty log message ***
1965 1993-07-04 Richard Stallman <rms@gnu.org>
1967 * bison.simple: *** empty log message ***
1969 1993-06-26 David J. MacKenzie <djm@gnu.org>
1971 * src/getargs.c: entered into RCS
1973 1993-06-26 David J. MacKenzie <djm@gnu.org>
1975 * doc/bison.texinfo: *** empty log message ***
1977 * doc/bison.1: New file.
1979 1993-06-25 Richard Stallman <rms@gnu.org>
1981 * src/getargs.c: New file.
1983 1993-06-16 Richard Stallman <rms@gnu.org>
1985 * src/bison.s1: *** empty log message ***
1987 1993-06-16 Richard Stallman <rms@gnu.org>
1989 * bison.simple: *** empty log message ***
1991 1993-06-03 Richard Stallman <rms@gnu.org>
1993 * src/bison.s1: New file.
1995 1993-06-03 Richard Stallman <rms@gnu.org>
1997 * doc/bison.texinfo: *** empty log message ***
1999 1993-06-03 Richard Stallman <rms@gnu.org>
2001 * bison.simple: New file.
2003 1993-05-19 Richard Stallman <rms@gnu.org>
2005 * doc/bison.texinfo: New file.
2007 1993-05-07 Noah Friedman <friedman@gnu.org>
2009 * Makefile.in: *** empty log message ***
2011 1993-04-28 Noah Friedman <friedman@gnu.org>
2013 * src/reader.c: *** empty log message ***
2015 1993-04-23 Noah Friedman <friedman@gnu.org>
2017 * src/alloc.h: entered into RCS
2019 1993-04-20 David J. MacKenzie <djm@gnu.org>
2021 * src/version.c: *** empty log message ***
2023 * src/files.c, src/allocate.c:
2026 * src/reader.c: *** empty log message ***
2028 * src/lex.c: entered into RCS
2030 * src/conflicts.c: New file.
2032 * src/symtab.c: entered into RCS
2034 * src/alloc.h: New file.
2036 * src/LR0.c: entered into RCS
2038 1993-04-18 Noah Friedman <friedman@gnu.org>
2040 * src/reader.c: New file.
2042 * src/version.c: *** empty log message ***
2044 1993-04-18 Noah Friedman <friedman@gnu.org>
2046 * Makefile.in: *** empty log message ***
2048 1993-04-17 Noah Friedman <friedman@gnu.org>
2050 * Makefile.in: *** empty log message ***
2052 1993-04-15 Richard Stallman <rms@gnu.org>
2054 * src/main.c, src/files.c:
2057 1993-04-15 Noah Friedman <friedman@gnu.org>
2059 * configure.in: entered into RCS
2061 * configure.in: *** empty log message ***
2063 * configure.in: New file.
2065 1993-04-14 Richard Stallman <rms@gnu.org>
2067 * Makefile.in: New file.
2069 1993-04-13 Richard Stallman <rms@gnu.org>
2071 * src/version.c: New file.
2073 1993-03-25 Richard Stallman <rms@gnu.org>
2075 * src/output.c: entered into RCS
2077 1992-09-25 Richard Stallman <rms@gnu.org>
2079 * configure.bat: entered into RCS
2081 1992-06-22 Richard Stallman <rms@gnu.org>
2083 * src/vmsgetargs.c: entered into RCS
2085 1992-06-22 Richard Stallman <rms@gnu.org>
2087 * doc/bison.rnh: entered into RCS
2089 1992-04-20 David J. MacKenzie <djm@gnu.org>
2091 * README: entered into RCS
2093 1992-01-22 Richard Stallman <rms@gnu.org>
2095 * src/machine.h: entered into RCS
2097 1991-12-21 Richard Stallman <rms@gnu.org>
2099 * src/lalr.c, src/closure.c:
2102 1991-12-20 Richard Stallman <rms@gnu.org>
2104 * src/state.h: entered into RCS
2106 1991-12-18 Richard Stallman <rms@gnu.org>
2108 * src/print.c, src/nullable.c, src/derives.c:
2111 1991-11-03 David J. MacKenzie <djm@gnu.org>
2113 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
2116 1988-09-09 Richard Stallman <rms@gnu.org>
2118 * src/bison.hairy: entered into RCS
2120 1987-12-16 Richard Stallman <rms@gnu.org>
2122 * REFERENCES: entered into RCS