1 2001-03-16 Akim Demaille <akim@epita.fr>
3 * getargs.c (skeleton): New variable.
4 (longopts): --skeleton is a new option.
5 (shortopts, getargs): -S is a new option.
6 * getargs.h: Declare skeleton.
7 * output.c (output_parser): Use it.
9 2001-03-16 Akim Demaille <akim@epita.fr>
11 * m4/strerror_r.m4: New.
12 * m4/error.m4: Run AC_FUNC_STRERROR_R.
13 * lib/error.h, lib/error.c: Update.
15 2001-03-16 Akim Demaille <akim@epita.fr>
17 * src/getargs.c (longopts): Clean up.
19 2001-02-21 Akim Demaille <akim@epita.fr>
21 * src/reader.c (gensym): `gensym_count' is your own.
22 Use a static buf to create the symbol name, as token_buffer is no
25 2001-02-08 Akim Demaille <akim@epita.fr>
27 * src/conflicts.c (conflict_report): Be sure not to append to res
28 between two calls, which could happen if both first sprintf were
29 skipped, but not the first cp += strlen.
31 2001-02-08 Akim Demaille <akim@epita.fr>
33 * lib/memchr.c, lib/stpcpy.c, lib/strndup.c, lib/strnlen.c:
34 New, from fileutils 4.0.37.
35 * configure.in: Require Autoconf 2.49c. I took some time before
36 making this decision. This is the only way out for portability
37 issues in Bison, it would mean way too much duplicate effort to
38 import in Bison features implemented in 2.49c since 2.13.
39 AC_REPLACE_FUNCS and AC_CHECK_DECLS the functions above.
41 2001-02-02 Akim Demaille <akim@epita.fr>
43 * lib/malloc.c, lib/realloc.c: New, from the fileutils 4.0.37.
44 * lib/xalloc.h, lib/xmalloc.c: Update.
46 2001-01-19 Akim Demaille <akim@epita.fr>
48 Get rid of the ad hoc handling of token_buffer in the scanner: use
51 * src/lex.c (token_obstack): New.
52 (init_lex): Initialize it. No longer call...
53 (grow_token_buffer): this. Remove it.
54 Adjust all the places which used it to use the obstack.
56 2001-01-19 Akim Demaille <akim@epita.fr>
58 * src/lex.h: Rename all the tokens:
59 s/\bENDFILE\b/tok_eof/g;
60 s/\bIDENTIFIER\b/tok_identifier/g;
62 Let them be enums, not #define, to ease debugging.
65 2001-01-18 Akim Demaille <akim@epita.fr>
67 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
68 * src/lex.c (maxtoken, grow_token_buffer): Static.
70 2001-01-18 Akim Demaille <akim@epita.fr>
72 Since we now use obstacks, more % directives can be enabled.
74 * src/lex.c (percent_table): Also accept `%yacc',
75 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
77 Handle the actions for `%semantic_parser' and `%pure_parser' here,
78 instead of returning a token.
79 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
80 * src/reader.c (read_declarations): Adjust.
81 * src/files.c (open_files): Don't call `compute_base_names', don't
82 compute `attrsfile' since they depend upon data which might be
83 *in* the input file now.
84 (output_files): Do it here.
85 * src/output.c (output_headers): Document the fact that this patch
86 introduces a guaranteed SEGV for semantic parsers.
87 * doc/bison.texinfo: Document them.
88 * tests/suite.at: Exercise these %options.
90 2000-12-20 Akim Demaille <akim@epita.fr>
92 Also handle the output file (--verbose) with obstacks.
94 * files.c (foutput): Remove.
95 (output_obstack): New.
96 Adjust all dependencies.
97 * src/conflicts.c: Return a string.
98 * src/system.h (obstack_grow_string): Rename as...
99 (obstack_sgrow): this. Be ready to work with non literals.
100 (obstack_fgrow4): New.
102 2000-12-20 Akim Demaille <akim@epita.fr>
104 * src/files.c (open_files): Fix the computation of short_base_name
105 in the case of `-o foo.tab.c'.
107 2000-12-20 Akim Demaille <akim@epita.fr>
109 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
110 (copy_dollar): Now that everything uses obstacks, get rid of the
113 2000-12-20 Akim Demaille <akim@epita.fr>
115 * src/files.c (open_files): Actually the `.output' file is based
116 on the short_base_name, not base_name.
117 * tests/suite.at (Checking output file names): Adjust.
119 2000-12-20 Akim Demaille <akim@epita.fr>
121 * src/bison.s1: Remove, we now use directly...
122 * src/bison.simple: this.
123 * src/Makefile.am: Use pkgdata instead of data.
125 2000-12-20 Akim Demaille <akim@epita.fr>
127 * src/files.c (guard_obstack): New.
128 (open_files): Initialize it.
129 (output_files): Dump it...
130 * src/files.h: Export it.
131 * src/reader.c (copy_guard): Use it.
133 2000-12-19 Akim Demaille <akim@epita.fr>
135 * src/files.c (outfile, defsfile, actfile): Removed as global
137 (open_files): Don't compute them.
138 (output_files): Adjust.
139 (base_name, short_base_name): Be global.
142 2000-12-19 Akim Demaille <akim@epita.fr>
144 * src/files.c (strsuffix): New.
145 (stringappend): Be just like strcat but allocate.
146 (base_names): Eve out from open_files.
147 Try to simplify the rather hairy computation of base_name and
149 (open_files): Use it.
150 * tests/suite.at (Checking output file names): New test.
152 2000-12-19 Akim Demaille <akim@epita.fr>
154 * src/system.h (obstack_grow_literal_string): Rename as...
155 (obstack_grow_string): this.
156 * src/output.c (output_parser): Recognize `%% actions' instead of
158 * src/bison.s1: s/$/%% actions/.
159 * src/bison.hairy: Likewise.
161 2000-12-19 Akim Demaille <akim@epita.fr>
163 * src/output.c (output_parser): Compute the `#line' lines when
165 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
166 Suggested by Hans Aberg.
168 2000-12-19 Akim Demaille <akim@epita.fr>
170 Let the handling of the skeleton files be local to the procedures
173 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
175 (fparser, open_extra_files): Remove.
176 (open_files, output_files): Don't take care of fparser.
177 * src/files.h: Adjust.
178 * src/output.c (output_parser): Open and close the file to the
180 * src/reader.c (read_declarations): When %semantic_parser, open
183 2000-12-19 Akim Demaille <akim@epita.fr>
185 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
186 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
188 2000-12-19 Akim Demaille <akim@epita.fr>
190 * src/files.c (open_files): Yipee! We no longer need all the code
191 looking for `/tmp' since we have no tmp file.
193 2000-12-19 Akim Demaille <akim@epita.fr>
195 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
197 * src/files.c (open_files): Less dependency on MSDOS etc.
199 2000-12-14 Akim Demaille <akim@epita.fr>
201 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
202 Provide a default definition.
203 Use it when executing the default @ action.
204 * src/reader.c (reader_output_yylsp): No longer include
205 `timestamp' and `text' in the default YYLTYPE.
207 2000-12-12 Akim Demaille <akim@epita.fr>
209 * src/reader.c (copy_definition, parse_union_decl, copy_action)
210 (copy_guard): Quote the file names.
211 Reported by Laurent Mascherpa.
213 2000-12-12 Akim Demaille <akim@epita.fr>
215 * src/output.c (output_headers, output_program, output): Be sure
216 to escape special characters when outputting filenames.
217 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
218 (output_headers): Don't depend on them, Use ACTSTR.
220 2000-11-17 Akim Demaille <akim@epita.fr>
222 * lib/obstack.h: Formatting changes.
223 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
224 prevents type checking.
225 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
226 cast the value to (void *): assigning a `foo *' to a `void *'
228 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
229 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
232 2000-11-17 Akim Demaille <akim@epita.fr>
234 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
236 (suite.m4, regression.m4, calc.m4): these.
237 * tests/atgeneral.m4: Update from CVS Autoconf.
239 2000-11-17 Akim Demaille <akim@epita.fr>
241 * tests/regression.m4 (%union and --defines): New test,
242 demonstrating a current bug in the obstack implementation.
244 2000-11-17 Akim Demaille <akim@epita.fr>
246 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
248 Use them to declare the variables which are global or local to
251 2000-11-17 Akim Demaille <akim@epita.fr>
253 * acconfig.h: Remove, no longer used.
255 2000-11-07 Akim Demaille <akim@epita.fr>
257 * src: s/Copyright (C)/Copyright/g.
259 2000-11-07 Akim Demaille <akim@epita.fr>
261 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
263 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
265 2000-11-07 Akim Demaille <akim@epita.fr>
267 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
268 Merge in a single CPP if/else.
270 2000-11-07 Akim Demaille <akim@epita.fr>
272 * src/output.c (output): Remove useless variables.
273 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
274 argument `data' for consistency with the prototypes.
276 (obstack_copy, obstack_copy0): Rename the second argument as
277 `address' for consistency. Qualify it `const'.
278 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
279 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
280 `const' their input argument (`data' or `address').
281 Adjust the corresponding macros to include `const' in casts.
283 2000-11-03 Akim Demaille <akim@epita.fr>
285 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
286 s/PFILE1/BISON_HAIRY/.
289 2000-11-03 Akim Demaille <akim@epita.fr>
291 For some reason, this was not applied.
293 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
294 `unlink': it's no longer used.
296 2000-11-03 Akim Demaille <akim@epita.fr>
298 * src/files.c (skeleton_find): New function, eved out of...
299 (open_files, open_extra_files): here.
301 2000-11-03 Akim Demaille <akim@epita.fr>
305 * src/files.c (obstack_save): New function.
307 (output_files): this.
309 * src/main.c (main): Don't use `atexit' to register `done', since
310 it no longer has to remove tmp files, just call `output_files'
311 when there are no errors.
313 2000-11-02 Akim Demaille <akim@epita.fr>
315 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
316 `unlink': it's no longer used.
317 * src/files.h: Formatting changes.
319 2000-11-02 Akim Demaille <akim@epita.fr>
321 Remove the last uses of mktemp and unlink/delete.
323 * src/files.c (fdefines, ftable): Removed.
324 (defines_ostack, table_obstack): New.
325 Adjust dependencies of the former into uses of the latter.
326 * src/output.c (output_short_or_char_table, output_short_table):
327 Convert to using obstacks.
328 * src/reader.c (copy_comment2): Accept one FILE * and two
330 (output_token_defines, reader_output_yylsp): Use obstacks.
331 * src/system.h (obstack_fgrow3): New.
333 2000-11-01 Akim Demaille <akim@epita.fr>
335 Change each use of `fattrs' into a use of `attrs_obstack'.
337 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
338 * src/files.c (fattrs): Remove.
339 (attrs_obstack): New.
340 Adjust all dependencies.
341 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
343 2000-11-01 Akim Demaille <akim@epita.fr>
346 Change each use of `faction' into a use of `action_obstack'.
348 * lib/obstack.h, lib/obstack.c: New files.
349 * src/files.c (faction): Remove.
350 (action_obstack): New.
351 Adjust all dependencies.
353 2000-10-20 Akim Demaille <akim@epita.fr>
355 * lib/quote.h (PARAMS): New macro. Use it.
357 2000-10-16 Akim Demaille <akim@epita.fr>
359 * src/output.c (output_short_or_char_table): New function.
360 (output_short_table, output_token_translations): Use it.
361 (goto_actions): Use output_short_table.
363 2000-10-16 Akim Demaille <akim@epita.fr>
365 * src/symtab.c (bucket_new): New function.
368 * src/output.c (output_short_table): New argument to display the
369 comment associated with the table.
371 (output_gram): Use it.
372 (output_rule_data): Nicer output layout for YYTNAME.
374 2000-10-16 Akim Demaille <akim@epita.fr>
376 * src/lex.c (read_typename): New function.
378 * src/reader.c (copy_dollar): Likewise.
380 2000-10-16 Akim Demaille <akim@epita.fr>
382 * src/reader.c (copy_comment2): Expect the input stream to be on
383 the `/' which is suspected to open a comment, instead of being
384 called after `//' or `/*' was read.
385 (copy_comment, copy_definition, parse_union_decl, copy_action)
386 (copy_guard): Adjust.
388 2000-10-16 Akim Demaille <akim@epita.fr>
390 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
391 `read_signed_integer'.
393 2000-10-16 Akim Demaille <akim@epita.fr>
395 * src/reader.c (copy_dollar): New function.
396 (copy_guard, copy_action): Use it.
398 2000-10-16 Akim Demaille <akim@epita.fr>
400 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
401 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
402 New files, from Fileutils 4.0.27.
403 * src/main.c (printable_version): Remove.
404 * src/lex.c, src/reader.c: Use `quote'.
406 2000-10-04 Akim Demaille <akim@epita.fr>
408 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
410 2000-10-04 Akim Demaille <akim@epita.fr>
412 * doc/bison.texinfo: Various typos spotted by Neil Booth.
414 2000-10-04 Akim Demaille <akim@epita.fr>
416 When a literal string is used to define two different tokens,
417 `bison -v' segfaults.
418 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
420 * tests/regression.m4: New file.
421 Include the core of the sample provided by Piotr Gackiewicz.
422 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
425 2000-10-04 Akim Demaille <akim@epita.fr>
427 * src/reader.c (parse_expect_decl): Keep `count' within the size
431 2000-10-02 Paul Eggert <eggert@twinsun.com>
433 * bison.s1 (yyparse): Assign the default value
434 unconditionally, to avoid a GCC warning and make the parser a
437 2000-10-02 Akim Demaille <akim@epita.fr>
439 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
442 2000-10-02 Akim Demaille <akim@epita.fr>
444 * src/derives.c, src/print.c, src/reduce.c: To ease the
445 translation, move some `\n' out of the translated strings.
447 2000-10-02 Akim Demaille <akim@epita.fr>
449 The location tracking mechanism is precious for parse error
450 messages. Nevertheless, it is enabled only when `@n' is used in
451 the grammar, which is a different issue (you can use it in error
452 message, but not in the grammar per se). Therefore, there should
453 be another means to enable it.
455 * src/getargs.c (getargs): Support `--locations'.
457 * src/getargs.h (locationsflag): Export it.
458 * src/lex.c (percent_table): Support `%locations'.
459 * src/reader.c (yylsp_needed): Remove this variable, now replaced
460 with `locationsflag'.
461 * doc/bison.texinfo: Document `--locations' and `%locations'.
463 * tests/calc.m4: Test it.
465 For regularity of the names, replace each
466 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
467 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
468 In addition replace each `flag' with `_flag'.
470 2000-10-02 Akim Demaille <akim@epita.fr>
472 Also test parse error messages, including with YYERROR_VERBOSE.
474 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
476 Use it to check the computations.
477 Use it to check `nonassoc' is honored.
478 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
480 (_AT_CHECK_CALC): Adjust to this option.
481 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
483 2000-10-02 Akim Demaille <akim@epita.fr>
485 Test also `--verbose', `--defines' and `--name-prefix'. Testing
486 the latter demonstrates a flaw in the handling of non debugging
487 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
488 was used in order to simplify:
504 unfortunately this leads to a CPP conflict when
505 `--name-prefix=foo' is used since it produces `#define yydebug
508 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
509 (YYDPRINTF): New macro.
511 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
513 Also test `--verbose', `--defines' and `--name-prefix'.
515 2000-10-02 Akim Demaille <akim@epita.fr>
517 Improve the readability of the produced parsers.
519 * src/bison.s1: Formatting changes.
520 Improve the comment related to the `$' mark.
521 (yydefault): Don't fall through to `yyresume': `goto' there.
522 * src/output.c (output_parser): When the `$' is met, skip the end
524 New variable, `number_of_dollar_signs', to check there's exactly
525 one `$' in the parser skeleton.
527 2000-10-02 Akim Demaille <akim@epita.fr>
529 * lib/xstrdup.c: New file, from the fileutils.
530 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
531 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
532 instead of strlen + xmalloc + strcpy.
533 * src/symtab.c (copys): Remove, use xstrdup instead.
535 2000-10-02 Akim Demaille <akim@epita.fr>
537 * src/gram.h (associativity): New enum type which replaces the
538 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
539 `right_assoc', `left_assoc' and `non_assoc'.
540 Adjust all dependencies.
541 * src/reader.c: Formatting changes.
542 (LTYPESTR): Don't define it, use it as a literal in
543 `reader_output_yylsp'.
544 * src/symtab.h (symbol_class): New enum type which replaces the
545 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
546 `sunknown', `stoken and `snterm'.
548 2000-10-02 Akim Demaille <akim@epita.fr>
550 * src/getargs.c (fixed_outfiles): Rename as...
551 (yaccflag): for consistency and accuracy.
554 2000-10-02 Akim Demaille <akim@epita.fr>
556 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
557 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
558 difficult and introduced a lot of core dump. It turns out that
559 Bison used an implementation of `xmalloc' based on `calloc', and
560 at various places it does depend upon the initialization to 0. I
561 have not tried to isolate the pertinent places, and all the former
562 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
563 someone should address this issue.
565 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
566 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
569 * src/warshall.h: New file.
572 2000-10-02 Akim Demaille <akim@epita.fr>
574 Various anti-`extern in *.c' changes.
576 * src/system.h: Include `assert.h'.
578 2000-10-02 Akim Demaille <akim@epita.fr>
580 * src/state.h (nstates, final_state, first_state, first_shift)
581 (first_reduction): Move their exportation from here...
582 * src/LR0.h: to here.
584 * src/getargs.c (statisticsflag): New variable.
585 Add support for `--statistics'.
588 Remove a lot of now useless `extern' statements in most files.
590 2000-10-02 Akim Demaille <akim@epita.fr>
592 * src/LR0.h: New file.
595 2000-10-02 Akim Demaille <akim@epita.fr>
597 * src/print.h: New file.
599 * src/print.c: Formatting and ordering changes.
600 (verbose, terse): Replace with...
601 (print_results): this new function.
604 2000-10-02 Akim Demaille <akim@epita.fr>
606 * src/conflicts.c (conflict_report): New function.
607 (conflict_log, verbose_conflict_log): Replace with...
608 (print_conflicts): this function.
610 * src/conflicts.h: New file.
611 Propagate its inclusion.
613 2000-10-02 Akim Demaille <akim@epita.fr>
615 * src/nullable.h: New file.
616 Propagate its inclusion.
617 * src/nullable.c: Formatting changes.
619 2000-10-02 Akim Demaille <akim@epita.fr>
621 * src/reduce.h: New file.
622 Propagate its inclusion.
623 * src/reduce.c: Topological sort and other formatting changes.
624 (bool, TRUE, FALSE): Move their definition to...
625 * src/system.h: here.
627 2000-10-02 Akim Demaille <akim@epita.fr>
629 * src/files.c: Formatting changes.
630 (tryopen, tryclose, openfiles): Rename as...
631 (xfopen, xfclose, open_files): this.
632 (stringappend): static.
633 * src/files.h: Complete the list of exported symbols.
636 2000-10-02 Akim Demaille <akim@epita.fr>
638 * src/reader.h: New file.
639 Propagate its use instead of tedious list of `extern' and
641 * src/reader.c: Formatting changes, topological sort,
644 2000-10-02 Akim Demaille <akim@epita.fr>
646 * src/lex.h: Prototype `lex.c' exported functions.
647 * src/reader.c: Adjust.
648 * src/lex.c: Formatting changes.
649 (safegetc): Rename as...
652 2000-10-02 Akim Demaille <akim@epita.fr>
654 * src/lalr.h: New file.
655 Propagate its inclusion instead of prototypes and `extern'.
656 * src/lalr.c: Formatting changes, topological sorting etc.
658 2000-10-02 Akim Demaille <akim@epita.fr>
660 * src/output.c (token_actions): Introduce a temporary array,
661 YYDEFACT, that makes it possible for this function to use
664 2000-10-02 Akim Demaille <akim@epita.fr>
666 `user_toknums' is output as a `short[]' in `output.c', while it is
667 defined as a `int[]' in `reader.c'. For consistency with the
668 other output tables, `user_toknums' is now defined as a table of
671 * src/reader.c (user_toknums): Be a short table instead of an int
675 Factor the short table outputs.
677 * src/output.c (output_short_table): New function.
678 * src/output.c (output_gram, output_stos, output_rule_data)
679 (output_base, output_table, output_check): Use it.
681 2000-10-02 Akim Demaille <akim@epita.fr>
683 * src/output.c (output): Topological sort of the functions, in
684 order to get rid of the `static' prototypes.
685 No longer use `register'.
686 * src/output.h: New file.
687 Propagate its inclusion in files explicitly prototyping functions
690 2000-09-21 Akim Demaille <akim@epita.fr>
692 * src/atgeneral.m4: Update from Autoconf.
694 2000-09-21 Akim Demaille <akim@epita.fr>
696 * src/closure.h: New file.
697 * src/closure.c: Formatting changes, topological sort over the
698 functions, use of closure.h.
699 (initialize_closure, finalize_closure): Rename as...
700 (new_closure, free_closure): these. Adjust dependencies.
701 * src/LR0.c: Formatting changes, topological sort, use of
703 (initialize_states): Rename as...
705 * src/Makefile.am (noinst_HEADERS): Adjust.
707 2000-09-20 Akim Demaille <akim@epita.fr>
709 * src/acconfig.h: Don't protect config.h against multiple
712 * src/system.h: Define PARAMS.
713 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
714 purpose of config.h. system.h must not try to fix wrong
715 definitions in config.h.
717 2000-09-20 Akim Demaille <akim@epita.fr>
719 * src/derives.h: New file.
720 * src/main.c, src/derives.h: Use it.
722 * src/Makefile.am (noinst_HEADERS): Adjust.
724 2000-09-20 Akim Demaille <akim@epita.fr>
726 * tests/atgeneral.m4: Update from Autoconf.
727 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
728 (AT_CHECK_CALC): New macros.
729 Use these macros to test bison with options `', `--raw',
730 `--debug', `--yacc', `--yacc --debug'.
732 2000-09-19 Akim Demaille <akim@epita.fr>
734 * src/output.c: Formatting changes.
735 * src/machine.h: Remove, leaving its contents in...
736 * src/system.h: here.
738 Adjust all dependencies on stdio.h and machine.h.
739 * src/getargs.h: New file.
740 Let all `extern' declarations about getargs.c be replaced with
741 inclusion of `getargs.h'.
742 * src/Makefile.am (noinst_HEADERS): Adjust.
744 * tests/calc.m4 (yyin): Be initialized in main, not on the global
746 (yyerror): Returns void, not int.
747 * doc/bison.texinfo: Formatting changes.
749 2000-09-19 Akim Demaille <akim@epita.fr>
751 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
754 2000-09-18 Akim Demaille <akim@epita.fr>
756 * configure.in: Append WARNING_CFLAGS to CFLAGS.
757 * src/Makefile.am (INCLUDES): Don't.
758 Be ready to fetch headers in lib/.
760 2000-09-18 Akim Demaille <akim@epita.fr>
762 * doc/bison.texinfo: Update the copyright.
763 ANSIfy and GNUify the examples.
766 2000-09-18 Akim Demaille <akim@epita.fr>
768 First set of tests: use the `calc' example from the documentation.
770 * src/bison.s1 (yyparse): Condition the code using `yytname' which
771 is defined only when YYDEBUG is.
772 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
773 * src/files.c (tryopen, tryclose): Formatting changes.
774 Move to the top and be static.
775 * src/reader.c (read_signed_integer): Likewise.
776 * tests/calc.m4: New file.
777 * Makefile.am, suite.m4: Adjust.
778 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
780 2000-09-18 Akim Demaille <akim@epita.fr>
782 Add support for an Autotest test suite for Bison.
784 * m4/m4.m4, m4/atconfig.m4: New files.
785 * m4/Makefile.am (EXTRA_DIST): Adjust.
786 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
788 * src/getargs.c: Display a more standard --version message.
789 * src/reader.c (reader): Formatting changes.
790 No longer depend upon VERSION_STRING.
791 * configure.in: No longer use `dnl'.
792 Set up the test suite and the new directory `tests/.
793 (VERSION_STRING): Remove.
795 2000-04-14 Akim Demaille <akim@epita.fr>
797 * src/reader.c (copy_comment2): New function, same as former
798 `copy_comment', but outputs into two FILE *.
799 (copy_comment): Use it.
800 (parse_union_decl): Use it.
801 (get_type, parse_start_decl): Use the same `invalid' message.
802 (parse_start_decl, parse_union_decl): Use the same `multiple'
804 (parse_union_decl, copy_guard, copy_action): Use the same
806 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
808 2000-03-31 Akim Demaille <akim@epita.fr>
810 * src/files.c (tryopen, tryclose): Move to the top.
813 2000-03-31 Akim Demaille <akim@epita.fr>
815 * src/main.c (main): Don't call `done', exit does it.
817 2000-03-31 Akim Demaille <akim@epita.fr>
819 * allocate.c: s/return (foo)/return foo/.
822 * output.c: Likewise.
823 * reader.c: Likewise.
824 * symtab.c: Likewise.
825 * vmsgetargs.c: Likewise.
827 2000-03-31 Akim Demaille <akim@epita.fr>
829 Clean up the error reporting functions.
831 * src/report.c: New file.
832 * src/report.h: Likewise.
833 * src/Makefile.am: Adjust.
834 * m4/error.m4: New file.
835 * m4/Makefile.am: Adjust.
836 * configure.in (jm_PREREQ_ERROR): Call it.
837 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
839 (fatal, fatals): Remove. All callers use complain.c::fatal.
840 (warn, warni, warns, warnss, warnss): Remove. All callers use
841 complain.c::complain.
842 (toomany): Remove, use fatal instead.
843 * src/files.c (done): No argument, use complain_message_count.
844 * src/main.c (main): Register `done' to `atexit'.
846 * src/getargs.c (usage): More `fputs', less `fprintf'.
848 2000-03-28 Akim Demaille <akim@epita.fr>
850 * lib/: New directory.
851 * Makefile.am (SUBDIRS): Adjust.
852 * configure.in: Adjust.
853 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
855 * src/alloca.c: Moved to lib/.
856 * src/getopt.c: Likewise.
857 * src/getopt1.c: Likewise.
858 * src/getopt.h: Likewise.
859 * src/ansi2knr.c: Likewise.
860 * src/ansi2knr.1: Likewise.
861 * src/Makefile.am: Adjust.
862 * lib/Makefile.am: New file.
864 2000-03-28 Akim Demaille <akim@epita.fr>
866 * src/getargs.c (usage): Refresh the help message.
868 2000-03-17 Akim Demaille <akim@epita.fr>
870 * src/getopt1.c: Updated from textutils 2.0e
871 * src/getopt.c: Likewise.
872 * src/getopt.h: Likewise.
874 2000-03-17 Akim Demaille <akim@epita.fr>
876 * src/Makefile.am (bison.simple): Fix the awk program: quote only
877 the file name, not the whole `#line LINE FILE'.
879 2000-03-17 Akim Demaille <akim@epita.fr>
881 On syntax errors, report the token on which we choked.
883 * src/bison.s1 (yyparse): In the label yyerrlab, when
884 YYERROR_VERBOSE, add yychar in msg.
886 2000-03-17 Akim Demaille <akim@epita.fr>
888 * src/reader.c (copy_at): New function.
889 (copy_guard): Use it.
890 (copy_action): Use it.
892 2000-03-17 Akim Demaille <akim@epita.fr>
894 Be kind to translators, save some useless translations.
896 * src/main.c (banner): New function.
897 (fatal_banner): Use it.
898 (warn_banner): Use it.
900 2000-03-17 Akim Demaille <akim@epita.fr>
902 * src/reader.c (copy_definition): Use copy_string and
903 copy_comment. Removed now unused `match', `ended',
905 (copy_comment, copy_string): Moved, to be visible from
908 2000-03-17 Akim Demaille <akim@epita.fr>
910 * src/reader.c (copy_string): Declare `static inline'. No
911 problems with inline, since it is checked by configure.
912 (copy_comment): Likewise.
914 2000-03-17 Akim Demaille <akim@epita.fr>
916 * src/reader.c (packsymbols): Formatting changes.
918 2000-03-17 Akim Demaille <akim@epita.fr>
920 * src/reader.c (copy_comment): New function, factored out from:
921 (copy_action): Use it. Removed now unused `match', `ended',
923 (copy_guard): Likewise.
925 2000-03-17 Akim Demaille <akim@epita.fr>
927 * src/reader.c (copy_string): New function, factored out from:
928 (copy_action): Use it.
929 (copy_guard): Likewise.
931 2000-03-17 Akim Demaille <akim@epita.fr>
933 Change the handling of @s so that they behave exactly like $s.
934 There is now a pseudo variable @$ (readble and writable), location
935 of the lhs of the rule (by default ranging from the location of
936 the first symbol of the rhs, to the location of the last symbol,
937 or, if the rhs is empty, YYLLOC).
939 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
941 (yyparse): When providing a default semantic action, provide a
942 default location action.
943 (after the $): No longer change `*YYLSP', just stack YYLOC the
944 same way you stack YYVAL.
945 * src/reader.c (read_declarations): Use warns.
946 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
947 (copy_action, case '@'): Likewise.
948 Use a standard error message, to save useless work from
951 2000-03-17 Akim Demaille <akim@epita.fr>
953 * src/bison.s1: Formatting and cosmetics changes.
954 * src/reader.c: Likewise.
955 Update the Copyright notice.
957 2000-03-17 Akim Demaille <akim@epita.fr>
959 * src/bison.s1 (#line): All set to `#line' only, since the
960 Makefile now handles them.
962 2000-03-16 Akim Demaille <akim@epita.fr>
964 * src/output.c (output_rule_data): Output the documentation of
966 (Copyright notice): Update.
969 2000-03-16 Akim Demaille <akim@epita.fr>
971 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
972 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
973 One `#if YYDEBUG' remains, since it uses variables which are
974 defined only if `YYDEBUG != 0'.
976 2000-03-16 Akim Demaille <akim@epita.fr>
978 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
979 and related variables so that the similarities are highlighted.
981 2000-03-16 Akim Demaille <akim@epita.fr>
983 * src/bison.s1: Properly indent CPP directives.
985 2000-03-16 Akim Demaille <akim@epita.fr>
987 * src/bison.s1: Properly indent the `alloca' CPP section.
989 2000-03-16 Akim Demaille <akim@epita.fr>
991 Do not hard code values of directories in `configure.in'.
992 Update the `configure' tool chain.
994 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
996 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
997 (AC_OUTPUT): Add m4/Makefile.
998 Bump to bison 1.28a, 1.29 has never been released.
999 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
1000 handled via src/Makefile.am.
1001 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
1002 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
1004 * Makefile.am (SUBDIRS): Add m4.
1005 (ACLOCAL_AM_FLAGS): New variable.
1006 (AUTOMAKE_OPTIONS): Add check-news.
1007 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
1008 the proper line number and file name.
1009 (DEFS): Propagate the location of bison library files and of the
1011 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
1013 * acinclude.m4: Remove, replaced by the directory m4.
1014 * m4/Makefile.am (EXTRA_DIST): New variable.
1015 * m4/gettext.m4: New file, from the fileutils.
1016 * m4/lcmessage.m4: Likewise
1017 * m4/progtest.m4: Likewise.
1018 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
1020 2000-03-10 Akim Demaille <akim@epita.fr>
1023 Formatting changes of various comments.
1024 Respect the GNU coding standards at various places.
1025 Don't use `_()' when no translation is needed.
1027 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1030 OS/2 honors TMPDIR environment variable.
1032 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1034 * doc/bison.texinfo: Tweaked spelling and grammar.
1036 Removed reference to price of printed copy.
1037 Mention BISON_SIMPLE and BISON_HAIRY.
1039 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1041 * configure.in, NEWS:
1042 Bison 1.29 released.
1044 1999-10-27 Jesse Thilo <jthilo@gnu.org>
1046 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
1047 Added reference card.
1049 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1051 * po/ru.po: Added Russian translation.
1053 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1055 * configure.in: Added Russian translation.
1057 1999-07-06 Jesse Thilo <jthilo@gnu.org>
1059 * configure.in, NEWS, README:
1060 Released version 1.28.
1062 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1065 Squashed redefinition warning on some systems.
1067 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
1068 Have configure build version string instead of relying on ANSI string
1071 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1073 * po/POTFILES.in: Got rid of version.c.
1075 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1077 * acconfig.h, configure.in:
1078 Have configure build version string instead of relying on ANSI string
1081 1999-06-08 Jesse Thilo <jthilo@gnu.org>
1084 Dropped mention of `+' for long-named options.
1086 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1088 * src/files.c: Added <unistd.h> for unlink().
1090 * src/Makefile.am, src/system.h:
1093 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1095 * README: Added a FAQ list.
1097 * configure.in, acconfig.h:
1100 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1102 * doc/FAQ, doc/Makefile.am:
1105 1999-05-19 Jesse Thilo <jthilo@gnu.org>
1107 * src/alloc.h, src/symtab.h, src/version.c:
1108 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1110 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1112 * src/.cvsignore, src/Makefile.am:
1113 Reorganized: sources in `src', documentation in `doc'.
1115 * src/lex.c (literalchar):
1116 fixed the code for escaping double quotes (thanks
1119 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1121 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1122 Adjusted paths to reflect directory reorganization.
1124 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1126 * doc/.cvsignore, doc/Makefile.am:
1127 Reorganized: sources in `src', documentation in `doc'.
1129 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1132 Updated AC_INIT file to reflect directory reorganization.
1134 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1135 Reorganized: sources in `src', documentation in `doc'.
1137 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1140 Don't declare calloc() and realloc() if not necessary.
1142 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1144 * configure.in, acconfig.h, acinclude.m4:
1145 Don't declare calloc() and realloc() if not necessary.
1147 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1149 * po/.cvsignore: Added i18n support.
1151 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1153 * acconfig.h, configure.in, Makefile.am:
1156 1999-03-22 Jesse Thilo <jthilo@gnu.org>
1158 * src/bison.s1: Fixed #line numbers.
1160 1999-03-15 Jesse Thilo <jthilo@gnu.org>
1162 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1163 Added PO files from Translation Project.
1165 1999-03-03 Jesse Thilo <jthilo@gnu.org>
1168 Added support for non-ANSI compilers (ansi2knr).
1170 1999-02-16 Jesse Thilo <jthilo@gnu.org>
1172 * configure.in: Bumped version number to 1.27.
1175 Added `bison.simple' to list of files removed by `make distclean'.
1177 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1179 * src/files.c, src/files.h:
1180 Defined locations of parser files in config.h instead of Makefile.
1182 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1184 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1185 Defined locations of parser files in config.h instead of Makefile.
1187 1999-02-09 Jesse Thilo <jthilo@gnu.org>
1190 Removed inappropriate use of $< macro.
1192 1999-02-05 Jesse Thilo <jthilo@gnu.org>
1194 * po/Makefile.in.in, po/POTFILES.in:
1195 Add `po' directory skeleton.
1197 1999-01-27 Jesse Thilo <jthilo@gnu.org>
1199 * README: Document help-bison list.
1201 * configure.in: Add check for mkstemp().
1203 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1205 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1206 Hush a few compiler warnings.
1209 Add tryclose(), which verifies that fclose was successful.
1210 Hush a couple of compiler warnings.
1212 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1214 * Makefile.am, OChangeLog:
1215 ChangeLog is now automatically generated. Include the old version as
1218 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1220 * 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:
1223 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1225 * doc/bison.texinfo: Fix formatting glitch.
1227 * doc/bison.texinfo: Update FSF address.
1229 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1231 * acconfig.h: Update FSF address.
1233 1999-01-08 Jesse Thilo <jthilo@gnu.org>
1236 Don't define PACKAGE here, since config.h defines it.
1238 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1240 * src/reader.c: Update copyright date.
1243 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1244 favor of output directly to stderr (avoids buffer overruns).
1246 * src/reader.c: Some checks for premature EOF.
1248 * 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:
1249 Use prototypes if the compiler understands them.
1251 * src/files.c: Honor TMPDIR on Unix hosts.
1252 Use prototypes if the compiler understands them.
1255 Fix a couple of buffer overrun bugs.
1256 Use prototypes if the compiler understands them.
1258 * src/system.h: Include unistd.h and ctype.h.
1259 Use #ifdef instead of #if for NLS symbols.
1261 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1263 * doc/bison.texinfo:
1264 Delete comment "consider using @set for edition number, etc..." since
1265 we now are doing so.
1267 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1270 Use prototypes if the compiler understands them.
1272 * NEWS: Document 1.26 highlights.
1274 * Makefile.am: Require Automake 1.3 or later.
1277 Use prototypes if the compiler understands them.
1279 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1282 Use VERSION symbol from automake for version number.
1284 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1286 * acconfig.h, configure.in, version.cin:
1287 Use VERSION symbol from automake for version number.
1289 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1292 Distribute original version of simple parser (bison.s1), not built
1293 version (bison.simple).
1295 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1297 * doc/bison.texinfo: Add info dir entry.
1299 * doc/bison.texinfo:
1300 Let automake put version number into documentation.
1302 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1304 * src/bison.cld, src/build.com, src/vmshlp.mar:
1305 Add non-RCS files from /gd/gnu/bison.
1307 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1310 Document the BISON_HAIRY and BISON_SIMPLE variables.
1312 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1314 * src/version.c: Build version.c automatically.
1317 Fix token numbering (used to start at 258, not 257).
1319 * src/system.h: Include config.h.
1321 * src/getargs.c: Update bug report address.
1323 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1324 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1326 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1329 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1331 * configure.in, version.cin:
1332 Build version.c automatically.
1334 * AUTHORS: Add AUTHORS file.
1336 * README: Update bug report address.
1339 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1341 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1344 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1346 * doc/bison.texinfo: Clean up some formatting.
1348 1998-05-05 Richard Stallman <rms@gnu.org>
1350 * doc/bison.texinfo:
1351 Explain better why to make a pure parser.
1353 1998-01-05 Richard Stallman <rms@gnu.org>
1355 * src/files.c (openfiles):
1356 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1357 find a temporary directory, if possible. Do not unlink files while
1360 1997-08-25 Richard Stallman <rms@gnu.org>
1362 * src/reader.c (stack_offset;):
1363 Change some warni to warns.
1365 * src/lex.c (literalchar): Use warns, not warni.
1367 1997-06-28 Richard Stallman <rms@gnu.org>
1369 * src/bison.s1: Add a Bison version comment.
1371 * src/main.c (fatal, warn, berror):
1374 1997-06-28 Richard Stallman <rms@gnu.org>
1376 * Makefile.in (bison_version): New variable.
1377 (dist): Use that variable.
1378 (bison.s1): Substitute the Bison version into bison.simple.
1380 * bison.simple: Add a Bison version comment.
1382 1997-06-18 Richard Stallman <rms@gnu.org>
1384 * src/main.c (fatal, warn, berror):
1385 Make error messages standard.
1386 (toomany): Improve error message text.
1388 * 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:
1389 new.h renamed to alloc.h.
1391 1997-06-18 Richard Stallman <rms@gnu.org>
1393 * Makefile.in: new.h renamed to alloc.h.
1395 1997-05-24 Richard Stallman <rms@gnu.org>
1397 * src/lex.c (literalchar):
1398 Fix the code for escaping \, " and '.
1400 (lex): Avoid trouble when there are many chars
1401 to discard in a char literal with just several chars in it.
1403 1997-05-17 Richard Stallman <rms@gnu.org>
1406 Use malloc, if using alloca is troublesome.
1407 (YYSTACK_USE_ALLOCA): New flag macro.
1408 Define it for some systems and compilers.
1409 (YYSTACK_ALLOC): New macro.
1410 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1411 If it was malloc'd, free it.
1413 1997-05-17 Richard Stallman <rms@gnu.org>
1416 Use malloc, if using alloca is troublesome.
1417 (YYSTACK_USE_ALLOCA): New flag macro.
1418 Define it for some systems and compilers.
1419 (YYSTACK_ALLOC): New macro.
1420 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1421 If it was malloc'd, free it.
1423 1997-04-23 Richard Stallman <rms@gnu.org>
1426 (alloca) [__hpux]: Always define as __builtin_alloca.
1428 1997-04-23 Richard Stallman <rms@gnu.org>
1431 (alloca) [__hpux]: Always define as __builtin_alloca.
1433 1997-04-22 Richard Stallman <rms@gnu.org>
1436 [__hpux]: Include alloca.h (right for HPUX 10)
1437 instead of declaring alloca (right for HPUX 9).
1439 * src/bison.s1 (__yy_memcpy):
1440 Declare arg `count' as unsigned int.
1441 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1443 1997-04-22 Richard Stallman <rms@gnu.org>
1446 [__hpux]: Include alloca.h (right for HPUX 10)
1447 instead of declaring alloca (right for HPUX 9).
1449 * bison.simple (__yy_memcpy):
1450 Declare arg `count' as unsigned int.
1451 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1453 1997-01-03 Richard Stallman <rms@gnu.org>
1455 * src/allocate.c: [__STDC__ or _MSC_VER]:
1456 Declare calloc and realloc to return void *.
1458 1997-01-02 Richard Stallman <rms@gnu.org>
1461 [_MSC_VER]: Include stdlib.h and process.h.
1462 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
1464 * src/main.c (main): Return FAILURE as a value.
1465 (printable_version): Declare arg as int, not char.
1467 1997-01-02 Richard Stallman <rms@gnu.org>
1469 * Makefile.in (dist):
1470 Explicitly check for symlinks, and copy them.
1472 1996-12-19 Richard Stallman <rms@gnu.org>
1475 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
1477 1996-12-18 Paul Eggert <eggert@gnu.org>
1479 * src/bison.s1 (yyparse):
1480 If __GNUC__ and YYPARSE_PARAM are both defined,
1481 declare yyparse to have a void * argument.
1483 1996-12-18 Paul Eggert <eggert@gnu.org>
1485 * bison.simple (yyparse):
1486 If __GNUC__ and YYPARSE_PARAM are both defined,
1487 declare yyparse to have a void * argument.
1489 1996-12-17 Richard Stallman <rms@gnu.org>
1491 * src/reduce.c (nbits): Add some casts.
1493 1996-08-12 Richard Stallman <rms@gnu.org>
1495 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
1497 1996-08-12 Richard Stallman <rms@gnu.org>
1499 * bison.simple: Test _MSDOS as well as _MSDOS_.
1501 1996-07-31 Richard Stallman <rms@gnu.org>
1504 [__sun && __i386]: Include alloca.h.
1506 1996-07-31 Richard Stallman <rms@gnu.org>
1509 [__sun && __i386]: Include alloca.h.
1511 1996-07-30 Richard Stallman <rms@gnu.org>
1513 * src/bison.s1: Comment change.
1515 * src/bison.s1: Test _MSDOS_, not MSDOS.
1517 1996-07-30 Richard Stallman <rms@gnu.org>
1519 * bison.simple: Comment change.
1521 * bison.simple: Test _MSDOS_, not MSDOS.
1523 1996-06-01 Richard Stallman <rms@gnu.org>
1525 * 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:
1526 Insert `_' macro around many string constants.
1529 Insert `_' macro around many string constants.
1531 (main): Call setlocale, bindtextdomain and textdomain.
1533 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
1534 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
1535 [ENABLE_NLS]: Include libintl.h.
1536 [ENABLE_NLS] (gettext): Define.
1537 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
1538 (N_, PACKAGE, LOCALEDIR): New macros.
1540 1996-06-01 Richard Stallman <rms@gnu.org>
1542 * POTFILES.in: New file.
1544 * Makefile.in (allocate.o):
1545 Define target explicitly.
1547 * Makefile.in (CFLAGS): Set to @CFLAGS@.
1548 (LDFLAGS): Set to @LDFLAGS@.
1549 (configure): Run autoconf only if preceding `cd' succeeds.
1550 (bison.s1): Redirect output to temporary file then move the
1551 temporary to the target, rather than redirecting directly to bison.s1.
1552 (clean): Remove config.status and config.log.
1553 (distclean): Don't remove config.status here.
1555 1996-05-12 Richard Stallman <rms@gnu.org>
1558 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1560 1996-05-12 Richard Stallman <rms@gnu.org>
1563 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1565 1996-05-11 Richard Stallman <rms@gnu.org>
1567 * src/bison.s1 (__yy_memcpy):
1568 Really reorder the args, as was supposedly done on Feb 14 1995.
1569 (yyparse): Calls changed accordingly.
1571 1996-05-11 Richard Stallman <rms@gnu.org>
1573 * Makefile.in (dist): Don't use $(srcdir).
1575 * bison.simple (__yy_memcpy):
1576 Really reorder the args, as was supposedly done on Feb 14 1995.
1577 (yyparse): Calls changed accordingly.
1579 1996-01-27 Richard Stallman <rms@gnu.org>
1581 * src/output.c (output_rule_data):
1582 Test YYERROR_VERBOSE in the conditional
1583 around the definition of ttyname.
1585 1995-12-29 Richard Stallman <rms@gnu.org>
1588 Fix line numbers in #line commands.
1590 1995-12-29 Richard Stallman <rms@gnu.org>
1593 Fix line numbers in #line commands.
1595 1995-12-27 Richard Stallman <rms@gnu.org>
1597 * src/bison.s1 (YYPARSE_PARAM_DECL):
1598 In C++, make it always null.
1599 (YYPARSE_PARAM_ARG): New macro.
1600 (yyparse): Use YYPARSE_PARAM_ARG.
1602 1995-12-27 Richard Stallman <rms@gnu.org>
1604 * bison.simple (YYPARSE_PARAM_DECL):
1605 In C++, make it always null.
1606 (YYPARSE_PARAM_ARG): New macro.
1607 (yyparse): Use YYPARSE_PARAM_ARG.
1609 1995-11-29 Richard Stallman <rms@gnu.org>
1611 * doc/bison.texinfo:
1612 Describe literal string tokens, %raw, %no_lines, %token_table.
1614 1995-11-29 Daniel Hagerty <hag@gnu.org>
1616 * doc/bison.texinfo: Fixed update date
1618 1995-10-16 Richard Stallman <rms@gnu.org>
1620 * src/version.c: Version 1.25.
1622 1995-10-16 Richard Stallman <rms@gnu.org>
1624 * NEWS: *** empty log message ***
1626 1995-10-16 Richard Stallman <rms@gnu.org>
1628 * doc/bison.1, doc/bison.rnh:
1631 1995-10-15 Richard Stallman <rms@gnu.org>
1633 * src/vmsgetargs.c, src/getargs.c:
1634 Added -n, -k, and -raw switches.
1635 (noparserflag, toknumflag, rawtoknumflag): New variables.
1637 * src/symtab.h (SALIAS):
1638 New #define for adding aliases to %token.
1639 (struct bucket): Added `alias' field.
1641 * src/reduce.c (reduce_grammar):
1642 Revise error message.
1643 (print_notices): Remove final `.' from error message.
1645 * src/reader.c (reader_output_yylsp):
1647 (readgram): Use `#if 0' around code that accepted %command
1648 inside grammar rules: The documentation doesn't allow it,
1649 and it will fail since the %command processors scan for the next %.
1650 (parse_token_decl): Extended the %token
1651 declaration to allow a multi-character symbol as an alias.
1652 (parse_thong_decl): New function.
1653 (read_declarations): Added %thong declarations.
1654 (read_declarations): Handle NOOP to deal with allowing
1655 % declarations as another means to specify the flags.
1656 (readgram): Allow %prec prior to semantics embedded in a rule.
1657 (skip_to_char, read_declarations, copy_definition)
1658 (parse_token_decl, parse_start_decl, parse_type_decl)
1659 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
1660 (get_type_name, copy_guard, copy_action, readgram)
1661 (get_type, packsymbols): Revised most error messages.
1662 Changed `fatal' to `warnxxx' to avoid aborting for error.
1663 Revised and use multiple warnxxx functions to avoid using VARARGS1.
1664 (read_declarations): Improve the error message for
1665 an invalid character. Do not abort.
1666 (read_declarations, copy_guard, copy_action): Use
1667 printable_version to avoid unprintable characters in printed output.
1668 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
1669 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
1670 Allow the type of a non-terminal can be given
1671 more than once, as long as all specifications give the same type.
1674 (output_headers, output_trailers, output, output_gram)
1675 (output_rule_data): Implement noparserflag variable.
1676 Implement toknumflag variable.
1677 (output): Call reader_output_yylsp to output LTYPESTR.
1679 * src/main.c (main):
1680 If reader sees an error, don't process the grammar.
1681 (fatals): Updated to not use VARARGS1.
1682 (printable_version, int_to_string, warn, warni, warns, warnss)
1683 (warnsss): New error reporting functions. Avoid abort for error.
1686 Added THONG and NOOP for alias processing.
1687 Added SETOPT for the new code that allows setting options with %flags.
1690 Include getopt.h. Add some extern decls.
1691 (safegetc): New function to deal with EOF gracefully.
1692 (literalchar); new function to deal with reading \ escapes.
1693 (lex): Use literalchar.
1694 (lex): Implemented "..." tokens.
1695 (literalchar, lex, parse_percent_token): Made tokenbuffer
1696 always contain the token. This includes growing the token
1697 buffer while reading an integer.
1698 (parse_percent_token): Replaced if-else statement with percent_table.
1699 (parse_percent_token): Added % declarations as another
1700 way to specify the flags -n, -l, and -r. Also added hooks for
1701 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
1702 major changes to files.c.
1703 (lex) Retain in the incoming stream a character following
1705 (skip_white_space, lex): Revised most error messages
1706 and changed fatal to warn to avoid aborting.
1707 (percent_table): Added %thong declarations.
1709 * src/gram.h: Comment changes.
1711 * src/files.c (openfiles, open_extra_files, done):
1713 and actfile file. Handle noparserflag. Both for -n switch.
1715 * src/conflicts.c (resolve_sr_conflict):
1716 Remove use of alloca.
1718 1995-06-01 Jim Meyering <meyering@gnu.org>
1720 * doc/bison.texinfo: *** empty log message ***
1722 1995-05-06 Richard Stallman <rms@gnu.org>
1724 * src/bison.s1: Comment change.
1726 1995-05-06 Richard Stallman <rms@gnu.org>
1728 * bison.simple: Comment change.
1730 1995-05-03 Richard Stallman <rms@gnu.org>
1732 * src/version.c: Version now 1.24.
1734 * src/bison.s1: Change distribution terms.
1736 * src/version.c: Version now 1.23.
1738 1995-05-03 Richard Stallman <rms@gnu.org>
1740 * doc/bison.texinfo:
1741 Rewrite "Conditions for Using Bison".
1742 Update version to 1.24.
1744 1995-05-03 Richard Stallman <rms@gnu.org>
1746 * bison.simple: Change distribution terms.
1748 1995-02-23 Richard Stallman <rms@gnu.org>
1750 * src/files.c: Test __VMS_POSIX as well as VMS.
1752 1995-02-14 Jim Meyering <meyering@gnu.org>
1754 * src/bison.s1 (__yy_memcpy):
1755 Renamed from __yy_bcopy to avoid
1756 confusion. Reverse FROM and TO arguments to be consistent with
1759 1995-02-14 Jim Meyering <meyering@gnu.org>
1761 * bison.simple (__yy_memcpy):
1762 Renamed from __yy_bcopy to avoid
1763 confusion. Reverse FROM and TO arguments to be consistent with
1766 1994-11-10 David J. MacKenzie <djm@gnu.org>
1772 * Makefile.in (DISTFILES): Include NEWS.
1774 * Makefile.in (DISTFILES):
1775 Include install-sh, not install.sh.
1777 * configure.in: Update to Autoconf v2 macro names.
1779 1994-10-05 David J. MacKenzie <djm@gnu.org>
1781 * Makefile.in: fix typo
1783 * Makefile.in (prefix, exec_prefix):
1784 Let configure set them.
1786 1994-09-28 David J. MacKenzie <djm@gnu.org>
1788 * Makefile.in: Set datadir to $(prefix)/share.
1790 1994-09-15 Richard Stallman <rms@gnu.org>
1793 Update copyright notice and GPL version.
1795 1994-09-15 Richard Stallman <rms@gnu.org>
1798 Update copyright notice and GPL version.
1800 1994-07-12 Richard Stallman <rms@gnu.org>
1802 * src/reduce.c, src/reader.c:
1805 1994-05-05 David J. MacKenzie <djm@gnu.org>
1807 * Makefile.in: entered into RCS
1809 1994-03-26 Richard Stallman <rms@gnu.org>
1811 * src/bison.s1: entered into RCS
1813 1994-03-26 Richard Stallman <rms@gnu.org>
1815 * bison.simple: entered into RCS
1817 1994-03-25 Richard Stallman <rms@gnu.org>
1819 * src/main.c: entered into RCS
1821 1994-03-24 Richard Stallman <rms@gnu.org>
1823 * src/conflicts.c: entered into RCS
1825 1994-01-02 Richard Stallman <rms@gnu.org>
1827 * Makefile.in: *** empty log message ***
1829 1993-11-21 Richard Stallman <rms@gnu.org>
1831 * src/bison.s1: *** empty log message ***
1833 1993-11-21 Richard Stallman <rms@gnu.org>
1835 * doc/bison.texinfo: entered into RCS
1837 * doc/bison.texinfo: *** empty log message ***
1839 1993-11-21 Richard Stallman <rms@gnu.org>
1841 * bison.simple: *** empty log message ***
1843 1993-10-25 David J. MacKenzie <djm@gnu.org>
1845 * doc/bison.texinfo: *** empty log message ***
1847 1993-10-19 Richard Stallman <rms@gnu.org>
1849 * src/bison.s1: *** empty log message ***
1851 1993-10-19 Richard Stallman <rms@gnu.org>
1853 * bison.simple: *** empty log message ***
1855 1993-10-14 Richard Stallman <rms@gnu.org>
1857 * src/bison.s1: *** empty log message ***
1859 1993-10-14 Richard Stallman <rms@gnu.org>
1861 * bison.simple: *** empty log message ***
1863 1993-09-14 David J. MacKenzie <djm@gnu.org>
1865 * doc/bison.texinfo: *** empty log message ***
1867 1993-09-13 Noah Friedman <friedman@gnu.org>
1869 * Makefile.in: *** empty log message ***
1871 1993-09-10 Richard Stallman <rms@gnu.org>
1873 * src/conflicts.c: *** empty log message ***
1875 * src/system.h: entered into RCS
1877 1993-09-10 Richard Stallman <rms@gnu.org>
1879 * doc/bison.1: entered into RCS
1881 1993-09-06 Noah Friedman <friedman@gnu.org>
1883 * src/version.c: entered into RCS
1885 1993-09-06 Noah Friedman <friedman@gnu.org>
1887 * Makefile.in: *** empty log message ***
1889 1993-07-30 David J. MacKenzie <djm@gnu.org>
1891 * Makefile.in: *** empty log message ***
1893 1993-07-24 Richard Stallman <rms@gnu.org>
1895 * src/bison.s1: *** empty log message ***
1897 1993-07-24 Richard Stallman <rms@gnu.org>
1899 * bison.simple: *** empty log message ***
1901 1993-07-08 David J. MacKenzie <djm@gnu.org>
1903 * Makefile.in: *** empty log message ***
1905 1993-07-04 Richard Stallman <rms@gnu.org>
1907 * src/bison.s1: *** empty log message ***
1909 1993-07-04 Richard Stallman <rms@gnu.org>
1911 * bison.simple: *** empty log message ***
1913 1993-06-26 David J. MacKenzie <djm@gnu.org>
1915 * src/getargs.c: entered into RCS
1917 1993-06-26 David J. MacKenzie <djm@gnu.org>
1919 * doc/bison.texinfo: *** empty log message ***
1921 * doc/bison.1: New file.
1923 1993-06-25 Richard Stallman <rms@gnu.org>
1925 * src/getargs.c: New file.
1927 1993-06-16 Richard Stallman <rms@gnu.org>
1929 * src/bison.s1: *** empty log message ***
1931 1993-06-16 Richard Stallman <rms@gnu.org>
1933 * bison.simple: *** empty log message ***
1935 1993-06-03 Richard Stallman <rms@gnu.org>
1937 * src/bison.s1: New file.
1939 1993-06-03 Richard Stallman <rms@gnu.org>
1941 * doc/bison.texinfo: *** empty log message ***
1943 1993-06-03 Richard Stallman <rms@gnu.org>
1945 * bison.simple: New file.
1947 1993-05-19 Richard Stallman <rms@gnu.org>
1949 * doc/bison.texinfo: New file.
1951 1993-05-07 Noah Friedman <friedman@gnu.org>
1953 * Makefile.in: *** empty log message ***
1955 1993-04-28 Noah Friedman <friedman@gnu.org>
1957 * src/reader.c: *** empty log message ***
1959 1993-04-23 Noah Friedman <friedman@gnu.org>
1961 * src/alloc.h: entered into RCS
1963 1993-04-20 David J. MacKenzie <djm@gnu.org>
1965 * src/version.c: *** empty log message ***
1967 * src/files.c, src/allocate.c:
1970 * src/reader.c: *** empty log message ***
1972 * src/lex.c: entered into RCS
1974 * src/conflicts.c: New file.
1976 * src/symtab.c: entered into RCS
1978 * src/alloc.h: New file.
1980 * src/LR0.c: entered into RCS
1982 1993-04-18 Noah Friedman <friedman@gnu.org>
1984 * src/reader.c: New file.
1986 * src/version.c: *** empty log message ***
1988 1993-04-18 Noah Friedman <friedman@gnu.org>
1990 * Makefile.in: *** empty log message ***
1992 1993-04-17 Noah Friedman <friedman@gnu.org>
1994 * Makefile.in: *** empty log message ***
1996 1993-04-15 Richard Stallman <rms@gnu.org>
1998 * src/main.c, src/files.c:
2001 1993-04-15 Noah Friedman <friedman@gnu.org>
2003 * configure.in: entered into RCS
2005 * configure.in: *** empty log message ***
2007 * configure.in: New file.
2009 1993-04-14 Richard Stallman <rms@gnu.org>
2011 * Makefile.in: New file.
2013 1993-04-13 Richard Stallman <rms@gnu.org>
2015 * src/version.c: New file.
2017 1993-03-25 Richard Stallman <rms@gnu.org>
2019 * src/output.c: entered into RCS
2021 1992-09-25 Richard Stallman <rms@gnu.org>
2023 * configure.bat: entered into RCS
2025 1992-06-22 Richard Stallman <rms@gnu.org>
2027 * src/vmsgetargs.c: entered into RCS
2029 1992-06-22 Richard Stallman <rms@gnu.org>
2031 * doc/bison.rnh: entered into RCS
2033 1992-04-20 David J. MacKenzie <djm@gnu.org>
2035 * README: entered into RCS
2037 1992-01-22 Richard Stallman <rms@gnu.org>
2039 * src/machine.h: entered into RCS
2041 1991-12-21 Richard Stallman <rms@gnu.org>
2043 * src/lalr.c, src/closure.c:
2046 1991-12-20 Richard Stallman <rms@gnu.org>
2048 * src/state.h: entered into RCS
2050 1991-12-18 Richard Stallman <rms@gnu.org>
2052 * src/print.c, src/nullable.c, src/derives.c:
2055 1991-11-03 David J. MacKenzie <djm@gnu.org>
2057 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
2060 1988-09-09 Richard Stallman <rms@gnu.org>
2062 * src/bison.hairy: entered into RCS
2064 1987-12-16 Richard Stallman <rms@gnu.org>
2066 * REFERENCES: entered into RCS