1 2001-03-16 Akim Demaille <akim@epita.fr>
3 * src/getargs.c (longopts): Clean up.
5 2001-02-21 Akim Demaille <akim@epita.fr>
7 * src/reader.c (gensym): `gensym_count' is your own.
8 Use a static buf to create the symbol name, as token_buffer is no
11 2001-02-08 Akim Demaille <akim@epita.fr>
13 * src/conflicts.c (conflict_report): Be sure not to append to res
14 between two calls, which could happen if both first sprintf were
15 skipped, but not the first cp += strlen.
17 2001-02-08 Akim Demaille <akim@epita.fr>
19 * lib/memchr.c, lib/stpcpy.c, lib/strndup.c, lib/strnlen.c:
20 New, from fileutils 4.0.37.
21 * configure.in: Require Autoconf 2.49c. I took some time before
22 making this decision. This is the only way out for portability
23 issues in Bison, it would mean way too much duplicate effort to
24 import in Bison features implemented in 2.49c since 2.13.
25 AC_REPLACE_FUNCS and AC_CHECK_DECLS the functions above.
27 2001-02-02 Akim Demaille <akim@epita.fr>
29 * lib/malloc.c, lib/realloc.c: New, from the fileutils 4.0.37.
30 * lib/xalloc.h, lib/xmalloc.c: Update.
32 2001-01-19 Akim Demaille <akim@epita.fr>
34 Get rid of the ad hoc handling of token_buffer in the scanner: use
37 * src/lex.c (token_obstack): New.
38 (init_lex): Initialize it. No longer call...
39 (grow_token_buffer): this. Remove it.
40 Adjust all the places which used it to use the obstack.
42 2001-01-19 Akim Demaille <akim@epita.fr>
44 * src/lex.h: Rename all the tokens:
45 s/\bENDFILE\b/tok_eof/g;
46 s/\bIDENTIFIER\b/tok_identifier/g;
48 Let them be enums, not #define, to ease debugging.
51 2001-01-18 Akim Demaille <akim@epita.fr>
53 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
54 * src/lex.c (maxtoken, grow_token_buffer): Static.
56 2001-01-18 Akim Demaille <akim@epita.fr>
58 Since we now use obstacks, more % directives can be enabled.
60 * src/lex.c (percent_table): Also accept `%yacc',
61 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
63 Handle the actions for `%semantic_parser' and `%pure_parser' here,
64 instead of returning a token.
65 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
66 * src/reader.c (read_declarations): Adjust.
67 * src/files.c (open_files): Don't call `compute_base_names', don't
68 compute `attrsfile' since they depend upon data which might be
69 *in* the input file now.
70 (output_files): Do it here.
71 * src/output.c (output_headers): Document the fact that this patch
72 introduces a guaranteed SEGV for semantic parsers.
73 * doc/bison.texinfo: Document them.
74 * tests/suite.at: Exercise these %options.
76 2000-12-20 Akim Demaille <akim@epita.fr>
78 Also handle the output file (--verbose) with obstacks.
80 * files.c (foutput): Remove.
81 (output_obstack): New.
82 Adjust all dependencies.
83 * src/conflicts.c: Return a string.
84 * src/system.h (obstack_grow_string): Rename as...
85 (obstack_sgrow): this. Be ready to work with non literals.
86 (obstack_fgrow4): New.
88 2000-12-20 Akim Demaille <akim@epita.fr>
90 * src/files.c (open_files): Fix the computation of short_base_name
91 in the case of `-o foo.tab.c'.
93 2000-12-20 Akim Demaille <akim@epita.fr>
95 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
96 (copy_dollar): Now that everything uses obstacks, get rid of the
99 2000-12-20 Akim Demaille <akim@epita.fr>
101 * src/files.c (open_files): Actually the `.output' file is based
102 on the short_base_name, not base_name.
103 * tests/suite.at (Checking output file names): Adjust.
105 2000-12-20 Akim Demaille <akim@epita.fr>
107 * src/bison.s1: Remove, we now use directly...
108 * src/bison.simple: this.
109 * src/Makefile.am: Use pkgdata instead of data.
111 2000-12-20 Akim Demaille <akim@epita.fr>
113 * src/files.c (guard_obstack): New.
114 (open_files): Initialize it.
115 (output_files): Dump it...
116 * src/files.h: Export it.
117 * src/reader.c (copy_guard): Use it.
119 2000-12-19 Akim Demaille <akim@epita.fr>
121 * src/files.c (outfile, defsfile, actfile): Removed as global
123 (open_files): Don't compute them.
124 (output_files): Adjust.
125 (base_name, short_base_name): Be global.
128 2000-12-19 Akim Demaille <akim@epita.fr>
130 * src/files.c (strsuffix): New.
131 (stringappend): Be just like strcat but allocate.
132 (base_names): Eve out from open_files.
133 Try to simplify the rather hairy computation of base_name and
135 (open_files): Use it.
136 * tests/suite.at (Checking output file names): New test.
138 2000-12-19 Akim Demaille <akim@epita.fr>
140 * src/system.h (obstack_grow_literal_string): Rename as...
141 (obstack_grow_string): this.
142 * src/output.c (output_parser): Recognize `%% actions' instead of
144 * src/bison.s1: s/$/%% actions/.
145 * src/bison.hairy: Likewise.
147 2000-12-19 Akim Demaille <akim@epita.fr>
149 * src/output.c (output_parser): Compute the `#line' lines when
151 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
152 Suggested by Hans Aberg.
154 2000-12-19 Akim Demaille <akim@epita.fr>
156 Let the handling of the skeleton files be local to the procedures
159 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
161 (fparser, open_extra_files): Remove.
162 (open_files, output_files): Don't take care of fparser.
163 * src/files.h: Adjust.
164 * src/output.c (output_parser): Open and close the file to the
166 * src/reader.c (read_declarations): When %semantic_parser, open
169 2000-12-19 Akim Demaille <akim@epita.fr>
171 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
172 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
174 2000-12-19 Akim Demaille <akim@epita.fr>
176 * src/files.c (open_files): Yipee! We no longer need all the code
177 looking for `/tmp' since we have no tmp file.
179 2000-12-19 Akim Demaille <akim@epita.fr>
181 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
183 * src/files.c (open_files): Less dependency on MSDOS etc.
185 2000-12-14 Akim Demaille <akim@epita.fr>
187 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
188 Provide a default definition.
189 Use it when executing the default @ action.
190 * src/reader.c (reader_output_yylsp): No longer include
191 `timestamp' and `text' in the default YYLTYPE.
193 2000-12-12 Akim Demaille <akim@epita.fr>
195 * src/reader.c (copy_definition, parse_union_decl, copy_action)
196 (copy_guard): Quote the file names.
197 Reported by Laurent Mascherpa.
199 2000-12-12 Akim Demaille <akim@epita.fr>
201 * src/output.c (output_headers, output_program, output): Be sure
202 to escape special characters when outputting filenames.
203 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
204 (output_headers): Don't depend on them, Use ACTSTR.
206 2000-11-17 Akim Demaille <akim@epita.fr>
208 * lib/obstack.h: Formatting changes.
209 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
210 prevents type checking.
211 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
212 cast the value to (void *): assigning a `foo *' to a `void *'
214 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
215 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
218 2000-11-17 Akim Demaille <akim@epita.fr>
220 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
222 (suite.m4, regression.m4, calc.m4): these.
223 * tests/atgeneral.m4: Update from CVS Autoconf.
225 2000-11-17 Akim Demaille <akim@epita.fr>
227 * tests/regression.m4 (%union and --defines): New test,
228 demonstrating a current bug in the obstack implementation.
230 2000-11-17 Akim Demaille <akim@epita.fr>
232 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
234 Use them to declare the variables which are global or local to
237 2000-11-17 Akim Demaille <akim@epita.fr>
239 * acconfig.h: Remove, no longer used.
241 2000-11-07 Akim Demaille <akim@epita.fr>
243 * src: s/Copyright (C)/Copyright/g.
245 2000-11-07 Akim Demaille <akim@epita.fr>
247 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
249 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
251 2000-11-07 Akim Demaille <akim@epita.fr>
253 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
254 Merge in a single CPP if/else.
256 2000-11-07 Akim Demaille <akim@epita.fr>
258 * src/output.c (output): Remove useless variables.
259 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
260 argument `data' for consistency with the prototypes.
262 (obstack_copy, obstack_copy0): Rename the second argument as
263 `address' for consistency. Qualify it `const'.
264 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
265 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
266 `const' their input argument (`data' or `address').
267 Adjust the corresponding macros to include `const' in casts.
269 2000-11-03 Akim Demaille <akim@epita.fr>
271 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
272 s/PFILE1/BISON_HAIRY/.
275 2000-11-03 Akim Demaille <akim@epita.fr>
277 For some reason, this was not applied.
279 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
280 `unlink': it's no longer used.
282 2000-11-03 Akim Demaille <akim@epita.fr>
284 * src/files.c (skeleton_find): New function, eved out of...
285 (open_files, open_extra_files): here.
287 2000-11-03 Akim Demaille <akim@epita.fr>
291 * src/files.c (obstack_save): New function.
293 (output_files): this.
295 * src/main.c (main): Don't use `atexit' to register `done', since
296 it no longer has to remove tmp files, just call `output_files'
297 when there are no errors.
299 2000-11-02 Akim Demaille <akim@epita.fr>
301 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
302 `unlink': it's no longer used.
303 * src/files.h: Formatting changes.
305 2000-11-02 Akim Demaille <akim@epita.fr>
307 Remove the last uses of mktemp and unlink/delete.
309 * src/files.c (fdefines, ftable): Removed.
310 (defines_ostack, table_obstack): New.
311 Adjust dependencies of the former into uses of the latter.
312 * src/output.c (output_short_or_char_table, output_short_table):
313 Convert to using obstacks.
314 * src/reader.c (copy_comment2): Accept one FILE * and two
316 (output_token_defines, reader_output_yylsp): Use obstacks.
317 * src/system.h (obstack_fgrow3): New.
319 2000-11-01 Akim Demaille <akim@epita.fr>
321 Change each use of `fattrs' into a use of `attrs_obstack'.
323 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
324 * src/files.c (fattrs): Remove.
325 (attrs_obstack): New.
326 Adjust all dependencies.
327 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
329 2000-11-01 Akim Demaille <akim@epita.fr>
332 Change each use of `faction' into a use of `action_obstack'.
334 * lib/obstack.h, lib/obstack.c: New files.
335 * src/files.c (faction): Remove.
336 (action_obstack): New.
337 Adjust all dependencies.
339 2000-10-20 Akim Demaille <akim@epita.fr>
341 * lib/quote.h (PARAMS): New macro. Use it.
343 2000-10-16 Akim Demaille <akim@epita.fr>
345 * src/output.c (output_short_or_char_table): New function.
346 (output_short_table, output_token_translations): Use it.
347 (goto_actions): Use output_short_table.
349 2000-10-16 Akim Demaille <akim@epita.fr>
351 * src/symtab.c (bucket_new): New function.
354 * src/output.c (output_short_table): New argument to display the
355 comment associated with the table.
357 (output_gram): Use it.
358 (output_rule_data): Nicer output layout for YYTNAME.
360 2000-10-16 Akim Demaille <akim@epita.fr>
362 * src/lex.c (read_typename): New function.
364 * src/reader.c (copy_dollar): Likewise.
366 2000-10-16 Akim Demaille <akim@epita.fr>
368 * src/reader.c (copy_comment2): Expect the input stream to be on
369 the `/' which is suspected to open a comment, instead of being
370 called after `//' or `/*' was read.
371 (copy_comment, copy_definition, parse_union_decl, copy_action)
372 (copy_guard): Adjust.
374 2000-10-16 Akim Demaille <akim@epita.fr>
376 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
377 `read_signed_integer'.
379 2000-10-16 Akim Demaille <akim@epita.fr>
381 * src/reader.c (copy_dollar): New function.
382 (copy_guard, copy_action): Use it.
384 2000-10-16 Akim Demaille <akim@epita.fr>
386 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
387 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
388 New files, from Fileutils 4.0.27.
389 * src/main.c (printable_version): Remove.
390 * src/lex.c, src/reader.c: Use `quote'.
392 2000-10-04 Akim Demaille <akim@epita.fr>
394 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
396 2000-10-04 Akim Demaille <akim@epita.fr>
398 * doc/bison.texinfo: Various typos spotted by Neil Booth.
400 2000-10-04 Akim Demaille <akim@epita.fr>
402 When a literal string is used to define two different tokens,
403 `bison -v' segfaults.
404 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
406 * tests/regression.m4: New file.
407 Include the core of the sample provided by Piotr Gackiewicz.
408 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
411 2000-10-04 Akim Demaille <akim@epita.fr>
413 * src/reader.c (parse_expect_decl): Keep `count' within the size
417 2000-10-02 Paul Eggert <eggert@twinsun.com>
419 * bison.s1 (yyparse): Assign the default value
420 unconditionally, to avoid a GCC warning and make the parser a
423 2000-10-02 Akim Demaille <akim@epita.fr>
425 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
428 2000-10-02 Akim Demaille <akim@epita.fr>
430 * src/derives.c, src/print.c, src/reduce.c: To ease the
431 translation, move some `\n' out of the translated strings.
433 2000-10-02 Akim Demaille <akim@epita.fr>
435 The location tracking mechanism is precious for parse error
436 messages. Nevertheless, it is enabled only when `@n' is used in
437 the grammar, which is a different issue (you can use it in error
438 message, but not in the grammar per se). Therefore, there should
439 be another means to enable it.
441 * src/getargs.c (getargs): Support `--locations'.
443 * src/getargs.h (locationsflag): Export it.
444 * src/lex.c (percent_table): Support `%locations'.
445 * src/reader.c (yylsp_needed): Remove this variable, now replaced
446 with `locationsflag'.
447 * doc/bison.texinfo: Document `--locations' and `%locations'.
449 * tests/calc.m4: Test it.
451 For regularity of the names, replace each
452 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
453 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
454 In addition replace each `flag' with `_flag'.
456 2000-10-02 Akim Demaille <akim@epita.fr>
458 Also test parse error messages, including with YYERROR_VERBOSE.
460 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
462 Use it to check the computations.
463 Use it to check `nonassoc' is honored.
464 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
466 (_AT_CHECK_CALC): Adjust to this option.
467 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
469 2000-10-02 Akim Demaille <akim@epita.fr>
471 Test also `--verbose', `--defines' and `--name-prefix'. Testing
472 the latter demonstrates a flaw in the handling of non debugging
473 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
474 was used in order to simplify:
490 unfortunately this leads to a CPP conflict when
491 `--name-prefix=foo' is used since it produces `#define yydebug
494 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
495 (YYDPRINTF): New macro.
497 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
499 Also test `--verbose', `--defines' and `--name-prefix'.
501 2000-10-02 Akim Demaille <akim@epita.fr>
503 Improve the readability of the produced parsers.
505 * src/bison.s1: Formatting changes.
506 Improve the comment related to the `$' mark.
507 (yydefault): Don't fall through to `yyresume': `goto' there.
508 * src/output.c (output_parser): When the `$' is met, skip the end
510 New variable, `number_of_dollar_signs', to check there's exactly
511 one `$' in the parser skeleton.
513 2000-10-02 Akim Demaille <akim@epita.fr>
515 * lib/xstrdup.c: New file, from the fileutils.
516 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
517 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
518 instead of strlen + xmalloc + strcpy.
519 * src/symtab.c (copys): Remove, use xstrdup instead.
521 2000-10-02 Akim Demaille <akim@epita.fr>
523 * src/gram.h (associativity): New enum type which replaces the
524 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
525 `right_assoc', `left_assoc' and `non_assoc'.
526 Adjust all dependencies.
527 * src/reader.c: Formatting changes.
528 (LTYPESTR): Don't define it, use it as a literal in
529 `reader_output_yylsp'.
530 * src/symtab.h (symbol_class): New enum type which replaces the
531 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
532 `sunknown', `stoken and `snterm'.
534 2000-10-02 Akim Demaille <akim@epita.fr>
536 * src/getargs.c (fixed_outfiles): Rename as...
537 (yaccflag): for consistency and accuracy.
540 2000-10-02 Akim Demaille <akim@epita.fr>
542 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
543 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
544 difficult and introduced a lot of core dump. It turns out that
545 Bison used an implementation of `xmalloc' based on `calloc', and
546 at various places it does depend upon the initialization to 0. I
547 have not tried to isolate the pertinent places, and all the former
548 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
549 someone should address this issue.
551 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
552 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
555 * src/warshall.h: New file.
558 2000-10-02 Akim Demaille <akim@epita.fr>
560 Various anti-`extern in *.c' changes.
562 * src/system.h: Include `assert.h'.
564 2000-10-02 Akim Demaille <akim@epita.fr>
566 * src/state.h (nstates, final_state, first_state, first_shift)
567 (first_reduction): Move their exportation from here...
568 * src/LR0.h: to here.
570 * src/getargs.c (statisticsflag): New variable.
571 Add support for `--statistics'.
574 Remove a lot of now useless `extern' statements in most files.
576 2000-10-02 Akim Demaille <akim@epita.fr>
578 * src/LR0.h: New file.
581 2000-10-02 Akim Demaille <akim@epita.fr>
583 * src/print.h: New file.
585 * src/print.c: Formatting and ordering changes.
586 (verbose, terse): Replace with...
587 (print_results): this new function.
590 2000-10-02 Akim Demaille <akim@epita.fr>
592 * src/conflicts.c (conflict_report): New function.
593 (conflict_log, verbose_conflict_log): Replace with...
594 (print_conflicts): this function.
596 * src/conflicts.h: New file.
597 Propagate its inclusion.
599 2000-10-02 Akim Demaille <akim@epita.fr>
601 * src/nullable.h: New file.
602 Propagate its inclusion.
603 * src/nullable.c: Formatting changes.
605 2000-10-02 Akim Demaille <akim@epita.fr>
607 * src/reduce.h: New file.
608 Propagate its inclusion.
609 * src/reduce.c: Topological sort and other formatting changes.
610 (bool, TRUE, FALSE): Move their definition to...
611 * src/system.h: here.
613 2000-10-02 Akim Demaille <akim@epita.fr>
615 * src/files.c: Formatting changes.
616 (tryopen, tryclose, openfiles): Rename as...
617 (xfopen, xfclose, open_files): this.
618 (stringappend): static.
619 * src/files.h: Complete the list of exported symbols.
622 2000-10-02 Akim Demaille <akim@epita.fr>
624 * src/reader.h: New file.
625 Propagate its use instead of tedious list of `extern' and
627 * src/reader.c: Formatting changes, topological sort,
630 2000-10-02 Akim Demaille <akim@epita.fr>
632 * src/lex.h: Prototype `lex.c' exported functions.
633 * src/reader.c: Adjust.
634 * src/lex.c: Formatting changes.
635 (safegetc): Rename as...
638 2000-10-02 Akim Demaille <akim@epita.fr>
640 * src/lalr.h: New file.
641 Propagate its inclusion instead of prototypes and `extern'.
642 * src/lalr.c: Formatting changes, topological sorting etc.
644 2000-10-02 Akim Demaille <akim@epita.fr>
646 * src/output.c (token_actions): Introduce a temporary array,
647 YYDEFACT, that makes it possible for this function to use
650 2000-10-02 Akim Demaille <akim@epita.fr>
652 `user_toknums' is output as a `short[]' in `output.c', while it is
653 defined as a `int[]' in `reader.c'. For consistency with the
654 other output tables, `user_toknums' is now defined as a table of
657 * src/reader.c (user_toknums): Be a short table instead of an int
661 Factor the short table outputs.
663 * src/output.c (output_short_table): New function.
664 * src/output.c (output_gram, output_stos, output_rule_data)
665 (output_base, output_table, output_check): Use it.
667 2000-10-02 Akim Demaille <akim@epita.fr>
669 * src/output.c (output): Topological sort of the functions, in
670 order to get rid of the `static' prototypes.
671 No longer use `register'.
672 * src/output.h: New file.
673 Propagate its inclusion in files explicitly prototyping functions
676 2000-09-21 Akim Demaille <akim@epita.fr>
678 * src/atgeneral.m4: Update from Autoconf.
680 2000-09-21 Akim Demaille <akim@epita.fr>
682 * src/closure.h: New file.
683 * src/closure.c: Formatting changes, topological sort over the
684 functions, use of closure.h.
685 (initialize_closure, finalize_closure): Rename as...
686 (new_closure, free_closure): these. Adjust dependencies.
687 * src/LR0.c: Formatting changes, topological sort, use of
689 (initialize_states): Rename as...
691 * src/Makefile.am (noinst_HEADERS): Adjust.
693 2000-09-20 Akim Demaille <akim@epita.fr>
695 * src/acconfig.h: Don't protect config.h against multiple
698 * src/system.h: Define PARAMS.
699 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
700 purpose of config.h. system.h must not try to fix wrong
701 definitions in config.h.
703 2000-09-20 Akim Demaille <akim@epita.fr>
705 * src/derives.h: New file.
706 * src/main.c, src/derives.h: Use it.
708 * src/Makefile.am (noinst_HEADERS): Adjust.
710 2000-09-20 Akim Demaille <akim@epita.fr>
712 * tests/atgeneral.m4: Update from Autoconf.
713 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
714 (AT_CHECK_CALC): New macros.
715 Use these macros to test bison with options `', `--raw',
716 `--debug', `--yacc', `--yacc --debug'.
718 2000-09-19 Akim Demaille <akim@epita.fr>
720 * src/output.c: Formatting changes.
721 * src/machine.h: Remove, leaving its contents in...
722 * src/system.h: here.
724 Adjust all dependencies on stdio.h and machine.h.
725 * src/getargs.h: New file.
726 Let all `extern' declarations about getargs.c be replaced with
727 inclusion of `getargs.h'.
728 * src/Makefile.am (noinst_HEADERS): Adjust.
730 * tests/calc.m4 (yyin): Be initialized in main, not on the global
732 (yyerror): Returns void, not int.
733 * doc/bison.texinfo: Formatting changes.
735 2000-09-19 Akim Demaille <akim@epita.fr>
737 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
740 2000-09-18 Akim Demaille <akim@epita.fr>
742 * configure.in: Append WARNING_CFLAGS to CFLAGS.
743 * src/Makefile.am (INCLUDES): Don't.
744 Be ready to fetch headers in lib/.
746 2000-09-18 Akim Demaille <akim@epita.fr>
748 * doc/bison.texinfo: Update the copyright.
749 ANSIfy and GNUify the examples.
752 2000-09-18 Akim Demaille <akim@epita.fr>
754 First set of tests: use the `calc' example from the documentation.
756 * src/bison.s1 (yyparse): Condition the code using `yytname' which
757 is defined only when YYDEBUG is.
758 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
759 * src/files.c (tryopen, tryclose): Formatting changes.
760 Move to the top and be static.
761 * src/reader.c (read_signed_integer): Likewise.
762 * tests/calc.m4: New file.
763 * Makefile.am, suite.m4: Adjust.
764 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
766 2000-09-18 Akim Demaille <akim@epita.fr>
768 Add support for an Autotest test suite for Bison.
770 * m4/m4.m4, m4/atconfig.m4: New files.
771 * m4/Makefile.am (EXTRA_DIST): Adjust.
772 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
774 * src/getargs.c: Display a more standard --version message.
775 * src/reader.c (reader): Formatting changes.
776 No longer depend upon VERSION_STRING.
777 * configure.in: No longer use `dnl'.
778 Set up the test suite and the new directory `tests/.
779 (VERSION_STRING): Remove.
781 2000-04-14 Akim Demaille <akim@epita.fr>
783 * src/reader.c (copy_comment2): New function, same as former
784 `copy_comment', but outputs into two FILE *.
785 (copy_comment): Use it.
786 (parse_union_decl): Use it.
787 (get_type, parse_start_decl): Use the same `invalid' message.
788 (parse_start_decl, parse_union_decl): Use the same `multiple'
790 (parse_union_decl, copy_guard, copy_action): Use the same
792 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
794 2000-03-31 Akim Demaille <akim@epita.fr>
796 * src/files.c (tryopen, tryclose): Move to the top.
799 2000-03-31 Akim Demaille <akim@epita.fr>
801 * src/main.c (main): Don't call `done', exit does it.
803 2000-03-31 Akim Demaille <akim@epita.fr>
805 * allocate.c: s/return (foo)/return foo/.
808 * output.c: Likewise.
809 * reader.c: Likewise.
810 * symtab.c: Likewise.
811 * vmsgetargs.c: Likewise.
813 2000-03-31 Akim Demaille <akim@epita.fr>
815 Clean up the error reporting functions.
817 * src/report.c: New file.
818 * src/report.h: Likewise.
819 * src/Makefile.am: Adjust.
820 * m4/error.m4: New file.
821 * m4/Makefile.am: Adjust.
822 * configure.in (jm_PREREQ_ERROR): Call it.
823 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
825 (fatal, fatals): Remove. All callers use complain.c::fatal.
826 (warn, warni, warns, warnss, warnss): Remove. All callers use
827 complain.c::complain.
828 (toomany): Remove, use fatal instead.
829 * src/files.c (done): No argument, use complain_message_count.
830 * src/main.c (main): Register `done' to `atexit'.
832 * src/getargs.c (usage): More `fputs', less `fprintf'.
834 2000-03-28 Akim Demaille <akim@epita.fr>
836 * lib/: New directory.
837 * Makefile.am (SUBDIRS): Adjust.
838 * configure.in: Adjust.
839 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
841 * src/alloca.c: Moved to lib/.
842 * src/getopt.c: Likewise.
843 * src/getopt1.c: Likewise.
844 * src/getopt.h: Likewise.
845 * src/ansi2knr.c: Likewise.
846 * src/ansi2knr.1: Likewise.
847 * src/Makefile.am: Adjust.
848 * lib/Makefile.am: New file.
850 2000-03-28 Akim Demaille <akim@epita.fr>
852 * src/getargs.c (usage): Refresh the help message.
854 2000-03-17 Akim Demaille <akim@epita.fr>
856 * src/getopt1.c: Updated from textutils 2.0e
857 * src/getopt.c: Likewise.
858 * src/getopt.h: Likewise.
860 2000-03-17 Akim Demaille <akim@epita.fr>
862 * src/Makefile.am (bison.simple): Fix the awk program: quote only
863 the file name, not the whole `#line LINE FILE'.
865 2000-03-17 Akim Demaille <akim@epita.fr>
867 On syntax errors, report the token on which we choked.
869 * src/bison.s1 (yyparse): In the label yyerrlab, when
870 YYERROR_VERBOSE, add yychar in msg.
872 2000-03-17 Akim Demaille <akim@epita.fr>
874 * src/reader.c (copy_at): New function.
875 (copy_guard): Use it.
876 (copy_action): Use it.
878 2000-03-17 Akim Demaille <akim@epita.fr>
880 Be kind to translators, save some useless translations.
882 * src/main.c (banner): New function.
883 (fatal_banner): Use it.
884 (warn_banner): Use it.
886 2000-03-17 Akim Demaille <akim@epita.fr>
888 * src/reader.c (copy_definition): Use copy_string and
889 copy_comment. Removed now unused `match', `ended',
891 (copy_comment, copy_string): Moved, to be visible from
894 2000-03-17 Akim Demaille <akim@epita.fr>
896 * src/reader.c (copy_string): Declare `static inline'. No
897 problems with inline, since it is checked by configure.
898 (copy_comment): Likewise.
900 2000-03-17 Akim Demaille <akim@epita.fr>
902 * src/reader.c (packsymbols): Formatting changes.
904 2000-03-17 Akim Demaille <akim@epita.fr>
906 * src/reader.c (copy_comment): New function, factored out from:
907 (copy_action): Use it. Removed now unused `match', `ended',
909 (copy_guard): Likewise.
911 2000-03-17 Akim Demaille <akim@epita.fr>
913 * src/reader.c (copy_string): New function, factored out from:
914 (copy_action): Use it.
915 (copy_guard): Likewise.
917 2000-03-17 Akim Demaille <akim@epita.fr>
919 Change the handling of @s so that they behave exactly like $s.
920 There is now a pseudo variable @$ (readble and writable), location
921 of the lhs of the rule (by default ranging from the location of
922 the first symbol of the rhs, to the location of the last symbol,
923 or, if the rhs is empty, YYLLOC).
925 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
927 (yyparse): When providing a default semantic action, provide a
928 default location action.
929 (after the $): No longer change `*YYLSP', just stack YYLOC the
930 same way you stack YYVAL.
931 * src/reader.c (read_declarations): Use warns.
932 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
933 (copy_action, case '@'): Likewise.
934 Use a standard error message, to save useless work from
937 2000-03-17 Akim Demaille <akim@epita.fr>
939 * src/bison.s1: Formatting and cosmetics changes.
940 * src/reader.c: Likewise.
941 Update the Copyright notice.
943 2000-03-17 Akim Demaille <akim@epita.fr>
945 * src/bison.s1 (#line): All set to `#line' only, since the
946 Makefile now handles them.
948 2000-03-16 Akim Demaille <akim@epita.fr>
950 * src/output.c (output_rule_data): Output the documentation of
952 (Copyright notice): Update.
955 2000-03-16 Akim Demaille <akim@epita.fr>
957 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
958 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
959 One `#if YYDEBUG' remains, since it uses variables which are
960 defined only if `YYDEBUG != 0'.
962 2000-03-16 Akim Demaille <akim@epita.fr>
964 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
965 and related variables so that the similarities are highlighted.
967 2000-03-16 Akim Demaille <akim@epita.fr>
969 * src/bison.s1: Properly indent CPP directives.
971 2000-03-16 Akim Demaille <akim@epita.fr>
973 * src/bison.s1: Properly indent the `alloca' CPP section.
975 2000-03-16 Akim Demaille <akim@epita.fr>
977 Do not hard code values of directories in `configure.in'.
978 Update the `configure' tool chain.
980 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
982 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
983 (AC_OUTPUT): Add m4/Makefile.
984 Bump to bison 1.28a, 1.29 has never been released.
985 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
986 handled via src/Makefile.am.
987 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
988 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
990 * Makefile.am (SUBDIRS): Add m4.
991 (ACLOCAL_AM_FLAGS): New variable.
992 (AUTOMAKE_OPTIONS): Add check-news.
993 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
994 the proper line number and file name.
995 (DEFS): Propagate the location of bison library files and of the
997 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
999 * acinclude.m4: Remove, replaced by the directory m4.
1000 * m4/Makefile.am (EXTRA_DIST): New variable.
1001 * m4/gettext.m4: New file, from the fileutils.
1002 * m4/lcmessage.m4: Likewise
1003 * m4/progtest.m4: Likewise.
1004 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
1006 2000-03-10 Akim Demaille <akim@epita.fr>
1009 Formatting changes of various comments.
1010 Respect the GNU coding standards at various places.
1011 Don't use `_()' when no translation is needed.
1013 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1016 OS/2 honors TMPDIR environment variable.
1018 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1020 * doc/bison.texinfo: Tweaked spelling and grammar.
1022 Removed reference to price of printed copy.
1023 Mention BISON_SIMPLE and BISON_HAIRY.
1025 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1027 * configure.in, NEWS:
1028 Bison 1.29 released.
1030 1999-10-27 Jesse Thilo <jthilo@gnu.org>
1032 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
1033 Added reference card.
1035 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1037 * po/ru.po: Added Russian translation.
1039 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1041 * configure.in: Added Russian translation.
1043 1999-07-06 Jesse Thilo <jthilo@gnu.org>
1045 * configure.in, NEWS, README:
1046 Released version 1.28.
1048 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1051 Squashed redefinition warning on some systems.
1053 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
1054 Have configure build version string instead of relying on ANSI string
1057 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1059 * po/POTFILES.in: Got rid of version.c.
1061 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1063 * acconfig.h, configure.in:
1064 Have configure build version string instead of relying on ANSI string
1067 1999-06-08 Jesse Thilo <jthilo@gnu.org>
1070 Dropped mention of `+' for long-named options.
1072 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1074 * src/files.c: Added <unistd.h> for unlink().
1076 * src/Makefile.am, src/system.h:
1079 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1081 * README: Added a FAQ list.
1083 * configure.in, acconfig.h:
1086 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1088 * doc/FAQ, doc/Makefile.am:
1091 1999-05-19 Jesse Thilo <jthilo@gnu.org>
1093 * src/alloc.h, src/symtab.h, src/version.c:
1094 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1096 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1098 * src/.cvsignore, src/Makefile.am:
1099 Reorganized: sources in `src', documentation in `doc'.
1101 * src/lex.c (literalchar):
1102 fixed the code for escaping double quotes (thanks
1105 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1107 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1108 Adjusted paths to reflect directory reorganization.
1110 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1112 * doc/.cvsignore, doc/Makefile.am:
1113 Reorganized: sources in `src', documentation in `doc'.
1115 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1118 Updated AC_INIT file to reflect directory reorganization.
1120 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1121 Reorganized: sources in `src', documentation in `doc'.
1123 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1126 Don't declare calloc() and realloc() if not necessary.
1128 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1130 * configure.in, acconfig.h, acinclude.m4:
1131 Don't declare calloc() and realloc() if not necessary.
1133 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1135 * po/.cvsignore: Added i18n support.
1137 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1139 * acconfig.h, configure.in, Makefile.am:
1142 1999-03-22 Jesse Thilo <jthilo@gnu.org>
1144 * src/bison.s1: Fixed #line numbers.
1146 1999-03-15 Jesse Thilo <jthilo@gnu.org>
1148 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1149 Added PO files from Translation Project.
1151 1999-03-03 Jesse Thilo <jthilo@gnu.org>
1154 Added support for non-ANSI compilers (ansi2knr).
1156 1999-02-16 Jesse Thilo <jthilo@gnu.org>
1158 * configure.in: Bumped version number to 1.27.
1161 Added `bison.simple' to list of files removed by `make distclean'.
1163 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1165 * src/files.c, src/files.h:
1166 Defined locations of parser files in config.h instead of Makefile.
1168 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1170 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1171 Defined locations of parser files in config.h instead of Makefile.
1173 1999-02-09 Jesse Thilo <jthilo@gnu.org>
1176 Removed inappropriate use of $< macro.
1178 1999-02-05 Jesse Thilo <jthilo@gnu.org>
1180 * po/Makefile.in.in, po/POTFILES.in:
1181 Add `po' directory skeleton.
1183 1999-01-27 Jesse Thilo <jthilo@gnu.org>
1185 * README: Document help-bison list.
1187 * configure.in: Add check for mkstemp().
1189 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1191 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1192 Hush a few compiler warnings.
1195 Add tryclose(), which verifies that fclose was successful.
1196 Hush a couple of compiler warnings.
1198 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1200 * Makefile.am, OChangeLog:
1201 ChangeLog is now automatically generated. Include the old version as
1204 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1206 * 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:
1209 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1211 * doc/bison.texinfo: Fix formatting glitch.
1213 * doc/bison.texinfo: Update FSF address.
1215 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1217 * acconfig.h: Update FSF address.
1219 1999-01-08 Jesse Thilo <jthilo@gnu.org>
1222 Don't define PACKAGE here, since config.h defines it.
1224 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1226 * src/reader.c: Update copyright date.
1229 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1230 favor of output directly to stderr (avoids buffer overruns).
1232 * src/reader.c: Some checks for premature EOF.
1234 * 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:
1235 Use prototypes if the compiler understands them.
1237 * src/files.c: Honor TMPDIR on Unix hosts.
1238 Use prototypes if the compiler understands them.
1241 Fix a couple of buffer overrun bugs.
1242 Use prototypes if the compiler understands them.
1244 * src/system.h: Include unistd.h and ctype.h.
1245 Use #ifdef instead of #if for NLS symbols.
1247 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1249 * doc/bison.texinfo:
1250 Delete comment "consider using @set for edition number, etc..." since
1251 we now are doing so.
1253 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1256 Use prototypes if the compiler understands them.
1258 * NEWS: Document 1.26 highlights.
1260 * Makefile.am: Require Automake 1.3 or later.
1263 Use prototypes if the compiler understands them.
1265 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1268 Use VERSION symbol from automake for version number.
1270 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1272 * acconfig.h, configure.in, version.cin:
1273 Use VERSION symbol from automake for version number.
1275 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1278 Distribute original version of simple parser (bison.s1), not built
1279 version (bison.simple).
1281 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1283 * doc/bison.texinfo: Add info dir entry.
1285 * doc/bison.texinfo:
1286 Let automake put version number into documentation.
1288 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1290 * src/bison.cld, src/build.com, src/vmshlp.mar:
1291 Add non-RCS files from /gd/gnu/bison.
1293 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1296 Document the BISON_HAIRY and BISON_SIMPLE variables.
1298 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1300 * src/version.c: Build version.c automatically.
1303 Fix token numbering (used to start at 258, not 257).
1305 * src/system.h: Include config.h.
1307 * src/getargs.c: Update bug report address.
1309 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1310 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1312 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1315 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1317 * configure.in, version.cin:
1318 Build version.c automatically.
1320 * AUTHORS: Add AUTHORS file.
1322 * README: Update bug report address.
1325 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1327 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1330 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1332 * doc/bison.texinfo: Clean up some formatting.
1334 1998-05-05 Richard Stallman <rms@gnu.org>
1336 * doc/bison.texinfo:
1337 Explain better why to make a pure parser.
1339 1998-01-05 Richard Stallman <rms@gnu.org>
1341 * src/files.c (openfiles):
1342 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1343 find a temporary directory, if possible. Do not unlink files while
1346 1997-08-25 Richard Stallman <rms@gnu.org>
1348 * src/reader.c (stack_offset;):
1349 Change some warni to warns.
1351 * src/lex.c (literalchar): Use warns, not warni.
1353 1997-06-28 Richard Stallman <rms@gnu.org>
1355 * src/bison.s1: Add a Bison version comment.
1357 * src/main.c (fatal, warn, berror):
1360 1997-06-28 Richard Stallman <rms@gnu.org>
1362 * Makefile.in (bison_version): New variable.
1363 (dist): Use that variable.
1364 (bison.s1): Substitute the Bison version into bison.simple.
1366 * bison.simple: Add a Bison version comment.
1368 1997-06-18 Richard Stallman <rms@gnu.org>
1370 * src/main.c (fatal, warn, berror):
1371 Make error messages standard.
1372 (toomany): Improve error message text.
1374 * 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:
1375 new.h renamed to alloc.h.
1377 1997-06-18 Richard Stallman <rms@gnu.org>
1379 * Makefile.in: new.h renamed to alloc.h.
1381 1997-05-24 Richard Stallman <rms@gnu.org>
1383 * src/lex.c (literalchar):
1384 Fix the code for escaping \, " and '.
1386 (lex): Avoid trouble when there are many chars
1387 to discard in a char literal with just several chars in it.
1389 1997-05-17 Richard Stallman <rms@gnu.org>
1392 Use malloc, if using alloca is troublesome.
1393 (YYSTACK_USE_ALLOCA): New flag macro.
1394 Define it for some systems and compilers.
1395 (YYSTACK_ALLOC): New macro.
1396 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1397 If it was malloc'd, free it.
1399 1997-05-17 Richard Stallman <rms@gnu.org>
1402 Use malloc, if using alloca is troublesome.
1403 (YYSTACK_USE_ALLOCA): New flag macro.
1404 Define it for some systems and compilers.
1405 (YYSTACK_ALLOC): New macro.
1406 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1407 If it was malloc'd, free it.
1409 1997-04-23 Richard Stallman <rms@gnu.org>
1412 (alloca) [__hpux]: Always define as __builtin_alloca.
1414 1997-04-23 Richard Stallman <rms@gnu.org>
1417 (alloca) [__hpux]: Always define as __builtin_alloca.
1419 1997-04-22 Richard Stallman <rms@gnu.org>
1422 [__hpux]: Include alloca.h (right for HPUX 10)
1423 instead of declaring alloca (right for HPUX 9).
1425 * src/bison.s1 (__yy_memcpy):
1426 Declare arg `count' as unsigned int.
1427 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1429 1997-04-22 Richard Stallman <rms@gnu.org>
1432 [__hpux]: Include alloca.h (right for HPUX 10)
1433 instead of declaring alloca (right for HPUX 9).
1435 * bison.simple (__yy_memcpy):
1436 Declare arg `count' as unsigned int.
1437 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1439 1997-01-03 Richard Stallman <rms@gnu.org>
1441 * src/allocate.c: [__STDC__ or _MSC_VER]:
1442 Declare calloc and realloc to return void *.
1444 1997-01-02 Richard Stallman <rms@gnu.org>
1447 [_MSC_VER]: Include stdlib.h and process.h.
1448 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
1450 * src/main.c (main): Return FAILURE as a value.
1451 (printable_version): Declare arg as int, not char.
1453 1997-01-02 Richard Stallman <rms@gnu.org>
1455 * Makefile.in (dist):
1456 Explicitly check for symlinks, and copy them.
1458 1996-12-19 Richard Stallman <rms@gnu.org>
1461 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
1463 1996-12-18 Paul Eggert <eggert@gnu.org>
1465 * src/bison.s1 (yyparse):
1466 If __GNUC__ and YYPARSE_PARAM are both defined,
1467 declare yyparse to have a void * argument.
1469 1996-12-18 Paul Eggert <eggert@gnu.org>
1471 * bison.simple (yyparse):
1472 If __GNUC__ and YYPARSE_PARAM are both defined,
1473 declare yyparse to have a void * argument.
1475 1996-12-17 Richard Stallman <rms@gnu.org>
1477 * src/reduce.c (nbits): Add some casts.
1479 1996-08-12 Richard Stallman <rms@gnu.org>
1481 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
1483 1996-08-12 Richard Stallman <rms@gnu.org>
1485 * bison.simple: Test _MSDOS as well as _MSDOS_.
1487 1996-07-31 Richard Stallman <rms@gnu.org>
1490 [__sun && __i386]: Include alloca.h.
1492 1996-07-31 Richard Stallman <rms@gnu.org>
1495 [__sun && __i386]: Include alloca.h.
1497 1996-07-30 Richard Stallman <rms@gnu.org>
1499 * src/bison.s1: Comment change.
1501 * src/bison.s1: Test _MSDOS_, not MSDOS.
1503 1996-07-30 Richard Stallman <rms@gnu.org>
1505 * bison.simple: Comment change.
1507 * bison.simple: Test _MSDOS_, not MSDOS.
1509 1996-06-01 Richard Stallman <rms@gnu.org>
1511 * 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:
1512 Insert `_' macro around many string constants.
1515 Insert `_' macro around many string constants.
1517 (main): Call setlocale, bindtextdomain and textdomain.
1519 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
1520 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
1521 [ENABLE_NLS]: Include libintl.h.
1522 [ENABLE_NLS] (gettext): Define.
1523 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
1524 (N_, PACKAGE, LOCALEDIR): New macros.
1526 1996-06-01 Richard Stallman <rms@gnu.org>
1528 * POTFILES.in: New file.
1530 * Makefile.in (allocate.o):
1531 Define target explicitly.
1533 * Makefile.in (CFLAGS): Set to @CFLAGS@.
1534 (LDFLAGS): Set to @LDFLAGS@.
1535 (configure): Run autoconf only if preceding `cd' succeeds.
1536 (bison.s1): Redirect output to temporary file then move the
1537 temporary to the target, rather than redirecting directly to bison.s1.
1538 (clean): Remove config.status and config.log.
1539 (distclean): Don't remove config.status here.
1541 1996-05-12 Richard Stallman <rms@gnu.org>
1544 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1546 1996-05-12 Richard Stallman <rms@gnu.org>
1549 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1551 1996-05-11 Richard Stallman <rms@gnu.org>
1553 * src/bison.s1 (__yy_memcpy):
1554 Really reorder the args, as was supposedly done on Feb 14 1995.
1555 (yyparse): Calls changed accordingly.
1557 1996-05-11 Richard Stallman <rms@gnu.org>
1559 * Makefile.in (dist): Don't use $(srcdir).
1561 * bison.simple (__yy_memcpy):
1562 Really reorder the args, as was supposedly done on Feb 14 1995.
1563 (yyparse): Calls changed accordingly.
1565 1996-01-27 Richard Stallman <rms@gnu.org>
1567 * src/output.c (output_rule_data):
1568 Test YYERROR_VERBOSE in the conditional
1569 around the definition of ttyname.
1571 1995-12-29 Richard Stallman <rms@gnu.org>
1574 Fix line numbers in #line commands.
1576 1995-12-29 Richard Stallman <rms@gnu.org>
1579 Fix line numbers in #line commands.
1581 1995-12-27 Richard Stallman <rms@gnu.org>
1583 * src/bison.s1 (YYPARSE_PARAM_DECL):
1584 In C++, make it always null.
1585 (YYPARSE_PARAM_ARG): New macro.
1586 (yyparse): Use YYPARSE_PARAM_ARG.
1588 1995-12-27 Richard Stallman <rms@gnu.org>
1590 * bison.simple (YYPARSE_PARAM_DECL):
1591 In C++, make it always null.
1592 (YYPARSE_PARAM_ARG): New macro.
1593 (yyparse): Use YYPARSE_PARAM_ARG.
1595 1995-11-29 Richard Stallman <rms@gnu.org>
1597 * doc/bison.texinfo:
1598 Describe literal string tokens, %raw, %no_lines, %token_table.
1600 1995-11-29 Daniel Hagerty <hag@gnu.org>
1602 * doc/bison.texinfo: Fixed update date
1604 1995-10-16 Richard Stallman <rms@gnu.org>
1606 * src/version.c: Version 1.25.
1608 1995-10-16 Richard Stallman <rms@gnu.org>
1610 * NEWS: *** empty log message ***
1612 1995-10-16 Richard Stallman <rms@gnu.org>
1614 * doc/bison.1, doc/bison.rnh:
1617 1995-10-15 Richard Stallman <rms@gnu.org>
1619 * src/vmsgetargs.c, src/getargs.c:
1620 Added -n, -k, and -raw switches.
1621 (noparserflag, toknumflag, rawtoknumflag): New variables.
1623 * src/symtab.h (SALIAS):
1624 New #define for adding aliases to %token.
1625 (struct bucket): Added `alias' field.
1627 * src/reduce.c (reduce_grammar):
1628 Revise error message.
1629 (print_notices): Remove final `.' from error message.
1631 * src/reader.c (reader_output_yylsp):
1633 (readgram): Use `#if 0' around code that accepted %command
1634 inside grammar rules: The documentation doesn't allow it,
1635 and it will fail since the %command processors scan for the next %.
1636 (parse_token_decl): Extended the %token
1637 declaration to allow a multi-character symbol as an alias.
1638 (parse_thong_decl): New function.
1639 (read_declarations): Added %thong declarations.
1640 (read_declarations): Handle NOOP to deal with allowing
1641 % declarations as another means to specify the flags.
1642 (readgram): Allow %prec prior to semantics embedded in a rule.
1643 (skip_to_char, read_declarations, copy_definition)
1644 (parse_token_decl, parse_start_decl, parse_type_decl)
1645 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
1646 (get_type_name, copy_guard, copy_action, readgram)
1647 (get_type, packsymbols): Revised most error messages.
1648 Changed `fatal' to `warnxxx' to avoid aborting for error.
1649 Revised and use multiple warnxxx functions to avoid using VARARGS1.
1650 (read_declarations): Improve the error message for
1651 an invalid character. Do not abort.
1652 (read_declarations, copy_guard, copy_action): Use
1653 printable_version to avoid unprintable characters in printed output.
1654 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
1655 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
1656 Allow the type of a non-terminal can be given
1657 more than once, as long as all specifications give the same type.
1660 (output_headers, output_trailers, output, output_gram)
1661 (output_rule_data): Implement noparserflag variable.
1662 Implement toknumflag variable.
1663 (output): Call reader_output_yylsp to output LTYPESTR.
1665 * src/main.c (main):
1666 If reader sees an error, don't process the grammar.
1667 (fatals): Updated to not use VARARGS1.
1668 (printable_version, int_to_string, warn, warni, warns, warnss)
1669 (warnsss): New error reporting functions. Avoid abort for error.
1672 Added THONG and NOOP for alias processing.
1673 Added SETOPT for the new code that allows setting options with %flags.
1676 Include getopt.h. Add some extern decls.
1677 (safegetc): New function to deal with EOF gracefully.
1678 (literalchar); new function to deal with reading \ escapes.
1679 (lex): Use literalchar.
1680 (lex): Implemented "..." tokens.
1681 (literalchar, lex, parse_percent_token): Made tokenbuffer
1682 always contain the token. This includes growing the token
1683 buffer while reading an integer.
1684 (parse_percent_token): Replaced if-else statement with percent_table.
1685 (parse_percent_token): Added % declarations as another
1686 way to specify the flags -n, -l, and -r. Also added hooks for
1687 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
1688 major changes to files.c.
1689 (lex) Retain in the incoming stream a character following
1691 (skip_white_space, lex): Revised most error messages
1692 and changed fatal to warn to avoid aborting.
1693 (percent_table): Added %thong declarations.
1695 * src/gram.h: Comment changes.
1697 * src/files.c (openfiles, open_extra_files, done):
1699 and actfile file. Handle noparserflag. Both for -n switch.
1701 * src/conflicts.c (resolve_sr_conflict):
1702 Remove use of alloca.
1704 1995-06-01 Jim Meyering <meyering@gnu.org>
1706 * doc/bison.texinfo: *** empty log message ***
1708 1995-05-06 Richard Stallman <rms@gnu.org>
1710 * src/bison.s1: Comment change.
1712 1995-05-06 Richard Stallman <rms@gnu.org>
1714 * bison.simple: Comment change.
1716 1995-05-03 Richard Stallman <rms@gnu.org>
1718 * src/version.c: Version now 1.24.
1720 * src/bison.s1: Change distribution terms.
1722 * src/version.c: Version now 1.23.
1724 1995-05-03 Richard Stallman <rms@gnu.org>
1726 * doc/bison.texinfo:
1727 Rewrite "Conditions for Using Bison".
1728 Update version to 1.24.
1730 1995-05-03 Richard Stallman <rms@gnu.org>
1732 * bison.simple: Change distribution terms.
1734 1995-02-23 Richard Stallman <rms@gnu.org>
1736 * src/files.c: Test __VMS_POSIX as well as VMS.
1738 1995-02-14 Jim Meyering <meyering@gnu.org>
1740 * src/bison.s1 (__yy_memcpy):
1741 Renamed from __yy_bcopy to avoid
1742 confusion. Reverse FROM and TO arguments to be consistent with
1745 1995-02-14 Jim Meyering <meyering@gnu.org>
1747 * bison.simple (__yy_memcpy):
1748 Renamed from __yy_bcopy to avoid
1749 confusion. Reverse FROM and TO arguments to be consistent with
1752 1994-11-10 David J. MacKenzie <djm@gnu.org>
1758 * Makefile.in (DISTFILES): Include NEWS.
1760 * Makefile.in (DISTFILES):
1761 Include install-sh, not install.sh.
1763 * configure.in: Update to Autoconf v2 macro names.
1765 1994-10-05 David J. MacKenzie <djm@gnu.org>
1767 * Makefile.in: fix typo
1769 * Makefile.in (prefix, exec_prefix):
1770 Let configure set them.
1772 1994-09-28 David J. MacKenzie <djm@gnu.org>
1774 * Makefile.in: Set datadir to $(prefix)/share.
1776 1994-09-15 Richard Stallman <rms@gnu.org>
1779 Update copyright notice and GPL version.
1781 1994-09-15 Richard Stallman <rms@gnu.org>
1784 Update copyright notice and GPL version.
1786 1994-07-12 Richard Stallman <rms@gnu.org>
1788 * src/reduce.c, src/reader.c:
1791 1994-05-05 David J. MacKenzie <djm@gnu.org>
1793 * Makefile.in: entered into RCS
1795 1994-03-26 Richard Stallman <rms@gnu.org>
1797 * src/bison.s1: entered into RCS
1799 1994-03-26 Richard Stallman <rms@gnu.org>
1801 * bison.simple: entered into RCS
1803 1994-03-25 Richard Stallman <rms@gnu.org>
1805 * src/main.c: entered into RCS
1807 1994-03-24 Richard Stallman <rms@gnu.org>
1809 * src/conflicts.c: entered into RCS
1811 1994-01-02 Richard Stallman <rms@gnu.org>
1813 * Makefile.in: *** empty log message ***
1815 1993-11-21 Richard Stallman <rms@gnu.org>
1817 * src/bison.s1: *** empty log message ***
1819 1993-11-21 Richard Stallman <rms@gnu.org>
1821 * doc/bison.texinfo: entered into RCS
1823 * doc/bison.texinfo: *** empty log message ***
1825 1993-11-21 Richard Stallman <rms@gnu.org>
1827 * bison.simple: *** empty log message ***
1829 1993-10-25 David J. MacKenzie <djm@gnu.org>
1831 * doc/bison.texinfo: *** empty log message ***
1833 1993-10-19 Richard Stallman <rms@gnu.org>
1835 * src/bison.s1: *** empty log message ***
1837 1993-10-19 Richard Stallman <rms@gnu.org>
1839 * bison.simple: *** empty log message ***
1841 1993-10-14 Richard Stallman <rms@gnu.org>
1843 * src/bison.s1: *** empty log message ***
1845 1993-10-14 Richard Stallman <rms@gnu.org>
1847 * bison.simple: *** empty log message ***
1849 1993-09-14 David J. MacKenzie <djm@gnu.org>
1851 * doc/bison.texinfo: *** empty log message ***
1853 1993-09-13 Noah Friedman <friedman@gnu.org>
1855 * Makefile.in: *** empty log message ***
1857 1993-09-10 Richard Stallman <rms@gnu.org>
1859 * src/conflicts.c: *** empty log message ***
1861 * src/system.h: entered into RCS
1863 1993-09-10 Richard Stallman <rms@gnu.org>
1865 * doc/bison.1: entered into RCS
1867 1993-09-06 Noah Friedman <friedman@gnu.org>
1869 * src/version.c: entered into RCS
1871 1993-09-06 Noah Friedman <friedman@gnu.org>
1873 * Makefile.in: *** empty log message ***
1875 1993-07-30 David J. MacKenzie <djm@gnu.org>
1877 * Makefile.in: *** empty log message ***
1879 1993-07-24 Richard Stallman <rms@gnu.org>
1881 * src/bison.s1: *** empty log message ***
1883 1993-07-24 Richard Stallman <rms@gnu.org>
1885 * bison.simple: *** empty log message ***
1887 1993-07-08 David J. MacKenzie <djm@gnu.org>
1889 * Makefile.in: *** empty log message ***
1891 1993-07-04 Richard Stallman <rms@gnu.org>
1893 * src/bison.s1: *** empty log message ***
1895 1993-07-04 Richard Stallman <rms@gnu.org>
1897 * bison.simple: *** empty log message ***
1899 1993-06-26 David J. MacKenzie <djm@gnu.org>
1901 * src/getargs.c: entered into RCS
1903 1993-06-26 David J. MacKenzie <djm@gnu.org>
1905 * doc/bison.texinfo: *** empty log message ***
1907 * doc/bison.1: New file.
1909 1993-06-25 Richard Stallman <rms@gnu.org>
1911 * src/getargs.c: New file.
1913 1993-06-16 Richard Stallman <rms@gnu.org>
1915 * src/bison.s1: *** empty log message ***
1917 1993-06-16 Richard Stallman <rms@gnu.org>
1919 * bison.simple: *** empty log message ***
1921 1993-06-03 Richard Stallman <rms@gnu.org>
1923 * src/bison.s1: New file.
1925 1993-06-03 Richard Stallman <rms@gnu.org>
1927 * doc/bison.texinfo: *** empty log message ***
1929 1993-06-03 Richard Stallman <rms@gnu.org>
1931 * bison.simple: New file.
1933 1993-05-19 Richard Stallman <rms@gnu.org>
1935 * doc/bison.texinfo: New file.
1937 1993-05-07 Noah Friedman <friedman@gnu.org>
1939 * Makefile.in: *** empty log message ***
1941 1993-04-28 Noah Friedman <friedman@gnu.org>
1943 * src/reader.c: *** empty log message ***
1945 1993-04-23 Noah Friedman <friedman@gnu.org>
1947 * src/alloc.h: entered into RCS
1949 1993-04-20 David J. MacKenzie <djm@gnu.org>
1951 * src/version.c: *** empty log message ***
1953 * src/files.c, src/allocate.c:
1956 * src/reader.c: *** empty log message ***
1958 * src/lex.c: entered into RCS
1960 * src/conflicts.c: New file.
1962 * src/symtab.c: entered into RCS
1964 * src/alloc.h: New file.
1966 * src/LR0.c: entered into RCS
1968 1993-04-18 Noah Friedman <friedman@gnu.org>
1970 * src/reader.c: New file.
1972 * src/version.c: *** empty log message ***
1974 1993-04-18 Noah Friedman <friedman@gnu.org>
1976 * Makefile.in: *** empty log message ***
1978 1993-04-17 Noah Friedman <friedman@gnu.org>
1980 * Makefile.in: *** empty log message ***
1982 1993-04-15 Richard Stallman <rms@gnu.org>
1984 * src/main.c, src/files.c:
1987 1993-04-15 Noah Friedman <friedman@gnu.org>
1989 * configure.in: entered into RCS
1991 * configure.in: *** empty log message ***
1993 * configure.in: New file.
1995 1993-04-14 Richard Stallman <rms@gnu.org>
1997 * Makefile.in: New file.
1999 1993-04-13 Richard Stallman <rms@gnu.org>
2001 * src/version.c: New file.
2003 1993-03-25 Richard Stallman <rms@gnu.org>
2005 * src/output.c: entered into RCS
2007 1992-09-25 Richard Stallman <rms@gnu.org>
2009 * configure.bat: entered into RCS
2011 1992-06-22 Richard Stallman <rms@gnu.org>
2013 * src/vmsgetargs.c: entered into RCS
2015 1992-06-22 Richard Stallman <rms@gnu.org>
2017 * doc/bison.rnh: entered into RCS
2019 1992-04-20 David J. MacKenzie <djm@gnu.org>
2021 * README: entered into RCS
2023 1992-01-22 Richard Stallman <rms@gnu.org>
2025 * src/machine.h: entered into RCS
2027 1991-12-21 Richard Stallman <rms@gnu.org>
2029 * src/lalr.c, src/closure.c:
2032 1991-12-20 Richard Stallman <rms@gnu.org>
2034 * src/state.h: entered into RCS
2036 1991-12-18 Richard Stallman <rms@gnu.org>
2038 * src/print.c, src/nullable.c, src/derives.c:
2041 1991-11-03 David J. MacKenzie <djm@gnu.org>
2043 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
2046 1988-09-09 Richard Stallman <rms@gnu.org>
2048 * src/bison.hairy: entered into RCS
2050 1987-12-16 Richard Stallman <rms@gnu.org>
2052 * REFERENCES: entered into RCS