1 2001-02-21 Akim Demaille <akim@epita.fr>
3 * src/reader.c (gensym): `gensym_count' is your own.
4 Use a static buf to create the symbol name, as token_buffer is no
7 2001-02-08 Akim Demaille <akim@epita.fr>
9 * src/conflicts.c (conflict_report): Be sure not to append to res
10 between two calls, which could happen if both first sprintf were
11 skipped, but not the first cp += strlen.
13 2001-02-08 Akim Demaille <akim@epita.fr>
15 * lib/memchr.c, lib/stpcpy.c, lib/strndup.c, lib/strnlen.c:
16 New, from fileutils 4.0.37.
17 * configure.in: Require Autoconf 2.49c. I took some time before
18 making this decision. This is the only way out for portability
19 issues in Bison, it would mean way too much duplicate effort to
20 import in Bison features implemented in 2.49c since 2.13.
21 AC_REPLACE_FUNCS and AC_CHECK_DECLS the functions above.
23 2001-02-02 Akim Demaille <akim@epita.fr>
25 * lib/malloc.c, lib/realloc.c: New, from the fileutils 4.0.37.
26 * lib/xalloc.h, lib/xmalloc.c: Update.
28 2001-01-19 Akim Demaille <akim@epita.fr>
30 Get rid of the ad hoc handling of token_buffer in the scanner: use
33 * src/lex.c (token_obstack): New.
34 (init_lex): Initialize it. No longer call...
35 (grow_token_buffer): this. Remove it.
36 Adjust all the places which used it to use the obstack.
38 2001-01-19 Akim Demaille <akim@epita.fr>
40 * src/lex.h: Rename all the tokens:
41 s/\bENDFILE\b/tok_eof/g;
42 s/\bIDENTIFIER\b/tok_identifier/g;
44 Let them be enums, not #define, to ease debugging.
47 2001-01-18 Akim Demaille <akim@epita.fr>
49 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
50 * src/lex.c (maxtoken, grow_token_buffer): Static.
52 2001-01-18 Akim Demaille <akim@epita.fr>
54 Since we now use obstacks, more % directives can be enabled.
56 * src/lex.c (percent_table): Also accept `%yacc',
57 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
59 Handle the actions for `%semantic_parser' and `%pure_parser' here,
60 instead of returning a token.
61 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
62 * src/reader.c (read_declarations): Adjust.
63 * src/files.c (open_files): Don't call `compute_base_names', don't
64 compute `attrsfile' since they depend upon data which might be
65 *in* the input file now.
66 (output_files): Do it here.
67 * src/output.c (output_headers): Document the fact that this patch
68 introduces a guaranteed SEGV for semantic parsers.
69 * doc/bison.texinfo: Document them.
70 * tests/suite.at: Exercise these %options.
72 2000-12-20 Akim Demaille <akim@epita.fr>
74 Also handle the output file (--verbose) with obstacks.
76 * files.c (foutput): Remove.
77 (output_obstack): New.
78 Adjust all dependencies.
79 * src/conflicts.c: Return a string.
80 * src/system.h (obstack_grow_string): Rename as...
81 (obstack_sgrow): this. Be ready to work with non literals.
82 (obstack_fgrow4): New.
84 2000-12-20 Akim Demaille <akim@epita.fr>
86 * src/files.c (open_files): Fix the computation of short_base_name
87 in the case of `-o foo.tab.c'.
89 2000-12-20 Akim Demaille <akim@epita.fr>
91 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
92 (copy_dollar): Now that everything uses obstacks, get rid of the
95 2000-12-20 Akim Demaille <akim@epita.fr>
97 * src/files.c (open_files): Actually the `.output' file is based
98 on the short_base_name, not base_name.
99 * tests/suite.at (Checking output file names): Adjust.
101 2000-12-20 Akim Demaille <akim@epita.fr>
103 * src/bison.s1: Remove, we now use directly...
104 * src/bison.simple: this.
105 * src/Makefile.am: Use pkgdata instead of data.
107 2000-12-20 Akim Demaille <akim@epita.fr>
109 * src/files.c (guard_obstack): New.
110 (open_files): Initialize it.
111 (output_files): Dump it...
112 * src/files.h: Export it.
113 * src/reader.c (copy_guard): Use it.
115 2000-12-19 Akim Demaille <akim@epita.fr>
117 * src/files.c (outfile, defsfile, actfile): Removed as global
119 (open_files): Don't compute them.
120 (output_files): Adjust.
121 (base_name, short_base_name): Be global.
124 2000-12-19 Akim Demaille <akim@epita.fr>
126 * src/files.c (strsuffix): New.
127 (stringappend): Be just like strcat but allocate.
128 (base_names): Eve out from open_files.
129 Try to simplify the rather hairy computation of base_name and
131 (open_files): Use it.
132 * tests/suite.at (Checking output file names): New test.
134 2000-12-19 Akim Demaille <akim@epita.fr>
136 * src/system.h (obstack_grow_literal_string): Rename as...
137 (obstack_grow_string): this.
138 * src/output.c (output_parser): Recognize `%% actions' instead of
140 * src/bison.s1: s/$/%% actions/.
141 * src/bison.hairy: Likewise.
143 2000-12-19 Akim Demaille <akim@epita.fr>
145 * src/output.c (output_parser): Compute the `#line' lines when
147 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
148 Suggested by Hans Aberg.
150 2000-12-19 Akim Demaille <akim@epita.fr>
152 Let the handling of the skeleton files be local to the procedures
155 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
157 (fparser, open_extra_files): Remove.
158 (open_files, output_files): Don't take care of fparser.
159 * src/files.h: Adjust.
160 * src/output.c (output_parser): Open and close the file to the
162 * src/reader.c (read_declarations): When %semantic_parser, open
165 2000-12-19 Akim Demaille <akim@epita.fr>
167 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
168 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
170 2000-12-19 Akim Demaille <akim@epita.fr>
172 * src/files.c (open_files): Yipee! We no longer need all the code
173 looking for `/tmp' since we have no tmp file.
175 2000-12-19 Akim Demaille <akim@epita.fr>
177 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
179 * src/files.c (open_files): Less dependency on MSDOS etc.
181 2000-12-14 Akim Demaille <akim@epita.fr>
183 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
184 Provide a default definition.
185 Use it when executing the default @ action.
186 * src/reader.c (reader_output_yylsp): No longer include
187 `timestamp' and `text' in the default YYLTYPE.
189 2000-12-12 Akim Demaille <akim@epita.fr>
191 * src/reader.c (copy_definition, parse_union_decl, copy_action)
192 (copy_guard): Quote the file names.
193 Reported by Laurent Mascherpa.
195 2000-12-12 Akim Demaille <akim@epita.fr>
197 * src/output.c (output_headers, output_program, output): Be sure
198 to escape special characters when outputting filenames.
199 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
200 (output_headers): Don't depend on them, Use ACTSTR.
202 2000-11-17 Akim Demaille <akim@epita.fr>
204 * lib/obstack.h: Formatting changes.
205 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
206 prevents type checking.
207 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
208 cast the value to (void *): assigning a `foo *' to a `void *'
210 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
211 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
214 2000-11-17 Akim Demaille <akim@epita.fr>
216 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
218 (suite.m4, regression.m4, calc.m4): these.
219 * tests/atgeneral.m4: Update from CVS Autoconf.
221 2000-11-17 Akim Demaille <akim@epita.fr>
223 * tests/regression.m4 (%union and --defines): New test,
224 demonstrating a current bug in the obstack implementation.
226 2000-11-17 Akim Demaille <akim@epita.fr>
228 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
230 Use them to declare the variables which are global or local to
233 2000-11-17 Akim Demaille <akim@epita.fr>
235 * acconfig.h: Remove, no longer used.
237 2000-11-07 Akim Demaille <akim@epita.fr>
239 * src: s/Copyright (C)/Copyright/g.
241 2000-11-07 Akim Demaille <akim@epita.fr>
243 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
245 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
247 2000-11-07 Akim Demaille <akim@epita.fr>
249 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
250 Merge in a single CPP if/else.
252 2000-11-07 Akim Demaille <akim@epita.fr>
254 * src/output.c (output): Remove useless variables.
255 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
256 argument `data' for consistency with the prototypes.
258 (obstack_copy, obstack_copy0): Rename the second argument as
259 `address' for consistency. Qualify it `const'.
260 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
261 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
262 `const' their input argument (`data' or `address').
263 Adjust the corresponding macros to include `const' in casts.
265 2000-11-03 Akim Demaille <akim@epita.fr>
267 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
268 s/PFILE1/BISON_HAIRY/.
271 2000-11-03 Akim Demaille <akim@epita.fr>
273 For some reason, this was not applied.
275 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
276 `unlink': it's no longer used.
278 2000-11-03 Akim Demaille <akim@epita.fr>
280 * src/files.c (skeleton_find): New function, eved out of...
281 (open_files, open_extra_files): here.
283 2000-11-03 Akim Demaille <akim@epita.fr>
287 * src/files.c (obstack_save): New function.
289 (output_files): this.
291 * src/main.c (main): Don't use `atexit' to register `done', since
292 it no longer has to remove tmp files, just call `output_files'
293 when there are no errors.
295 2000-11-02 Akim Demaille <akim@epita.fr>
297 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
298 `unlink': it's no longer used.
299 * src/files.h: Formatting changes.
301 2000-11-02 Akim Demaille <akim@epita.fr>
303 Remove the last uses of mktemp and unlink/delete.
305 * src/files.c (fdefines, ftable): Removed.
306 (defines_ostack, table_obstack): New.
307 Adjust dependencies of the former into uses of the latter.
308 * src/output.c (output_short_or_char_table, output_short_table):
309 Convert to using obstacks.
310 * src/reader.c (copy_comment2): Accept one FILE * and two
312 (output_token_defines, reader_output_yylsp): Use obstacks.
313 * src/system.h (obstack_fgrow3): New.
315 2000-11-01 Akim Demaille <akim@epita.fr>
317 Change each use of `fattrs' into a use of `attrs_obstack'.
319 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
320 * src/files.c (fattrs): Remove.
321 (attrs_obstack): New.
322 Adjust all dependencies.
323 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
325 2000-11-01 Akim Demaille <akim@epita.fr>
328 Change each use of `faction' into a use of `action_obstack'.
330 * lib/obstack.h, lib/obstack.c: New files.
331 * src/files.c (faction): Remove.
332 (action_obstack): New.
333 Adjust all dependencies.
335 2000-10-20 Akim Demaille <akim@epita.fr>
337 * lib/quote.h (PARAMS): New macro. Use it.
339 2000-10-16 Akim Demaille <akim@epita.fr>
341 * src/output.c (output_short_or_char_table): New function.
342 (output_short_table, output_token_translations): Use it.
343 (goto_actions): Use output_short_table.
345 2000-10-16 Akim Demaille <akim@epita.fr>
347 * src/symtab.c (bucket_new): New function.
350 * src/output.c (output_short_table): New argument to display the
351 comment associated with the table.
353 (output_gram): Use it.
354 (output_rule_data): Nicer output layout for YYTNAME.
356 2000-10-16 Akim Demaille <akim@epita.fr>
358 * src/lex.c (read_typename): New function.
360 * src/reader.c (copy_dollar): Likewise.
362 2000-10-16 Akim Demaille <akim@epita.fr>
364 * src/reader.c (copy_comment2): Expect the input stream to be on
365 the `/' which is suspected to open a comment, instead of being
366 called after `//' or `/*' was read.
367 (copy_comment, copy_definition, parse_union_decl, copy_action)
368 (copy_guard): Adjust.
370 2000-10-16 Akim Demaille <akim@epita.fr>
372 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
373 `read_signed_integer'.
375 2000-10-16 Akim Demaille <akim@epita.fr>
377 * src/reader.c (copy_dollar): New function.
378 (copy_guard, copy_action): Use it.
380 2000-10-16 Akim Demaille <akim@epita.fr>
382 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
383 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
384 New files, from Fileutils 4.0.27.
385 * src/main.c (printable_version): Remove.
386 * src/lex.c, src/reader.c: Use `quote'.
388 2000-10-04 Akim Demaille <akim@epita.fr>
390 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
392 2000-10-04 Akim Demaille <akim@epita.fr>
394 * doc/bison.texinfo: Various typos spotted by Neil Booth.
396 2000-10-04 Akim Demaille <akim@epita.fr>
398 When a literal string is used to define two different tokens,
399 `bison -v' segfaults.
400 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
402 * tests/regression.m4: New file.
403 Include the core of the sample provided by Piotr Gackiewicz.
404 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
407 2000-10-04 Akim Demaille <akim@epita.fr>
409 * src/reader.c (parse_expect_decl): Keep `count' within the size
413 2000-10-02 Paul Eggert <eggert@twinsun.com>
415 * bison.s1 (yyparse): Assign the default value
416 unconditionally, to avoid a GCC warning and make the parser a
419 2000-10-02 Akim Demaille <akim@epita.fr>
421 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
424 2000-10-02 Akim Demaille <akim@epita.fr>
426 * src/derives.c, src/print.c, src/reduce.c: To ease the
427 translation, move some `\n' out of the translated strings.
429 2000-10-02 Akim Demaille <akim@epita.fr>
431 The location tracking mechanism is precious for parse error
432 messages. Nevertheless, it is enabled only when `@n' is used in
433 the grammar, which is a different issue (you can use it in error
434 message, but not in the grammar per se). Therefore, there should
435 be another means to enable it.
437 * src/getargs.c (getargs): Support `--locations'.
439 * src/getargs.h (locationsflag): Export it.
440 * src/lex.c (percent_table): Support `%locations'.
441 * src/reader.c (yylsp_needed): Remove this variable, now replaced
442 with `locationsflag'.
443 * doc/bison.texinfo: Document `--locations' and `%locations'.
445 * tests/calc.m4: Test it.
447 For regularity of the names, replace each
448 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
449 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
450 In addition replace each `flag' with `_flag'.
452 2000-10-02 Akim Demaille <akim@epita.fr>
454 Also test parse error messages, including with YYERROR_VERBOSE.
456 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
458 Use it to check the computations.
459 Use it to check `nonassoc' is honored.
460 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
462 (_AT_CHECK_CALC): Adjust to this option.
463 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
465 2000-10-02 Akim Demaille <akim@epita.fr>
467 Test also `--verbose', `--defines' and `--name-prefix'. Testing
468 the latter demonstrates a flaw in the handling of non debugging
469 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
470 was used in order to simplify:
486 unfortunately this leads to a CPP conflict when
487 `--name-prefix=foo' is used since it produces `#define yydebug
490 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
491 (YYDPRINTF): New macro.
493 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
495 Also test `--verbose', `--defines' and `--name-prefix'.
497 2000-10-02 Akim Demaille <akim@epita.fr>
499 Improve the readability of the produced parsers.
501 * src/bison.s1: Formatting changes.
502 Improve the comment related to the `$' mark.
503 (yydefault): Don't fall through to `yyresume': `goto' there.
504 * src/output.c (output_parser): When the `$' is met, skip the end
506 New variable, `number_of_dollar_signs', to check there's exactly
507 one `$' in the parser skeleton.
509 2000-10-02 Akim Demaille <akim@epita.fr>
511 * lib/xstrdup.c: New file, from the fileutils.
512 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
513 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
514 instead of strlen + xmalloc + strcpy.
515 * src/symtab.c (copys): Remove, use xstrdup instead.
517 2000-10-02 Akim Demaille <akim@epita.fr>
519 * src/gram.h (associativity): New enum type which replaces the
520 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
521 `right_assoc', `left_assoc' and `non_assoc'.
522 Adjust all dependencies.
523 * src/reader.c: Formatting changes.
524 (LTYPESTR): Don't define it, use it as a literal in
525 `reader_output_yylsp'.
526 * src/symtab.h (symbol_class): New enum type which replaces the
527 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
528 `sunknown', `stoken and `snterm'.
530 2000-10-02 Akim Demaille <akim@epita.fr>
532 * src/getargs.c (fixed_outfiles): Rename as...
533 (yaccflag): for consistency and accuracy.
536 2000-10-02 Akim Demaille <akim@epita.fr>
538 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
539 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
540 difficult and introduced a lot of core dump. It turns out that
541 Bison used an implementation of `xmalloc' based on `calloc', and
542 at various places it does depend upon the initialization to 0. I
543 have not tried to isolate the pertinent places, and all the former
544 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
545 someone should address this issue.
547 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
548 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
551 * src/warshall.h: New file.
554 2000-10-02 Akim Demaille <akim@epita.fr>
556 Various anti-`extern in *.c' changes.
558 * src/system.h: Include `assert.h'.
560 2000-10-02 Akim Demaille <akim@epita.fr>
562 * src/state.h (nstates, final_state, first_state, first_shift)
563 (first_reduction): Move their exportation from here...
564 * src/LR0.h: to here.
566 * src/getargs.c (statisticsflag): New variable.
567 Add support for `--statistics'.
570 Remove a lot of now useless `extern' statements in most files.
572 2000-10-02 Akim Demaille <akim@epita.fr>
574 * src/LR0.h: New file.
577 2000-10-02 Akim Demaille <akim@epita.fr>
579 * src/print.h: New file.
581 * src/print.c: Formatting and ordering changes.
582 (verbose, terse): Replace with...
583 (print_results): this new function.
586 2000-10-02 Akim Demaille <akim@epita.fr>
588 * src/conflicts.c (conflict_report): New function.
589 (conflict_log, verbose_conflict_log): Replace with...
590 (print_conflicts): this function.
592 * src/conflicts.h: New file.
593 Propagate its inclusion.
595 2000-10-02 Akim Demaille <akim@epita.fr>
597 * src/nullable.h: New file.
598 Propagate its inclusion.
599 * src/nullable.c: Formatting changes.
601 2000-10-02 Akim Demaille <akim@epita.fr>
603 * src/reduce.h: New file.
604 Propagate its inclusion.
605 * src/reduce.c: Topological sort and other formatting changes.
606 (bool, TRUE, FALSE): Move their definition to...
607 * src/system.h: here.
609 2000-10-02 Akim Demaille <akim@epita.fr>
611 * src/files.c: Formatting changes.
612 (tryopen, tryclose, openfiles): Rename as...
613 (xfopen, xfclose, open_files): this.
614 (stringappend): static.
615 * src/files.h: Complete the list of exported symbols.
618 2000-10-02 Akim Demaille <akim@epita.fr>
620 * src/reader.h: New file.
621 Propagate its use instead of tedious list of `extern' and
623 * src/reader.c: Formatting changes, topological sort,
626 2000-10-02 Akim Demaille <akim@epita.fr>
628 * src/lex.h: Prototype `lex.c' exported functions.
629 * src/reader.c: Adjust.
630 * src/lex.c: Formatting changes.
631 (safegetc): Rename as...
634 2000-10-02 Akim Demaille <akim@epita.fr>
636 * src/lalr.h: New file.
637 Propagate its inclusion instead of prototypes and `extern'.
638 * src/lalr.c: Formatting changes, topological sorting etc.
640 2000-10-02 Akim Demaille <akim@epita.fr>
642 * src/output.c (token_actions): Introduce a temporary array,
643 YYDEFACT, that makes it possible for this function to use
646 2000-10-02 Akim Demaille <akim@epita.fr>
648 `user_toknums' is output as a `short[]' in `output.c', while it is
649 defined as a `int[]' in `reader.c'. For consistency with the
650 other output tables, `user_toknums' is now defined as a table of
653 * src/reader.c (user_toknums): Be a short table instead of an int
657 Factor the short table outputs.
659 * src/output.c (output_short_table): New function.
660 * src/output.c (output_gram, output_stos, output_rule_data)
661 (output_base, output_table, output_check): Use it.
663 2000-10-02 Akim Demaille <akim@epita.fr>
665 * src/output.c (output): Topological sort of the functions, in
666 order to get rid of the `static' prototypes.
667 No longer use `register'.
668 * src/output.h: New file.
669 Propagate its inclusion in files explicitly prototyping functions
672 2000-09-21 Akim Demaille <akim@epita.fr>
674 * src/atgeneral.m4: Update from Autoconf.
676 2000-09-21 Akim Demaille <akim@epita.fr>
678 * src/closure.h: New file.
679 * src/closure.c: Formatting changes, topological sort over the
680 functions, use of closure.h.
681 (initialize_closure, finalize_closure): Rename as...
682 (new_closure, free_closure): these. Adjust dependencies.
683 * src/LR0.c: Formatting changes, topological sort, use of
685 (initialize_states): Rename as...
687 * src/Makefile.am (noinst_HEADERS): Adjust.
689 2000-09-20 Akim Demaille <akim@epita.fr>
691 * src/acconfig.h: Don't protect config.h against multiple
694 * src/system.h: Define PARAMS.
695 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
696 purpose of config.h. system.h must not try to fix wrong
697 definitions in config.h.
699 2000-09-20 Akim Demaille <akim@epita.fr>
701 * src/derives.h: New file.
702 * src/main.c, src/derives.h: Use it.
704 * src/Makefile.am (noinst_HEADERS): Adjust.
706 2000-09-20 Akim Demaille <akim@epita.fr>
708 * tests/atgeneral.m4: Update from Autoconf.
709 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
710 (AT_CHECK_CALC): New macros.
711 Use these macros to test bison with options `', `--raw',
712 `--debug', `--yacc', `--yacc --debug'.
714 2000-09-19 Akim Demaille <akim@epita.fr>
716 * src/output.c: Formatting changes.
717 * src/machine.h: Remove, leaving its contents in...
718 * src/system.h: here.
720 Adjust all dependencies on stdio.h and machine.h.
721 * src/getargs.h: New file.
722 Let all `extern' declarations about getargs.c be replaced with
723 inclusion of `getargs.h'.
724 * src/Makefile.am (noinst_HEADERS): Adjust.
726 * tests/calc.m4 (yyin): Be initialized in main, not on the global
728 (yyerror): Returns void, not int.
729 * doc/bison.texinfo: Formatting changes.
731 2000-09-19 Akim Demaille <akim@epita.fr>
733 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
736 2000-09-18 Akim Demaille <akim@epita.fr>
738 * configure.in: Append WARNING_CFLAGS to CFLAGS.
739 * src/Makefile.am (INCLUDES): Don't.
740 Be ready to fetch headers in lib/.
742 2000-09-18 Akim Demaille <akim@epita.fr>
744 * doc/bison.texinfo: Update the copyright.
745 ANSIfy and GNUify the examples.
748 2000-09-18 Akim Demaille <akim@epita.fr>
750 First set of tests: use the `calc' example from the documentation.
752 * src/bison.s1 (yyparse): Condition the code using `yytname' which
753 is defined only when YYDEBUG is.
754 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
755 * src/files.c (tryopen, tryclose): Formatting changes.
756 Move to the top and be static.
757 * src/reader.c (read_signed_integer): Likewise.
758 * tests/calc.m4: New file.
759 * Makefile.am, suite.m4: Adjust.
760 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
762 2000-09-18 Akim Demaille <akim@epita.fr>
764 Add support for an Autotest test suite for Bison.
766 * m4/m4.m4, m4/atconfig.m4: New files.
767 * m4/Makefile.am (EXTRA_DIST): Adjust.
768 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
770 * src/getargs.c: Display a more standard --version message.
771 * src/reader.c (reader): Formatting changes.
772 No longer depend upon VERSION_STRING.
773 * configure.in: No longer use `dnl'.
774 Set up the test suite and the new directory `tests/.
775 (VERSION_STRING): Remove.
777 2000-04-14 Akim Demaille <akim@epita.fr>
779 * src/reader.c (copy_comment2): New function, same as former
780 `copy_comment', but outputs into two FILE *.
781 (copy_comment): Use it.
782 (parse_union_decl): Use it.
783 (get_type, parse_start_decl): Use the same `invalid' message.
784 (parse_start_decl, parse_union_decl): Use the same `multiple'
786 (parse_union_decl, copy_guard, copy_action): Use the same
788 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
790 2000-03-31 Akim Demaille <akim@epita.fr>
792 * src/files.c (tryopen, tryclose): Move to the top.
795 2000-03-31 Akim Demaille <akim@epita.fr>
797 * src/main.c (main): Don't call `done', exit does it.
799 2000-03-31 Akim Demaille <akim@epita.fr>
801 * allocate.c: s/return (foo)/return foo/.
804 * output.c: Likewise.
805 * reader.c: Likewise.
806 * symtab.c: Likewise.
807 * vmsgetargs.c: Likewise.
809 2000-03-31 Akim Demaille <akim@epita.fr>
811 Clean up the error reporting functions.
813 * src/report.c: New file.
814 * src/report.h: Likewise.
815 * src/Makefile.am: Adjust.
816 * m4/error.m4: New file.
817 * m4/Makefile.am: Adjust.
818 * configure.in (jm_PREREQ_ERROR): Call it.
819 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
821 (fatal, fatals): Remove. All callers use complain.c::fatal.
822 (warn, warni, warns, warnss, warnss): Remove. All callers use
823 complain.c::complain.
824 (toomany): Remove, use fatal instead.
825 * src/files.c (done): No argument, use complain_message_count.
826 * src/main.c (main): Register `done' to `atexit'.
828 * src/getargs.c (usage): More `fputs', less `fprintf'.
830 2000-03-28 Akim Demaille <akim@epita.fr>
832 * lib/: New directory.
833 * Makefile.am (SUBDIRS): Adjust.
834 * configure.in: Adjust.
835 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
837 * src/alloca.c: Moved to lib/.
838 * src/getopt.c: Likewise.
839 * src/getopt1.c: Likewise.
840 * src/getopt.h: Likewise.
841 * src/ansi2knr.c: Likewise.
842 * src/ansi2knr.1: Likewise.
843 * src/Makefile.am: Adjust.
844 * lib/Makefile.am: New file.
846 2000-03-28 Akim Demaille <akim@epita.fr>
848 * src/getargs.c (usage): Refresh the help message.
850 2000-03-17 Akim Demaille <akim@epita.fr>
852 * src/getopt1.c: Updated from textutils 2.0e
853 * src/getopt.c: Likewise.
854 * src/getopt.h: Likewise.
856 2000-03-17 Akim Demaille <akim@epita.fr>
858 * src/Makefile.am (bison.simple): Fix the awk program: quote only
859 the file name, not the whole `#line LINE FILE'.
861 2000-03-17 Akim Demaille <akim@epita.fr>
863 On syntax errors, report the token on which we choked.
865 * src/bison.s1 (yyparse): In the label yyerrlab, when
866 YYERROR_VERBOSE, add yychar in msg.
868 2000-03-17 Akim Demaille <akim@epita.fr>
870 * src/reader.c (copy_at): New function.
871 (copy_guard): Use it.
872 (copy_action): Use it.
874 2000-03-17 Akim Demaille <akim@epita.fr>
876 Be kind to translators, save some useless translations.
878 * src/main.c (banner): New function.
879 (fatal_banner): Use it.
880 (warn_banner): Use it.
882 2000-03-17 Akim Demaille <akim@epita.fr>
884 * src/reader.c (copy_definition): Use copy_string and
885 copy_comment. Removed now unused `match', `ended',
887 (copy_comment, copy_string): Moved, to be visible from
890 2000-03-17 Akim Demaille <akim@epita.fr>
892 * src/reader.c (copy_string): Declare `static inline'. No
893 problems with inline, since it is checked by configure.
894 (copy_comment): Likewise.
896 2000-03-17 Akim Demaille <akim@epita.fr>
898 * src/reader.c (packsymbols): Formatting changes.
900 2000-03-17 Akim Demaille <akim@epita.fr>
902 * src/reader.c (copy_comment): New function, factored out from:
903 (copy_action): Use it. Removed now unused `match', `ended',
905 (copy_guard): Likewise.
907 2000-03-17 Akim Demaille <akim@epita.fr>
909 * src/reader.c (copy_string): New function, factored out from:
910 (copy_action): Use it.
911 (copy_guard): Likewise.
913 2000-03-17 Akim Demaille <akim@epita.fr>
915 Change the handling of @s so that they behave exactly like $s.
916 There is now a pseudo variable @$ (readble and writable), location
917 of the lhs of the rule (by default ranging from the location of
918 the first symbol of the rhs, to the location of the last symbol,
919 or, if the rhs is empty, YYLLOC).
921 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
923 (yyparse): When providing a default semantic action, provide a
924 default location action.
925 (after the $): No longer change `*YYLSP', just stack YYLOC the
926 same way you stack YYVAL.
927 * src/reader.c (read_declarations): Use warns.
928 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
929 (copy_action, case '@'): Likewise.
930 Use a standard error message, to save useless work from
933 2000-03-17 Akim Demaille <akim@epita.fr>
935 * src/bison.s1: Formatting and cosmetics changes.
936 * src/reader.c: Likewise.
937 Update the Copyright notice.
939 2000-03-17 Akim Demaille <akim@epita.fr>
941 * src/bison.s1 (#line): All set to `#line' only, since the
942 Makefile now handles them.
944 2000-03-16 Akim Demaille <akim@epita.fr>
946 * src/output.c (output_rule_data): Output the documentation of
948 (Copyright notice): Update.
951 2000-03-16 Akim Demaille <akim@epita.fr>
953 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
954 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
955 One `#if YYDEBUG' remains, since it uses variables which are
956 defined only if `YYDEBUG != 0'.
958 2000-03-16 Akim Demaille <akim@epita.fr>
960 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
961 and related variables so that the similarities are highlighted.
963 2000-03-16 Akim Demaille <akim@epita.fr>
965 * src/bison.s1: Properly indent CPP directives.
967 2000-03-16 Akim Demaille <akim@epita.fr>
969 * src/bison.s1: Properly indent the `alloca' CPP section.
971 2000-03-16 Akim Demaille <akim@epita.fr>
973 Do not hard code values of directories in `configure.in'.
974 Update the `configure' tool chain.
976 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
978 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
979 (AC_OUTPUT): Add m4/Makefile.
980 Bump to bison 1.28a, 1.29 has never been released.
981 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
982 handled via src/Makefile.am.
983 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
984 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
986 * Makefile.am (SUBDIRS): Add m4.
987 (ACLOCAL_AM_FLAGS): New variable.
988 (AUTOMAKE_OPTIONS): Add check-news.
989 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
990 the proper line number and file name.
991 (DEFS): Propagate the location of bison library files and of the
993 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
995 * acinclude.m4: Remove, replaced by the directory m4.
996 * m4/Makefile.am (EXTRA_DIST): New variable.
997 * m4/gettext.m4: New file, from the fileutils.
998 * m4/lcmessage.m4: Likewise
999 * m4/progtest.m4: Likewise.
1000 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
1002 2000-03-10 Akim Demaille <akim@epita.fr>
1005 Formatting changes of various comments.
1006 Respect the GNU coding standards at various places.
1007 Don't use `_()' when no translation is needed.
1009 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1012 OS/2 honors TMPDIR environment variable.
1014 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1016 * doc/bison.texinfo: Tweaked spelling and grammar.
1018 Removed reference to price of printed copy.
1019 Mention BISON_SIMPLE and BISON_HAIRY.
1021 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1023 * configure.in, NEWS:
1024 Bison 1.29 released.
1026 1999-10-27 Jesse Thilo <jthilo@gnu.org>
1028 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
1029 Added reference card.
1031 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1033 * po/ru.po: Added Russian translation.
1035 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1037 * configure.in: Added Russian translation.
1039 1999-07-06 Jesse Thilo <jthilo@gnu.org>
1041 * configure.in, NEWS, README:
1042 Released version 1.28.
1044 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1047 Squashed redefinition warning on some systems.
1049 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
1050 Have configure build version string instead of relying on ANSI string
1053 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1055 * po/POTFILES.in: Got rid of version.c.
1057 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1059 * acconfig.h, configure.in:
1060 Have configure build version string instead of relying on ANSI string
1063 1999-06-08 Jesse Thilo <jthilo@gnu.org>
1066 Dropped mention of `+' for long-named options.
1068 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1070 * src/files.c: Added <unistd.h> for unlink().
1072 * src/Makefile.am, src/system.h:
1075 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1077 * README: Added a FAQ list.
1079 * configure.in, acconfig.h:
1082 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1084 * doc/FAQ, doc/Makefile.am:
1087 1999-05-19 Jesse Thilo <jthilo@gnu.org>
1089 * src/alloc.h, src/symtab.h, src/version.c:
1090 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1092 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1094 * src/.cvsignore, src/Makefile.am:
1095 Reorganized: sources in `src', documentation in `doc'.
1097 * src/lex.c (literalchar):
1098 fixed the code for escaping double quotes (thanks
1101 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1103 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1104 Adjusted paths to reflect directory reorganization.
1106 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1108 * doc/.cvsignore, doc/Makefile.am:
1109 Reorganized: sources in `src', documentation in `doc'.
1111 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1114 Updated AC_INIT file to reflect directory reorganization.
1116 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1117 Reorganized: sources in `src', documentation in `doc'.
1119 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1122 Don't declare calloc() and realloc() if not necessary.
1124 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1126 * configure.in, acconfig.h, acinclude.m4:
1127 Don't declare calloc() and realloc() if not necessary.
1129 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1131 * po/.cvsignore: Added i18n support.
1133 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1135 * acconfig.h, configure.in, Makefile.am:
1138 1999-03-22 Jesse Thilo <jthilo@gnu.org>
1140 * src/bison.s1: Fixed #line numbers.
1142 1999-03-15 Jesse Thilo <jthilo@gnu.org>
1144 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1145 Added PO files from Translation Project.
1147 1999-03-03 Jesse Thilo <jthilo@gnu.org>
1150 Added support for non-ANSI compilers (ansi2knr).
1152 1999-02-16 Jesse Thilo <jthilo@gnu.org>
1154 * configure.in: Bumped version number to 1.27.
1157 Added `bison.simple' to list of files removed by `make distclean'.
1159 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1161 * src/files.c, src/files.h:
1162 Defined locations of parser files in config.h instead of Makefile.
1164 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1166 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1167 Defined locations of parser files in config.h instead of Makefile.
1169 1999-02-09 Jesse Thilo <jthilo@gnu.org>
1172 Removed inappropriate use of $< macro.
1174 1999-02-05 Jesse Thilo <jthilo@gnu.org>
1176 * po/Makefile.in.in, po/POTFILES.in:
1177 Add `po' directory skeleton.
1179 1999-01-27 Jesse Thilo <jthilo@gnu.org>
1181 * README: Document help-bison list.
1183 * configure.in: Add check for mkstemp().
1185 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1187 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1188 Hush a few compiler warnings.
1191 Add tryclose(), which verifies that fclose was successful.
1192 Hush a couple of compiler warnings.
1194 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1196 * Makefile.am, OChangeLog:
1197 ChangeLog is now automatically generated. Include the old version as
1200 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1202 * 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:
1205 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1207 * doc/bison.texinfo: Fix formatting glitch.
1209 * doc/bison.texinfo: Update FSF address.
1211 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1213 * acconfig.h: Update FSF address.
1215 1999-01-08 Jesse Thilo <jthilo@gnu.org>
1218 Don't define PACKAGE here, since config.h defines it.
1220 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1222 * src/reader.c: Update copyright date.
1225 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1226 favor of output directly to stderr (avoids buffer overruns).
1228 * src/reader.c: Some checks for premature EOF.
1230 * 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:
1231 Use prototypes if the compiler understands them.
1233 * src/files.c: Honor TMPDIR on Unix hosts.
1234 Use prototypes if the compiler understands them.
1237 Fix a couple of buffer overrun bugs.
1238 Use prototypes if the compiler understands them.
1240 * src/system.h: Include unistd.h and ctype.h.
1241 Use #ifdef instead of #if for NLS symbols.
1243 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1245 * doc/bison.texinfo:
1246 Delete comment "consider using @set for edition number, etc..." since
1247 we now are doing so.
1249 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1252 Use prototypes if the compiler understands them.
1254 * NEWS: Document 1.26 highlights.
1256 * Makefile.am: Require Automake 1.3 or later.
1259 Use prototypes if the compiler understands them.
1261 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1264 Use VERSION symbol from automake for version number.
1266 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1268 * acconfig.h, configure.in, version.cin:
1269 Use VERSION symbol from automake for version number.
1271 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1274 Distribute original version of simple parser (bison.s1), not built
1275 version (bison.simple).
1277 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1279 * doc/bison.texinfo: Add info dir entry.
1281 * doc/bison.texinfo:
1282 Let automake put version number into documentation.
1284 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1286 * src/bison.cld, src/build.com, src/vmshlp.mar:
1287 Add non-RCS files from /gd/gnu/bison.
1289 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1292 Document the BISON_HAIRY and BISON_SIMPLE variables.
1294 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1296 * src/version.c: Build version.c automatically.
1299 Fix token numbering (used to start at 258, not 257).
1301 * src/system.h: Include config.h.
1303 * src/getargs.c: Update bug report address.
1305 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1306 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1308 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1311 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1313 * configure.in, version.cin:
1314 Build version.c automatically.
1316 * AUTHORS: Add AUTHORS file.
1318 * README: Update bug report address.
1321 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1323 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1326 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1328 * doc/bison.texinfo: Clean up some formatting.
1330 1998-05-05 Richard Stallman <rms@gnu.org>
1332 * doc/bison.texinfo:
1333 Explain better why to make a pure parser.
1335 1998-01-05 Richard Stallman <rms@gnu.org>
1337 * src/files.c (openfiles):
1338 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1339 find a temporary directory, if possible. Do not unlink files while
1342 1997-08-25 Richard Stallman <rms@gnu.org>
1344 * src/reader.c (stack_offset;):
1345 Change some warni to warns.
1347 * src/lex.c (literalchar): Use warns, not warni.
1349 1997-06-28 Richard Stallman <rms@gnu.org>
1351 * src/bison.s1: Add a Bison version comment.
1353 * src/main.c (fatal, warn, berror):
1356 1997-06-28 Richard Stallman <rms@gnu.org>
1358 * Makefile.in (bison_version): New variable.
1359 (dist): Use that variable.
1360 (bison.s1): Substitute the Bison version into bison.simple.
1362 * bison.simple: Add a Bison version comment.
1364 1997-06-18 Richard Stallman <rms@gnu.org>
1366 * src/main.c (fatal, warn, berror):
1367 Make error messages standard.
1368 (toomany): Improve error message text.
1370 * 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:
1371 new.h renamed to alloc.h.
1373 1997-06-18 Richard Stallman <rms@gnu.org>
1375 * Makefile.in: new.h renamed to alloc.h.
1377 1997-05-24 Richard Stallman <rms@gnu.org>
1379 * src/lex.c (literalchar):
1380 Fix the code for escaping \, " and '.
1382 (lex): Avoid trouble when there are many chars
1383 to discard in a char literal with just several chars in it.
1385 1997-05-17 Richard Stallman <rms@gnu.org>
1388 Use malloc, if using alloca is troublesome.
1389 (YYSTACK_USE_ALLOCA): New flag macro.
1390 Define it for some systems and compilers.
1391 (YYSTACK_ALLOC): New macro.
1392 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1393 If it was malloc'd, free it.
1395 1997-05-17 Richard Stallman <rms@gnu.org>
1398 Use malloc, if using alloca is troublesome.
1399 (YYSTACK_USE_ALLOCA): New flag macro.
1400 Define it for some systems and compilers.
1401 (YYSTACK_ALLOC): New macro.
1402 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1403 If it was malloc'd, free it.
1405 1997-04-23 Richard Stallman <rms@gnu.org>
1408 (alloca) [__hpux]: Always define as __builtin_alloca.
1410 1997-04-23 Richard Stallman <rms@gnu.org>
1413 (alloca) [__hpux]: Always define as __builtin_alloca.
1415 1997-04-22 Richard Stallman <rms@gnu.org>
1418 [__hpux]: Include alloca.h (right for HPUX 10)
1419 instead of declaring alloca (right for HPUX 9).
1421 * src/bison.s1 (__yy_memcpy):
1422 Declare arg `count' as unsigned int.
1423 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1425 1997-04-22 Richard Stallman <rms@gnu.org>
1428 [__hpux]: Include alloca.h (right for HPUX 10)
1429 instead of declaring alloca (right for HPUX 9).
1431 * bison.simple (__yy_memcpy):
1432 Declare arg `count' as unsigned int.
1433 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1435 1997-01-03 Richard Stallman <rms@gnu.org>
1437 * src/allocate.c: [__STDC__ or _MSC_VER]:
1438 Declare calloc and realloc to return void *.
1440 1997-01-02 Richard Stallman <rms@gnu.org>
1443 [_MSC_VER]: Include stdlib.h and process.h.
1444 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
1446 * src/main.c (main): Return FAILURE as a value.
1447 (printable_version): Declare arg as int, not char.
1449 1997-01-02 Richard Stallman <rms@gnu.org>
1451 * Makefile.in (dist):
1452 Explicitly check for symlinks, and copy them.
1454 1996-12-19 Richard Stallman <rms@gnu.org>
1457 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
1459 1996-12-18 Paul Eggert <eggert@gnu.org>
1461 * src/bison.s1 (yyparse):
1462 If __GNUC__ and YYPARSE_PARAM are both defined,
1463 declare yyparse to have a void * argument.
1465 1996-12-18 Paul Eggert <eggert@gnu.org>
1467 * bison.simple (yyparse):
1468 If __GNUC__ and YYPARSE_PARAM are both defined,
1469 declare yyparse to have a void * argument.
1471 1996-12-17 Richard Stallman <rms@gnu.org>
1473 * src/reduce.c (nbits): Add some casts.
1475 1996-08-12 Richard Stallman <rms@gnu.org>
1477 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
1479 1996-08-12 Richard Stallman <rms@gnu.org>
1481 * bison.simple: Test _MSDOS as well as _MSDOS_.
1483 1996-07-31 Richard Stallman <rms@gnu.org>
1486 [__sun && __i386]: Include alloca.h.
1488 1996-07-31 Richard Stallman <rms@gnu.org>
1491 [__sun && __i386]: Include alloca.h.
1493 1996-07-30 Richard Stallman <rms@gnu.org>
1495 * src/bison.s1: Comment change.
1497 * src/bison.s1: Test _MSDOS_, not MSDOS.
1499 1996-07-30 Richard Stallman <rms@gnu.org>
1501 * bison.simple: Comment change.
1503 * bison.simple: Test _MSDOS_, not MSDOS.
1505 1996-06-01 Richard Stallman <rms@gnu.org>
1507 * 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:
1508 Insert `_' macro around many string constants.
1511 Insert `_' macro around many string constants.
1513 (main): Call setlocale, bindtextdomain and textdomain.
1515 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
1516 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
1517 [ENABLE_NLS]: Include libintl.h.
1518 [ENABLE_NLS] (gettext): Define.
1519 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
1520 (N_, PACKAGE, LOCALEDIR): New macros.
1522 1996-06-01 Richard Stallman <rms@gnu.org>
1524 * POTFILES.in: New file.
1526 * Makefile.in (allocate.o):
1527 Define target explicitly.
1529 * Makefile.in (CFLAGS): Set to @CFLAGS@.
1530 (LDFLAGS): Set to @LDFLAGS@.
1531 (configure): Run autoconf only if preceding `cd' succeeds.
1532 (bison.s1): Redirect output to temporary file then move the
1533 temporary to the target, rather than redirecting directly to bison.s1.
1534 (clean): Remove config.status and config.log.
1535 (distclean): Don't remove config.status here.
1537 1996-05-12 Richard Stallman <rms@gnu.org>
1540 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1542 1996-05-12 Richard Stallman <rms@gnu.org>
1545 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1547 1996-05-11 Richard Stallman <rms@gnu.org>
1549 * src/bison.s1 (__yy_memcpy):
1550 Really reorder the args, as was supposedly done on Feb 14 1995.
1551 (yyparse): Calls changed accordingly.
1553 1996-05-11 Richard Stallman <rms@gnu.org>
1555 * Makefile.in (dist): Don't use $(srcdir).
1557 * bison.simple (__yy_memcpy):
1558 Really reorder the args, as was supposedly done on Feb 14 1995.
1559 (yyparse): Calls changed accordingly.
1561 1996-01-27 Richard Stallman <rms@gnu.org>
1563 * src/output.c (output_rule_data):
1564 Test YYERROR_VERBOSE in the conditional
1565 around the definition of ttyname.
1567 1995-12-29 Richard Stallman <rms@gnu.org>
1570 Fix line numbers in #line commands.
1572 1995-12-29 Richard Stallman <rms@gnu.org>
1575 Fix line numbers in #line commands.
1577 1995-12-27 Richard Stallman <rms@gnu.org>
1579 * src/bison.s1 (YYPARSE_PARAM_DECL):
1580 In C++, make it always null.
1581 (YYPARSE_PARAM_ARG): New macro.
1582 (yyparse): Use YYPARSE_PARAM_ARG.
1584 1995-12-27 Richard Stallman <rms@gnu.org>
1586 * bison.simple (YYPARSE_PARAM_DECL):
1587 In C++, make it always null.
1588 (YYPARSE_PARAM_ARG): New macro.
1589 (yyparse): Use YYPARSE_PARAM_ARG.
1591 1995-11-29 Richard Stallman <rms@gnu.org>
1593 * doc/bison.texinfo:
1594 Describe literal string tokens, %raw, %no_lines, %token_table.
1596 1995-11-29 Daniel Hagerty <hag@gnu.org>
1598 * doc/bison.texinfo: Fixed update date
1600 1995-10-16 Richard Stallman <rms@gnu.org>
1602 * src/version.c: Version 1.25.
1604 1995-10-16 Richard Stallman <rms@gnu.org>
1606 * NEWS: *** empty log message ***
1608 1995-10-16 Richard Stallman <rms@gnu.org>
1610 * doc/bison.1, doc/bison.rnh:
1613 1995-10-15 Richard Stallman <rms@gnu.org>
1615 * src/vmsgetargs.c, src/getargs.c:
1616 Added -n, -k, and -raw switches.
1617 (noparserflag, toknumflag, rawtoknumflag): New variables.
1619 * src/symtab.h (SALIAS):
1620 New #define for adding aliases to %token.
1621 (struct bucket): Added `alias' field.
1623 * src/reduce.c (reduce_grammar):
1624 Revise error message.
1625 (print_notices): Remove final `.' from error message.
1627 * src/reader.c (reader_output_yylsp):
1629 (readgram): Use `#if 0' around code that accepted %command
1630 inside grammar rules: The documentation doesn't allow it,
1631 and it will fail since the %command processors scan for the next %.
1632 (parse_token_decl): Extended the %token
1633 declaration to allow a multi-character symbol as an alias.
1634 (parse_thong_decl): New function.
1635 (read_declarations): Added %thong declarations.
1636 (read_declarations): Handle NOOP to deal with allowing
1637 % declarations as another means to specify the flags.
1638 (readgram): Allow %prec prior to semantics embedded in a rule.
1639 (skip_to_char, read_declarations, copy_definition)
1640 (parse_token_decl, parse_start_decl, parse_type_decl)
1641 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
1642 (get_type_name, copy_guard, copy_action, readgram)
1643 (get_type, packsymbols): Revised most error messages.
1644 Changed `fatal' to `warnxxx' to avoid aborting for error.
1645 Revised and use multiple warnxxx functions to avoid using VARARGS1.
1646 (read_declarations): Improve the error message for
1647 an invalid character. Do not abort.
1648 (read_declarations, copy_guard, copy_action): Use
1649 printable_version to avoid unprintable characters in printed output.
1650 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
1651 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
1652 Allow the type of a non-terminal can be given
1653 more than once, as long as all specifications give the same type.
1656 (output_headers, output_trailers, output, output_gram)
1657 (output_rule_data): Implement noparserflag variable.
1658 Implement toknumflag variable.
1659 (output): Call reader_output_yylsp to output LTYPESTR.
1661 * src/main.c (main):
1662 If reader sees an error, don't process the grammar.
1663 (fatals): Updated to not use VARARGS1.
1664 (printable_version, int_to_string, warn, warni, warns, warnss)
1665 (warnsss): New error reporting functions. Avoid abort for error.
1668 Added THONG and NOOP for alias processing.
1669 Added SETOPT for the new code that allows setting options with %flags.
1672 Include getopt.h. Add some extern decls.
1673 (safegetc): New function to deal with EOF gracefully.
1674 (literalchar); new function to deal with reading \ escapes.
1675 (lex): Use literalchar.
1676 (lex): Implemented "..." tokens.
1677 (literalchar, lex, parse_percent_token): Made tokenbuffer
1678 always contain the token. This includes growing the token
1679 buffer while reading an integer.
1680 (parse_percent_token): Replaced if-else statement with percent_table.
1681 (parse_percent_token): Added % declarations as another
1682 way to specify the flags -n, -l, and -r. Also added hooks for
1683 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
1684 major changes to files.c.
1685 (lex) Retain in the incoming stream a character following
1687 (skip_white_space, lex): Revised most error messages
1688 and changed fatal to warn to avoid aborting.
1689 (percent_table): Added %thong declarations.
1691 * src/gram.h: Comment changes.
1693 * src/files.c (openfiles, open_extra_files, done):
1695 and actfile file. Handle noparserflag. Both for -n switch.
1697 * src/conflicts.c (resolve_sr_conflict):
1698 Remove use of alloca.
1700 1995-06-01 Jim Meyering <meyering@gnu.org>
1702 * doc/bison.texinfo: *** empty log message ***
1704 1995-05-06 Richard Stallman <rms@gnu.org>
1706 * src/bison.s1: Comment change.
1708 1995-05-06 Richard Stallman <rms@gnu.org>
1710 * bison.simple: Comment change.
1712 1995-05-03 Richard Stallman <rms@gnu.org>
1714 * src/version.c: Version now 1.24.
1716 * src/bison.s1: Change distribution terms.
1718 * src/version.c: Version now 1.23.
1720 1995-05-03 Richard Stallman <rms@gnu.org>
1722 * doc/bison.texinfo:
1723 Rewrite "Conditions for Using Bison".
1724 Update version to 1.24.
1726 1995-05-03 Richard Stallman <rms@gnu.org>
1728 * bison.simple: Change distribution terms.
1730 1995-02-23 Richard Stallman <rms@gnu.org>
1732 * src/files.c: Test __VMS_POSIX as well as VMS.
1734 1995-02-14 Jim Meyering <meyering@gnu.org>
1736 * src/bison.s1 (__yy_memcpy):
1737 Renamed from __yy_bcopy to avoid
1738 confusion. Reverse FROM and TO arguments to be consistent with
1741 1995-02-14 Jim Meyering <meyering@gnu.org>
1743 * bison.simple (__yy_memcpy):
1744 Renamed from __yy_bcopy to avoid
1745 confusion. Reverse FROM and TO arguments to be consistent with
1748 1994-11-10 David J. MacKenzie <djm@gnu.org>
1754 * Makefile.in (DISTFILES): Include NEWS.
1756 * Makefile.in (DISTFILES):
1757 Include install-sh, not install.sh.
1759 * configure.in: Update to Autoconf v2 macro names.
1761 1994-10-05 David J. MacKenzie <djm@gnu.org>
1763 * Makefile.in: fix typo
1765 * Makefile.in (prefix, exec_prefix):
1766 Let configure set them.
1768 1994-09-28 David J. MacKenzie <djm@gnu.org>
1770 * Makefile.in: Set datadir to $(prefix)/share.
1772 1994-09-15 Richard Stallman <rms@gnu.org>
1775 Update copyright notice and GPL version.
1777 1994-09-15 Richard Stallman <rms@gnu.org>
1780 Update copyright notice and GPL version.
1782 1994-07-12 Richard Stallman <rms@gnu.org>
1784 * src/reduce.c, src/reader.c:
1787 1994-05-05 David J. MacKenzie <djm@gnu.org>
1789 * Makefile.in: entered into RCS
1791 1994-03-26 Richard Stallman <rms@gnu.org>
1793 * src/bison.s1: entered into RCS
1795 1994-03-26 Richard Stallman <rms@gnu.org>
1797 * bison.simple: entered into RCS
1799 1994-03-25 Richard Stallman <rms@gnu.org>
1801 * src/main.c: entered into RCS
1803 1994-03-24 Richard Stallman <rms@gnu.org>
1805 * src/conflicts.c: entered into RCS
1807 1994-01-02 Richard Stallman <rms@gnu.org>
1809 * Makefile.in: *** empty log message ***
1811 1993-11-21 Richard Stallman <rms@gnu.org>
1813 * src/bison.s1: *** empty log message ***
1815 1993-11-21 Richard Stallman <rms@gnu.org>
1817 * doc/bison.texinfo: entered into RCS
1819 * doc/bison.texinfo: *** empty log message ***
1821 1993-11-21 Richard Stallman <rms@gnu.org>
1823 * bison.simple: *** empty log message ***
1825 1993-10-25 David J. MacKenzie <djm@gnu.org>
1827 * doc/bison.texinfo: *** empty log message ***
1829 1993-10-19 Richard Stallman <rms@gnu.org>
1831 * src/bison.s1: *** empty log message ***
1833 1993-10-19 Richard Stallman <rms@gnu.org>
1835 * bison.simple: *** empty log message ***
1837 1993-10-14 Richard Stallman <rms@gnu.org>
1839 * src/bison.s1: *** empty log message ***
1841 1993-10-14 Richard Stallman <rms@gnu.org>
1843 * bison.simple: *** empty log message ***
1845 1993-09-14 David J. MacKenzie <djm@gnu.org>
1847 * doc/bison.texinfo: *** empty log message ***
1849 1993-09-13 Noah Friedman <friedman@gnu.org>
1851 * Makefile.in: *** empty log message ***
1853 1993-09-10 Richard Stallman <rms@gnu.org>
1855 * src/conflicts.c: *** empty log message ***
1857 * src/system.h: entered into RCS
1859 1993-09-10 Richard Stallman <rms@gnu.org>
1861 * doc/bison.1: entered into RCS
1863 1993-09-06 Noah Friedman <friedman@gnu.org>
1865 * src/version.c: entered into RCS
1867 1993-09-06 Noah Friedman <friedman@gnu.org>
1869 * Makefile.in: *** empty log message ***
1871 1993-07-30 David J. MacKenzie <djm@gnu.org>
1873 * Makefile.in: *** empty log message ***
1875 1993-07-24 Richard Stallman <rms@gnu.org>
1877 * src/bison.s1: *** empty log message ***
1879 1993-07-24 Richard Stallman <rms@gnu.org>
1881 * bison.simple: *** empty log message ***
1883 1993-07-08 David J. MacKenzie <djm@gnu.org>
1885 * Makefile.in: *** empty log message ***
1887 1993-07-04 Richard Stallman <rms@gnu.org>
1889 * src/bison.s1: *** empty log message ***
1891 1993-07-04 Richard Stallman <rms@gnu.org>
1893 * bison.simple: *** empty log message ***
1895 1993-06-26 David J. MacKenzie <djm@gnu.org>
1897 * src/getargs.c: entered into RCS
1899 1993-06-26 David J. MacKenzie <djm@gnu.org>
1901 * doc/bison.texinfo: *** empty log message ***
1903 * doc/bison.1: New file.
1905 1993-06-25 Richard Stallman <rms@gnu.org>
1907 * src/getargs.c: New file.
1909 1993-06-16 Richard Stallman <rms@gnu.org>
1911 * src/bison.s1: *** empty log message ***
1913 1993-06-16 Richard Stallman <rms@gnu.org>
1915 * bison.simple: *** empty log message ***
1917 1993-06-03 Richard Stallman <rms@gnu.org>
1919 * src/bison.s1: New file.
1921 1993-06-03 Richard Stallman <rms@gnu.org>
1923 * doc/bison.texinfo: *** empty log message ***
1925 1993-06-03 Richard Stallman <rms@gnu.org>
1927 * bison.simple: New file.
1929 1993-05-19 Richard Stallman <rms@gnu.org>
1931 * doc/bison.texinfo: New file.
1933 1993-05-07 Noah Friedman <friedman@gnu.org>
1935 * Makefile.in: *** empty log message ***
1937 1993-04-28 Noah Friedman <friedman@gnu.org>
1939 * src/reader.c: *** empty log message ***
1941 1993-04-23 Noah Friedman <friedman@gnu.org>
1943 * src/alloc.h: entered into RCS
1945 1993-04-20 David J. MacKenzie <djm@gnu.org>
1947 * src/version.c: *** empty log message ***
1949 * src/files.c, src/allocate.c:
1952 * src/reader.c: *** empty log message ***
1954 * src/lex.c: entered into RCS
1956 * src/conflicts.c: New file.
1958 * src/symtab.c: entered into RCS
1960 * src/alloc.h: New file.
1962 * src/LR0.c: entered into RCS
1964 1993-04-18 Noah Friedman <friedman@gnu.org>
1966 * src/reader.c: New file.
1968 * src/version.c: *** empty log message ***
1970 1993-04-18 Noah Friedman <friedman@gnu.org>
1972 * Makefile.in: *** empty log message ***
1974 1993-04-17 Noah Friedman <friedman@gnu.org>
1976 * Makefile.in: *** empty log message ***
1978 1993-04-15 Richard Stallman <rms@gnu.org>
1980 * src/main.c, src/files.c:
1983 1993-04-15 Noah Friedman <friedman@gnu.org>
1985 * configure.in: entered into RCS
1987 * configure.in: *** empty log message ***
1989 * configure.in: New file.
1991 1993-04-14 Richard Stallman <rms@gnu.org>
1993 * Makefile.in: New file.
1995 1993-04-13 Richard Stallman <rms@gnu.org>
1997 * src/version.c: New file.
1999 1993-03-25 Richard Stallman <rms@gnu.org>
2001 * src/output.c: entered into RCS
2003 1992-09-25 Richard Stallman <rms@gnu.org>
2005 * configure.bat: entered into RCS
2007 1992-06-22 Richard Stallman <rms@gnu.org>
2009 * src/vmsgetargs.c: entered into RCS
2011 1992-06-22 Richard Stallman <rms@gnu.org>
2013 * doc/bison.rnh: entered into RCS
2015 1992-04-20 David J. MacKenzie <djm@gnu.org>
2017 * README: entered into RCS
2019 1992-01-22 Richard Stallman <rms@gnu.org>
2021 * src/machine.h: entered into RCS
2023 1991-12-21 Richard Stallman <rms@gnu.org>
2025 * src/lalr.c, src/closure.c:
2028 1991-12-20 Richard Stallman <rms@gnu.org>
2030 * src/state.h: entered into RCS
2032 1991-12-18 Richard Stallman <rms@gnu.org>
2034 * src/print.c, src/nullable.c, src/derives.c:
2037 1991-11-03 David J. MacKenzie <djm@gnu.org>
2039 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
2042 1988-09-09 Richard Stallman <rms@gnu.org>
2044 * src/bison.hairy: entered into RCS
2046 1987-12-16 Richard Stallman <rms@gnu.org>
2048 * REFERENCES: entered into RCS