1 2001-01-19 Akim Demaille <akim@epita.fr>
3 Get rid of the ad hoc handling of token_buffer in the scanner: use
6 * src/lex.c (token_obstack): New.
7 (init_lex): Initialize it. No longer call...
8 (grow_token_buffer): this. Remove it.
9 Adjust all the places which used it to use the obstack.
11 2001-01-19 Akim Demaille <akim@epita.fr>
13 * src/lex.h: Rename all the tokens:
14 s/\bENDFILE\b/tok_eof/g;
15 s/\bIDENTIFIER\b/tok_identifier/g;
17 Let them be enums, not #define, to ease debugging.
20 2001-01-18 Akim Demaille <akim@epita.fr>
22 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
23 * src/lex.c (maxtoken, grow_token_buffer): Static.
25 2001-01-18 Akim Demaille <akim@epita.fr>
27 Since we now use obstacks, more % directives can be enabled.
29 * src/lex.c (percent_table): Also accept `%yacc',
30 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
32 Handle the actions for `%semantic_parser' and `%pure_parser' here,
33 instead of returning a token.
34 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
35 * src/reader.c (read_declarations): Adjust.
36 * src/files.c (open_files): Don't call `compute_base_names', don't
37 compute `attrsfile' since they depend upon data which might be
38 *in* the input file now.
39 (output_files): Do it here.
40 * src/output.c (output_headers): Document the fact that this patch
41 introduces a guaranteed SEGV for semantic parsers.
42 * doc/bison.texinfo: Document them.
43 * tests/suite.at: Exercise these %options.
45 2000-12-20 Akim Demaille <akim@epita.fr>
47 Also handle the output file (--verbose) with obstacks.
49 * files.c (foutput): Remove.
50 (output_obstack): New.
51 Adjust all dependencies.
52 * src/conflicts.c: Return a string.
53 * src/system.h (obstack_grow_string): Rename as...
54 (obstack_sgrow): this. Be ready to work with non literals.
55 (obstack_fgrow4): New.
57 2000-12-20 Akim Demaille <akim@epita.fr>
59 * src/files.c (open_files): Fix the computation of short_base_name
60 in the case of `-o foo.tab.c'.
62 2000-12-20 Akim Demaille <akim@epita.fr>
64 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
65 (copy_dollar): Now that everything uses obstacks, get rid of the
68 2000-12-20 Akim Demaille <akim@epita.fr>
70 * src/files.c (open_files): Actually the `.output' file is based
71 on the short_base_name, not base_name.
72 * tests/suite.at (Checking output file names): Adjust.
74 2000-12-20 Akim Demaille <akim@epita.fr>
76 * src/bison.s1: Remove, we now use directly...
77 * src/bison.simple: this.
78 * src/Makefile.am: Use pkgdata instead of data.
80 2000-12-20 Akim Demaille <akim@epita.fr>
82 * src/files.c (guard_obstack): New.
83 (open_files): Initialize it.
84 (output_files): Dump it...
85 * src/files.h: Export it.
86 * src/reader.c (copy_guard): Use it.
88 2000-12-19 Akim Demaille <akim@epita.fr>
90 * src/files.c (outfile, defsfile, actfile): Removed as global
92 (open_files): Don't compute them.
93 (output_files): Adjust.
94 (base_name, short_base_name): Be global.
97 2000-12-19 Akim Demaille <akim@epita.fr>
99 * src/files.c (strsuffix): New.
100 (stringappend): Be just like strcat but allocate.
101 (base_names): Eve out from open_files.
102 Try to simplify the rather hairy computation of base_name and
104 (open_files): Use it.
105 * tests/suite.at (Checking output file names): New test.
107 2000-12-19 Akim Demaille <akim@epita.fr>
109 * src/system.h (obstack_grow_literal_string): Rename as...
110 (obstack_grow_string): this.
111 * src/output.c (output_parser): Recognize `%% actions' instead of
113 * src/bison.s1: s/$/%% actions/.
114 * src/bison.hairy: Likewise.
116 2000-12-19 Akim Demaille <akim@epita.fr>
118 * src/output.c (output_parser): Compute the `#line' lines when
120 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
121 Suggested by Hans Aberg.
123 2000-12-19 Akim Demaille <akim@epita.fr>
125 Let the handling of the skeleton files be local to the procedures
128 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
130 (fparser, open_extra_files): Remove.
131 (open_files, output_files): Don't take care of fparser.
132 * src/files.h: Adjust.
133 * src/output.c (output_parser): Open and close the file to the
135 * src/reader.c (read_declarations): When %semantic_parser, open
138 2000-12-19 Akim Demaille <akim@epita.fr>
140 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
141 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
143 2000-12-19 Akim Demaille <akim@epita.fr>
145 * src/files.c (open_files): Yipee! We no longer need all the code
146 looking for `/tmp' since we have no tmp file.
148 2000-12-19 Akim Demaille <akim@epita.fr>
150 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
152 * src/files.c (open_files): Less dependency on MSDOS etc.
154 2000-12-14 Akim Demaille <akim@epita.fr>
156 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
157 Provide a default definition.
158 Use it when executing the default @ action.
159 * src/reader.c (reader_output_yylsp): No longer include
160 `timestamp' and `text' in the default YYLTYPE.
162 2000-12-12 Akim Demaille <akim@epita.fr>
164 * src/reader.c (copy_definition, parse_union_decl, copy_action)
165 (copy_guard): Quote the file names.
166 Reported by Laurent Mascherpa.
168 2000-12-12 Akim Demaille <akim@epita.fr>
170 * src/output.c (output_headers, output_program, output): Be sure
171 to escape special characters when outputting filenames.
172 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
173 (output_headers): Don't depend on them, Use ACTSTR.
175 2000-11-17 Akim Demaille <akim@epita.fr>
177 * lib/obstack.h: Formatting changes.
178 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
179 prevents type checking.
180 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
181 cast the value to (void *): assigning a `foo *' to a `void *'
183 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
184 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
187 2000-11-17 Akim Demaille <akim@epita.fr>
189 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
191 (suite.m4, regression.m4, calc.m4): these.
192 * tests/atgeneral.m4: Update from CVS Autoconf.
194 2000-11-17 Akim Demaille <akim@epita.fr>
196 * tests/regression.m4 (%union and --defines): New test,
197 demonstrating a current bug in the obstack implementation.
199 2000-11-17 Akim Demaille <akim@epita.fr>
201 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
203 Use them to declare the variables which are global or local to
206 2000-11-17 Akim Demaille <akim@epita.fr>
208 * acconfig.h: Remove, no longer used.
210 2000-11-07 Akim Demaille <akim@epita.fr>
212 * src: s/Copyright (C)/Copyright/g.
214 2000-11-07 Akim Demaille <akim@epita.fr>
216 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
218 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
220 2000-11-07 Akim Demaille <akim@epita.fr>
222 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
223 Merge in a single CPP if/else.
225 2000-11-07 Akim Demaille <akim@epita.fr>
227 * src/output.c (output): Remove useless variables.
228 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
229 argument `data' for consistency with the prototypes.
231 (obstack_copy, obstack_copy0): Rename the second argument as
232 `address' for consistency. Qualify it `const'.
233 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
234 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
235 `const' their input argument (`data' or `address').
236 Adjust the corresponding macros to include `const' in casts.
238 2000-11-03 Akim Demaille <akim@epita.fr>
240 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
241 s/PFILE1/BISON_HAIRY/.
244 2000-11-03 Akim Demaille <akim@epita.fr>
246 For some reason, this was not applied.
248 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
249 `unlink': it's no longer used.
251 2000-11-03 Akim Demaille <akim@epita.fr>
253 * src/files.c (skeleton_find): New function, eved out of...
254 (open_files, open_extra_files): here.
256 2000-11-03 Akim Demaille <akim@epita.fr>
260 * src/files.c (obstack_save): New function.
262 (output_files): this.
264 * src/main.c (main): Don't use `atexit' to register `done', since
265 it no longer has to remove tmp files, just call `output_files'
266 when there are no errors.
268 2000-11-02 Akim Demaille <akim@epita.fr>
270 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
271 `unlink': it's no longer used.
272 * src/files.h: Formatting changes.
274 2000-11-02 Akim Demaille <akim@epita.fr>
276 Remove the last uses of mktemp and unlink/delete.
278 * src/files.c (fdefines, ftable): Removed.
279 (defines_ostack, table_obstack): New.
280 Adjust dependencies of the former into uses of the latter.
281 * src/output.c (output_short_or_char_table, output_short_table):
282 Convert to using obstacks.
283 * src/reader.c (copy_comment2): Accept one FILE * and two
285 (output_token_defines, reader_output_yylsp): Use obstacks.
286 * src/system.h (obstack_fgrow3): New.
288 2000-11-01 Akim Demaille <akim@epita.fr>
290 Change each use of `fattrs' into a use of `attrs_obstack'.
292 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
293 * src/files.c (fattrs): Remove.
294 (attrs_obstack): New.
295 Adjust all dependencies.
296 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
298 2000-11-01 Akim Demaille <akim@epita.fr>
301 Change each use of `faction' into a use of `action_obstack'.
303 * lib/obstack.h, lib/obstack.c: New files.
304 * src/files.c (faction): Remove.
305 (action_obstack): New.
306 Adjust all dependencies.
308 2000-10-20 Akim Demaille <akim@epita.fr>
310 * lib/quote.h (PARAMS): New macro. Use it.
312 2000-10-16 Akim Demaille <akim@epita.fr>
314 * src/output.c (output_short_or_char_table): New function.
315 (output_short_table, output_token_translations): Use it.
316 (goto_actions): Use output_short_table.
318 2000-10-16 Akim Demaille <akim@epita.fr>
320 * src/symtab.c (bucket_new): New function.
323 * src/output.c (output_short_table): New argument to display the
324 comment associated with the table.
326 (output_gram): Use it.
327 (output_rule_data): Nicer output layout for YYTNAME.
329 2000-10-16 Akim Demaille <akim@epita.fr>
331 * src/lex.c (read_typename): New function.
333 * src/reader.c (copy_dollar): Likewise.
335 2000-10-16 Akim Demaille <akim@epita.fr>
337 * src/reader.c (copy_comment2): Expect the input stream to be on
338 the `/' which is suspected to open a comment, instead of being
339 called after `//' or `/*' was read.
340 (copy_comment, copy_definition, parse_union_decl, copy_action)
341 (copy_guard): Adjust.
343 2000-10-16 Akim Demaille <akim@epita.fr>
345 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
346 `read_signed_integer'.
348 2000-10-16 Akim Demaille <akim@epita.fr>
350 * src/reader.c (copy_dollar): New function.
351 (copy_guard, copy_action): Use it.
353 2000-10-16 Akim Demaille <akim@epita.fr>
355 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
356 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
357 New files, from Fileutils 4.0.27.
358 * src/main.c (printable_version): Remove.
359 * src/lex.c, src/reader.c: Use `quote'.
361 2000-10-04 Akim Demaille <akim@epita.fr>
363 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
365 2000-10-04 Akim Demaille <akim@epita.fr>
367 * doc/bison.texinfo: Various typos spotted by Neil Booth.
369 2000-10-04 Akim Demaille <akim@epita.fr>
371 When a literal string is used to define two different tokens,
372 `bison -v' segfaults.
373 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
375 * tests/regression.m4: New file.
376 Include the core of the sample provided by Piotr Gackiewicz.
377 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
380 2000-10-04 Akim Demaille <akim@epita.fr>
382 * src/reader.c (parse_expect_decl): Keep `count' within the size
386 2000-10-02 Paul Eggert <eggert@twinsun.com>
388 * bison.s1 (yyparse): Assign the default value
389 unconditionally, to avoid a GCC warning and make the parser a
392 2000-10-02 Akim Demaille <akim@epita.fr>
394 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
397 2000-10-02 Akim Demaille <akim@epita.fr>
399 * src/derives.c, src/print.c, src/reduce.c: To ease the
400 translation, move some `\n' out of the translated strings.
402 2000-10-02 Akim Demaille <akim@epita.fr>
404 The location tracking mechanism is precious for parse error
405 messages. Nevertheless, it is enabled only when `@n' is used in
406 the grammar, which is a different issue (you can use it in error
407 message, but not in the grammar per se). Therefore, there should
408 be another means to enable it.
410 * src/getargs.c (getargs): Support `--locations'.
412 * src/getargs.h (locationsflag): Export it.
413 * src/lex.c (percent_table): Support `%locations'.
414 * src/reader.c (yylsp_needed): Remove this variable, now replaced
415 with `locationsflag'.
416 * doc/bison.texinfo: Document `--locations' and `%locations'.
418 * tests/calc.m4: Test it.
420 For regularity of the names, replace each
421 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
422 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
423 In addition replace each `flag' with `_flag'.
425 2000-10-02 Akim Demaille <akim@epita.fr>
427 Also test parse error messages, including with YYERROR_VERBOSE.
429 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
431 Use it to check the computations.
432 Use it to check `nonassoc' is honored.
433 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
435 (_AT_CHECK_CALC): Adjust to this option.
436 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
438 2000-10-02 Akim Demaille <akim@epita.fr>
440 Test also `--verbose', `--defines' and `--name-prefix'. Testing
441 the latter demonstrates a flaw in the handling of non debugging
442 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
443 was used in order to simplify:
459 unfortunately this leads to a CPP conflict when
460 `--name-prefix=foo' is used since it produces `#define yydebug
463 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
464 (YYDPRINTF): New macro.
466 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
468 Also test `--verbose', `--defines' and `--name-prefix'.
470 2000-10-02 Akim Demaille <akim@epita.fr>
472 Improve the readability of the produced parsers.
474 * src/bison.s1: Formatting changes.
475 Improve the comment related to the `$' mark.
476 (yydefault): Don't fall through to `yyresume': `goto' there.
477 * src/output.c (output_parser): When the `$' is met, skip the end
479 New variable, `number_of_dollar_signs', to check there's exactly
480 one `$' in the parser skeleton.
482 2000-10-02 Akim Demaille <akim@epita.fr>
484 * lib/xstrdup.c: New file, from the fileutils.
485 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
486 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
487 instead of strlen + xmalloc + strcpy.
488 * src/symtab.c (copys): Remove, use xstrdup instead.
490 2000-10-02 Akim Demaille <akim@epita.fr>
492 * src/gram.h (associativity): New enum type which replaces the
493 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
494 `right_assoc', `left_assoc' and `non_assoc'.
495 Adjust all dependencies.
496 * src/reader.c: Formatting changes.
497 (LTYPESTR): Don't define it, use it as a literal in
498 `reader_output_yylsp'.
499 * src/symtab.h (symbol_class): New enum type which replaces the
500 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
501 `sunknown', `stoken and `snterm'.
503 2000-10-02 Akim Demaille <akim@epita.fr>
505 * src/getargs.c (fixed_outfiles): Rename as...
506 (yaccflag): for consistency and accuracy.
509 2000-10-02 Akim Demaille <akim@epita.fr>
511 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
512 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
513 difficult and introduced a lot of core dump. It turns out that
514 Bison used an implementation of `xmalloc' based on `calloc', and
515 at various places it does depend upon the initialization to 0. I
516 have not tried to isolate the pertinent places, and all the former
517 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
518 someone should address this issue.
520 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
521 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
524 * src/warshall.h: New file.
527 2000-10-02 Akim Demaille <akim@epita.fr>
529 Various anti-`extern in *.c' changes.
531 * src/system.h: Include `assert.h'.
533 2000-10-02 Akim Demaille <akim@epita.fr>
535 * src/state.h (nstates, final_state, first_state, first_shift)
536 (first_reduction): Move their exportation from here...
537 * src/LR0.h: to here.
539 * src/getargs.c (statisticsflag): New variable.
540 Add support for `--statistics'.
543 Remove a lot of now useless `extern' statements in most files.
545 2000-10-02 Akim Demaille <akim@epita.fr>
547 * src/LR0.h: New file.
550 2000-10-02 Akim Demaille <akim@epita.fr>
552 * src/print.h: New file.
554 * src/print.c: Formatting and ordering changes.
555 (verbose, terse): Replace with...
556 (print_results): this new function.
559 2000-10-02 Akim Demaille <akim@epita.fr>
561 * src/conflicts.c (conflict_report): New function.
562 (conflict_log, verbose_conflict_log): Replace with...
563 (print_conflicts): this function.
565 * src/conflicts.h: New file.
566 Propagate its inclusion.
568 2000-10-02 Akim Demaille <akim@epita.fr>
570 * src/nullable.h: New file.
571 Propagate its inclusion.
572 * src/nullable.c: Formatting changes.
574 2000-10-02 Akim Demaille <akim@epita.fr>
576 * src/reduce.h: New file.
577 Propagate its inclusion.
578 * src/reduce.c: Topological sort and other formatting changes.
579 (bool, TRUE, FALSE): Move their definition to...
580 * src/system.h: here.
582 2000-10-02 Akim Demaille <akim@epita.fr>
584 * src/files.c: Formatting changes.
585 (tryopen, tryclose, openfiles): Rename as...
586 (xfopen, xfclose, open_files): this.
587 (stringappend): static.
588 * src/files.h: Complete the list of exported symbols.
591 2000-10-02 Akim Demaille <akim@epita.fr>
593 * src/reader.h: New file.
594 Propagate its use instead of tedious list of `extern' and
596 * src/reader.c: Formatting changes, topological sort,
599 2000-10-02 Akim Demaille <akim@epita.fr>
601 * src/lex.h: Prototype `lex.c' exported functions.
602 * src/reader.c: Adjust.
603 * src/lex.c: Formatting changes.
604 (safegetc): Rename as...
607 2000-10-02 Akim Demaille <akim@epita.fr>
609 * src/lalr.h: New file.
610 Propagate its inclusion instead of prototypes and `extern'.
611 * src/lalr.c: Formatting changes, topological sorting etc.
613 2000-10-02 Akim Demaille <akim@epita.fr>
615 * src/output.c (token_actions): Introduce a temporary array,
616 YYDEFACT, that makes it possible for this function to use
619 2000-10-02 Akim Demaille <akim@epita.fr>
621 `user_toknums' is output as a `short[]' in `output.c', while it is
622 defined as a `int[]' in `reader.c'. For consistency with the
623 other output tables, `user_toknums' is now defined as a table of
626 * src/reader.c (user_toknums): Be a short table instead of an int
630 Factor the short table outputs.
632 * src/output.c (output_short_table): New function.
633 * src/output.c (output_gram, output_stos, output_rule_data)
634 (output_base, output_table, output_check): Use it.
636 2000-10-02 Akim Demaille <akim@epita.fr>
638 * src/output.c (output): Topological sort of the functions, in
639 order to get rid of the `static' prototypes.
640 No longer use `register'.
641 * src/output.h: New file.
642 Propagate its inclusion in files explicitly prototyping functions
645 2000-09-21 Akim Demaille <akim@epita.fr>
647 * src/atgeneral.m4: Update from Autoconf.
649 2000-09-21 Akim Demaille <akim@epita.fr>
651 * src/closure.h: New file.
652 * src/closure.c: Formatting changes, topological sort over the
653 functions, use of closure.h.
654 (initialize_closure, finalize_closure): Rename as...
655 (new_closure, free_closure): these. Adjust dependencies.
656 * src/LR0.c: Formatting changes, topological sort, use of
658 (initialize_states): Rename as...
660 * src/Makefile.am (noinst_HEADERS): Adjust.
662 2000-09-20 Akim Demaille <akim@epita.fr>
664 * src/acconfig.h: Don't protect config.h against multiple
667 * src/system.h: Define PARAMS.
668 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
669 purpose of config.h. system.h must not try to fix wrong
670 definitions in config.h.
672 2000-09-20 Akim Demaille <akim@epita.fr>
674 * src/derives.h: New file.
675 * src/main.c, src/derives.h: Use it.
677 * src/Makefile.am (noinst_HEADERS): Adjust.
679 2000-09-20 Akim Demaille <akim@epita.fr>
681 * tests/atgeneral.m4: Update from Autoconf.
682 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
683 (AT_CHECK_CALC): New macros.
684 Use these macros to test bison with options `', `--raw',
685 `--debug', `--yacc', `--yacc --debug'.
687 2000-09-19 Akim Demaille <akim@epita.fr>
689 * src/output.c: Formatting changes.
690 * src/machine.h: Remove, leaving its contents in...
691 * src/system.h: here.
693 Adjust all dependencies on stdio.h and machine.h.
694 * src/getargs.h: New file.
695 Let all `extern' declarations about getargs.c be replaced with
696 inclusion of `getargs.h'.
697 * src/Makefile.am (noinst_HEADERS): Adjust.
699 * tests/calc.m4 (yyin): Be initialized in main, not on the global
701 (yyerror): Returns void, not int.
702 * doc/bison.texinfo: Formatting changes.
704 2000-09-19 Akim Demaille <akim@epita.fr>
706 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
709 2000-09-18 Akim Demaille <akim@epita.fr>
711 * configure.in: Append WARNING_CFLAGS to CFLAGS.
712 * src/Makefile.am (INCLUDES): Don't.
713 Be ready to fetch headers in lib/.
715 2000-09-18 Akim Demaille <akim@epita.fr>
717 * doc/bison.texinfo: Update the copyright.
718 ANSIfy and GNUify the examples.
721 2000-09-18 Akim Demaille <akim@epita.fr>
723 First set of tests: use the `calc' example from the documentation.
725 * src/bison.s1 (yyparse): Condition the code using `yytname' which
726 is defined only when YYDEBUG is.
727 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
728 * src/files.c (tryopen, tryclose): Formatting changes.
729 Move to the top and be static.
730 * src/reader.c (read_signed_integer): Likewise.
731 * tests/calc.m4: New file.
732 * Makefile.am, suite.m4: Adjust.
733 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
735 2000-09-18 Akim Demaille <akim@epita.fr>
737 Add support for an Autotest test suite for Bison.
739 * m4/m4.m4, m4/atconfig.m4: New files.
740 * m4/Makefile.am (EXTRA_DIST): Adjust.
741 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
743 * src/getargs.c: Display a more standard --version message.
744 * src/reader.c (reader): Formatting changes.
745 No longer depend upon VERSION_STRING.
746 * configure.in: No longer use `dnl'.
747 Set up the test suite and the new directory `tests/.
748 (VERSION_STRING): Remove.
750 2000-04-14 Akim Demaille <akim@epita.fr>
752 * src/reader.c (copy_comment2): New function, same as former
753 `copy_comment', but outputs into two FILE *.
754 (copy_comment): Use it.
755 (parse_union_decl): Use it.
756 (get_type, parse_start_decl): Use the same `invalid' message.
757 (parse_start_decl, parse_union_decl): Use the same `multiple'
759 (parse_union_decl, copy_guard, copy_action): Use the same
761 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
763 2000-03-31 Akim Demaille <akim@epita.fr>
765 * src/files.c (tryopen, tryclose): Move to the top.
768 2000-03-31 Akim Demaille <akim@epita.fr>
770 * src/main.c (main): Don't call `done', exit does it.
772 2000-03-31 Akim Demaille <akim@epita.fr>
774 * allocate.c: s/return (foo)/return foo/.
777 * output.c: Likewise.
778 * reader.c: Likewise.
779 * symtab.c: Likewise.
780 * vmsgetargs.c: Likewise.
782 2000-03-31 Akim Demaille <akim@epita.fr>
784 Clean up the error reporting functions.
786 * src/report.c: New file.
787 * src/report.h: Likewise.
788 * src/Makefile.am: Adjust.
789 * m4/error.m4: New file.
790 * m4/Makefile.am: Adjust.
791 * configure.in (jm_PREREQ_ERROR): Call it.
792 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
794 (fatal, fatals): Remove. All callers use complain.c::fatal.
795 (warn, warni, warns, warnss, warnss): Remove. All callers use
796 complain.c::complain.
797 (toomany): Remove, use fatal instead.
798 * src/files.c (done): No argument, use complain_message_count.
799 * src/main.c (main): Register `done' to `atexit'.
801 * src/getargs.c (usage): More `fputs', less `fprintf'.
803 2000-03-28 Akim Demaille <akim@epita.fr>
805 * lib/: New directory.
806 * Makefile.am (SUBDIRS): Adjust.
807 * configure.in: Adjust.
808 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
810 * src/alloca.c: Moved to lib/.
811 * src/getopt.c: Likewise.
812 * src/getopt1.c: Likewise.
813 * src/getopt.h: Likewise.
814 * src/ansi2knr.c: Likewise.
815 * src/ansi2knr.1: Likewise.
816 * src/Makefile.am: Adjust.
817 * lib/Makefile.am: New file.
819 2000-03-28 Akim Demaille <akim@epita.fr>
821 * src/getargs.c (usage): Refresh the help message.
823 2000-03-17 Akim Demaille <akim@epita.fr>
825 * src/getopt1.c: Updated from textutils 2.0e
826 * src/getopt.c: Likewise.
827 * src/getopt.h: Likewise.
829 2000-03-17 Akim Demaille <akim@epita.fr>
831 * src/Makefile.am (bison.simple): Fix the awk program: quote only
832 the file name, not the whole `#line LINE FILE'.
834 2000-03-17 Akim Demaille <akim@epita.fr>
836 On syntax errors, report the token on which we choked.
838 * src/bison.s1 (yyparse): In the label yyerrlab, when
839 YYERROR_VERBOSE, add yychar in msg.
841 2000-03-17 Akim Demaille <akim@epita.fr>
843 * src/reader.c (copy_at): New function.
844 (copy_guard): Use it.
845 (copy_action): Use it.
847 2000-03-17 Akim Demaille <akim@epita.fr>
849 Be kind to translators, save some useless translations.
851 * src/main.c (banner): New function.
852 (fatal_banner): Use it.
853 (warn_banner): Use it.
855 2000-03-17 Akim Demaille <akim@epita.fr>
857 * src/reader.c (copy_definition): Use copy_string and
858 copy_comment. Removed now unused `match', `ended',
860 (copy_comment, copy_string): Moved, to be visible from
863 2000-03-17 Akim Demaille <akim@epita.fr>
865 * src/reader.c (copy_string): Declare `static inline'. No
866 problems with inline, since it is checked by configure.
867 (copy_comment): Likewise.
869 2000-03-17 Akim Demaille <akim@epita.fr>
871 * src/reader.c (packsymbols): Formatting changes.
873 2000-03-17 Akim Demaille <akim@epita.fr>
875 * src/reader.c (copy_comment): New function, factored out from:
876 (copy_action): Use it. Removed now unused `match', `ended',
878 (copy_guard): Likewise.
880 2000-03-17 Akim Demaille <akim@epita.fr>
882 * src/reader.c (copy_string): New function, factored out from:
883 (copy_action): Use it.
884 (copy_guard): Likewise.
886 2000-03-17 Akim Demaille <akim@epita.fr>
888 Change the handling of @s so that they behave exactly like $s.
889 There is now a pseudo variable @$ (readble and writable), location
890 of the lhs of the rule (by default ranging from the location of
891 the first symbol of the rhs, to the location of the last symbol,
892 or, if the rhs is empty, YYLLOC).
894 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
896 (yyparse): When providing a default semantic action, provide a
897 default location action.
898 (after the $): No longer change `*YYLSP', just stack YYLOC the
899 same way you stack YYVAL.
900 * src/reader.c (read_declarations): Use warns.
901 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
902 (copy_action, case '@'): Likewise.
903 Use a standard error message, to save useless work from
906 2000-03-17 Akim Demaille <akim@epita.fr>
908 * src/bison.s1: Formatting and cosmetics changes.
909 * src/reader.c: Likewise.
910 Update the Copyright notice.
912 2000-03-17 Akim Demaille <akim@epita.fr>
914 * src/bison.s1 (#line): All set to `#line' only, since the
915 Makefile now handles them.
917 2000-03-16 Akim Demaille <akim@epita.fr>
919 * src/output.c (output_rule_data): Output the documentation of
921 (Copyright notice): Update.
924 2000-03-16 Akim Demaille <akim@epita.fr>
926 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
927 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
928 One `#if YYDEBUG' remains, since it uses variables which are
929 defined only if `YYDEBUG != 0'.
931 2000-03-16 Akim Demaille <akim@epita.fr>
933 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
934 and related variables so that the similarities are highlighted.
936 2000-03-16 Akim Demaille <akim@epita.fr>
938 * src/bison.s1: Properly indent CPP directives.
940 2000-03-16 Akim Demaille <akim@epita.fr>
942 * src/bison.s1: Properly indent the `alloca' CPP section.
944 2000-03-16 Akim Demaille <akim@epita.fr>
946 Do not hard code values of directories in `configure.in'.
947 Update the `configure' tool chain.
949 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
951 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
952 (AC_OUTPUT): Add m4/Makefile.
953 Bump to bison 1.28a, 1.29 has never been released.
954 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
955 handled via src/Makefile.am.
956 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
957 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
959 * Makefile.am (SUBDIRS): Add m4.
960 (ACLOCAL_AM_FLAGS): New variable.
961 (AUTOMAKE_OPTIONS): Add check-news.
962 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
963 the proper line number and file name.
964 (DEFS): Propagate the location of bison library files and of the
966 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
968 * acinclude.m4: Remove, replaced by the directory m4.
969 * m4/Makefile.am (EXTRA_DIST): New variable.
970 * m4/gettext.m4: New file, from the fileutils.
971 * m4/lcmessage.m4: Likewise
972 * m4/progtest.m4: Likewise.
973 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
975 2000-03-10 Akim Demaille <akim@epita.fr>
978 Formatting changes of various comments.
979 Respect the GNU coding standards at various places.
980 Don't use `_()' when no translation is needed.
982 1999-12-13 Jesse Thilo <jthilo@gnu.org>
985 OS/2 honors TMPDIR environment variable.
987 1999-12-13 Jesse Thilo <jthilo@gnu.org>
989 * doc/bison.texinfo: Tweaked spelling and grammar.
991 Removed reference to price of printed copy.
992 Mention BISON_SIMPLE and BISON_HAIRY.
994 1999-12-13 Jesse Thilo <jthilo@gnu.org>
996 * configure.in, NEWS:
999 1999-10-27 Jesse Thilo <jthilo@gnu.org>
1001 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
1002 Added reference card.
1004 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1006 * po/ru.po: Added Russian translation.
1008 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1010 * configure.in: Added Russian translation.
1012 1999-07-06 Jesse Thilo <jthilo@gnu.org>
1014 * configure.in, NEWS, README:
1015 Released version 1.28.
1017 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1020 Squashed redefinition warning on some systems.
1022 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
1023 Have configure build version string instead of relying on ANSI string
1026 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1028 * po/POTFILES.in: Got rid of version.c.
1030 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1032 * acconfig.h, configure.in:
1033 Have configure build version string instead of relying on ANSI string
1036 1999-06-08 Jesse Thilo <jthilo@gnu.org>
1039 Dropped mention of `+' for long-named options.
1041 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1043 * src/files.c: Added <unistd.h> for unlink().
1045 * src/Makefile.am, src/system.h:
1048 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1050 * README: Added a FAQ list.
1052 * configure.in, acconfig.h:
1055 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1057 * doc/FAQ, doc/Makefile.am:
1060 1999-05-19 Jesse Thilo <jthilo@gnu.org>
1062 * src/alloc.h, src/symtab.h, src/version.c:
1063 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1065 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1067 * src/.cvsignore, src/Makefile.am:
1068 Reorganized: sources in `src', documentation in `doc'.
1070 * src/lex.c (literalchar):
1071 fixed the code for escaping double quotes (thanks
1074 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1076 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1077 Adjusted paths to reflect directory reorganization.
1079 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1081 * doc/.cvsignore, doc/Makefile.am:
1082 Reorganized: sources in `src', documentation in `doc'.
1084 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1087 Updated AC_INIT file to reflect directory reorganization.
1089 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1090 Reorganized: sources in `src', documentation in `doc'.
1092 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1095 Don't declare calloc() and realloc() if not necessary.
1097 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1099 * configure.in, acconfig.h, acinclude.m4:
1100 Don't declare calloc() and realloc() if not necessary.
1102 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1104 * po/.cvsignore: Added i18n support.
1106 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1108 * acconfig.h, configure.in, Makefile.am:
1111 1999-03-22 Jesse Thilo <jthilo@gnu.org>
1113 * src/bison.s1: Fixed #line numbers.
1115 1999-03-15 Jesse Thilo <jthilo@gnu.org>
1117 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1118 Added PO files from Translation Project.
1120 1999-03-03 Jesse Thilo <jthilo@gnu.org>
1123 Added support for non-ANSI compilers (ansi2knr).
1125 1999-02-16 Jesse Thilo <jthilo@gnu.org>
1127 * configure.in: Bumped version number to 1.27.
1130 Added `bison.simple' to list of files removed by `make distclean'.
1132 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1134 * src/files.c, src/files.h:
1135 Defined locations of parser files in config.h instead of Makefile.
1137 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1139 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1140 Defined locations of parser files in config.h instead of Makefile.
1142 1999-02-09 Jesse Thilo <jthilo@gnu.org>
1145 Removed inappropriate use of $< macro.
1147 1999-02-05 Jesse Thilo <jthilo@gnu.org>
1149 * po/Makefile.in.in, po/POTFILES.in:
1150 Add `po' directory skeleton.
1152 1999-01-27 Jesse Thilo <jthilo@gnu.org>
1154 * README: Document help-bison list.
1156 * configure.in: Add check for mkstemp().
1158 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1160 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1161 Hush a few compiler warnings.
1164 Add tryclose(), which verifies that fclose was successful.
1165 Hush a couple of compiler warnings.
1167 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1169 * Makefile.am, OChangeLog:
1170 ChangeLog is now automatically generated. Include the old version as
1173 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1175 * 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:
1178 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1180 * doc/bison.texinfo: Fix formatting glitch.
1182 * doc/bison.texinfo: Update FSF address.
1184 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1186 * acconfig.h: Update FSF address.
1188 1999-01-08 Jesse Thilo <jthilo@gnu.org>
1191 Don't define PACKAGE here, since config.h defines it.
1193 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1195 * src/reader.c: Update copyright date.
1198 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1199 favor of output directly to stderr (avoids buffer overruns).
1201 * src/reader.c: Some checks for premature EOF.
1203 * 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:
1204 Use prototypes if the compiler understands them.
1206 * src/files.c: Honor TMPDIR on Unix hosts.
1207 Use prototypes if the compiler understands them.
1210 Fix a couple of buffer overrun bugs.
1211 Use prototypes if the compiler understands them.
1213 * src/system.h: Include unistd.h and ctype.h.
1214 Use #ifdef instead of #if for NLS symbols.
1216 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1218 * doc/bison.texinfo:
1219 Delete comment "consider using @set for edition number, etc..." since
1220 we now are doing so.
1222 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1225 Use prototypes if the compiler understands them.
1227 * NEWS: Document 1.26 highlights.
1229 * Makefile.am: Require Automake 1.3 or later.
1232 Use prototypes if the compiler understands them.
1234 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1237 Use VERSION symbol from automake for version number.
1239 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1241 * acconfig.h, configure.in, version.cin:
1242 Use VERSION symbol from automake for version number.
1244 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1247 Distribute original version of simple parser (bison.s1), not built
1248 version (bison.simple).
1250 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1252 * doc/bison.texinfo: Add info dir entry.
1254 * doc/bison.texinfo:
1255 Let automake put version number into documentation.
1257 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1259 * src/bison.cld, src/build.com, src/vmshlp.mar:
1260 Add non-RCS files from /gd/gnu/bison.
1262 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1265 Document the BISON_HAIRY and BISON_SIMPLE variables.
1267 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1269 * src/version.c: Build version.c automatically.
1272 Fix token numbering (used to start at 258, not 257).
1274 * src/system.h: Include config.h.
1276 * src/getargs.c: Update bug report address.
1278 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1279 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1281 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1284 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1286 * configure.in, version.cin:
1287 Build version.c automatically.
1289 * AUTHORS: Add AUTHORS file.
1291 * README: Update bug report address.
1294 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1296 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1299 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1301 * doc/bison.texinfo: Clean up some formatting.
1303 1998-05-05 Richard Stallman <rms@gnu.org>
1305 * doc/bison.texinfo:
1306 Explain better why to make a pure parser.
1308 1998-01-05 Richard Stallman <rms@gnu.org>
1310 * src/files.c (openfiles):
1311 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1312 find a temporary directory, if possible. Do not unlink files while
1315 1997-08-25 Richard Stallman <rms@gnu.org>
1317 * src/reader.c (stack_offset;):
1318 Change some warni to warns.
1320 * src/lex.c (literalchar): Use warns, not warni.
1322 1997-06-28 Richard Stallman <rms@gnu.org>
1324 * src/bison.s1: Add a Bison version comment.
1326 * src/main.c (fatal, warn, berror):
1329 1997-06-28 Richard Stallman <rms@gnu.org>
1331 * Makefile.in (bison_version): New variable.
1332 (dist): Use that variable.
1333 (bison.s1): Substitute the Bison version into bison.simple.
1335 * bison.simple: Add a Bison version comment.
1337 1997-06-18 Richard Stallman <rms@gnu.org>
1339 * src/main.c (fatal, warn, berror):
1340 Make error messages standard.
1341 (toomany): Improve error message text.
1343 * 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:
1344 new.h renamed to alloc.h.
1346 1997-06-18 Richard Stallman <rms@gnu.org>
1348 * Makefile.in: new.h renamed to alloc.h.
1350 1997-05-24 Richard Stallman <rms@gnu.org>
1352 * src/lex.c (literalchar):
1353 Fix the code for escaping \, " and '.
1355 (lex): Avoid trouble when there are many chars
1356 to discard in a char literal with just several chars in it.
1358 1997-05-17 Richard Stallman <rms@gnu.org>
1361 Use malloc, if using alloca is troublesome.
1362 (YYSTACK_USE_ALLOCA): New flag macro.
1363 Define it for some systems and compilers.
1364 (YYSTACK_ALLOC): New macro.
1365 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1366 If it was malloc'd, free it.
1368 1997-05-17 Richard Stallman <rms@gnu.org>
1371 Use malloc, if using alloca is troublesome.
1372 (YYSTACK_USE_ALLOCA): New flag macro.
1373 Define it for some systems and compilers.
1374 (YYSTACK_ALLOC): New macro.
1375 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1376 If it was malloc'd, free it.
1378 1997-04-23 Richard Stallman <rms@gnu.org>
1381 (alloca) [__hpux]: Always define as __builtin_alloca.
1383 1997-04-23 Richard Stallman <rms@gnu.org>
1386 (alloca) [__hpux]: Always define as __builtin_alloca.
1388 1997-04-22 Richard Stallman <rms@gnu.org>
1391 [__hpux]: Include alloca.h (right for HPUX 10)
1392 instead of declaring alloca (right for HPUX 9).
1394 * src/bison.s1 (__yy_memcpy):
1395 Declare arg `count' as unsigned int.
1396 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1398 1997-04-22 Richard Stallman <rms@gnu.org>
1401 [__hpux]: Include alloca.h (right for HPUX 10)
1402 instead of declaring alloca (right for HPUX 9).
1404 * bison.simple (__yy_memcpy):
1405 Declare arg `count' as unsigned int.
1406 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1408 1997-01-03 Richard Stallman <rms@gnu.org>
1410 * src/allocate.c: [__STDC__ or _MSC_VER]:
1411 Declare calloc and realloc to return void *.
1413 1997-01-02 Richard Stallman <rms@gnu.org>
1416 [_MSC_VER]: Include stdlib.h and process.h.
1417 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
1419 * src/main.c (main): Return FAILURE as a value.
1420 (printable_version): Declare arg as int, not char.
1422 1997-01-02 Richard Stallman <rms@gnu.org>
1424 * Makefile.in (dist):
1425 Explicitly check for symlinks, and copy them.
1427 1996-12-19 Richard Stallman <rms@gnu.org>
1430 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
1432 1996-12-18 Paul Eggert <eggert@gnu.org>
1434 * src/bison.s1 (yyparse):
1435 If __GNUC__ and YYPARSE_PARAM are both defined,
1436 declare yyparse to have a void * argument.
1438 1996-12-18 Paul Eggert <eggert@gnu.org>
1440 * bison.simple (yyparse):
1441 If __GNUC__ and YYPARSE_PARAM are both defined,
1442 declare yyparse to have a void * argument.
1444 1996-12-17 Richard Stallman <rms@gnu.org>
1446 * src/reduce.c (nbits): Add some casts.
1448 1996-08-12 Richard Stallman <rms@gnu.org>
1450 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
1452 1996-08-12 Richard Stallman <rms@gnu.org>
1454 * bison.simple: Test _MSDOS as well as _MSDOS_.
1456 1996-07-31 Richard Stallman <rms@gnu.org>
1459 [__sun && __i386]: Include alloca.h.
1461 1996-07-31 Richard Stallman <rms@gnu.org>
1464 [__sun && __i386]: Include alloca.h.
1466 1996-07-30 Richard Stallman <rms@gnu.org>
1468 * src/bison.s1: Comment change.
1470 * src/bison.s1: Test _MSDOS_, not MSDOS.
1472 1996-07-30 Richard Stallman <rms@gnu.org>
1474 * bison.simple: Comment change.
1476 * bison.simple: Test _MSDOS_, not MSDOS.
1478 1996-06-01 Richard Stallman <rms@gnu.org>
1480 * 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:
1481 Insert `_' macro around many string constants.
1484 Insert `_' macro around many string constants.
1486 (main): Call setlocale, bindtextdomain and textdomain.
1488 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
1489 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
1490 [ENABLE_NLS]: Include libintl.h.
1491 [ENABLE_NLS] (gettext): Define.
1492 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
1493 (N_, PACKAGE, LOCALEDIR): New macros.
1495 1996-06-01 Richard Stallman <rms@gnu.org>
1497 * POTFILES.in: New file.
1499 * Makefile.in (allocate.o):
1500 Define target explicitly.
1502 * Makefile.in (CFLAGS): Set to @CFLAGS@.
1503 (LDFLAGS): Set to @LDFLAGS@.
1504 (configure): Run autoconf only if preceding `cd' succeeds.
1505 (bison.s1): Redirect output to temporary file then move the
1506 temporary to the target, rather than redirecting directly to bison.s1.
1507 (clean): Remove config.status and config.log.
1508 (distclean): Don't remove config.status here.
1510 1996-05-12 Richard Stallman <rms@gnu.org>
1513 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1515 1996-05-12 Richard Stallman <rms@gnu.org>
1518 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1520 1996-05-11 Richard Stallman <rms@gnu.org>
1522 * src/bison.s1 (__yy_memcpy):
1523 Really reorder the args, as was supposedly done on Feb 14 1995.
1524 (yyparse): Calls changed accordingly.
1526 1996-05-11 Richard Stallman <rms@gnu.org>
1528 * Makefile.in (dist): Don't use $(srcdir).
1530 * bison.simple (__yy_memcpy):
1531 Really reorder the args, as was supposedly done on Feb 14 1995.
1532 (yyparse): Calls changed accordingly.
1534 1996-01-27 Richard Stallman <rms@gnu.org>
1536 * src/output.c (output_rule_data):
1537 Test YYERROR_VERBOSE in the conditional
1538 around the definition of ttyname.
1540 1995-12-29 Richard Stallman <rms@gnu.org>
1543 Fix line numbers in #line commands.
1545 1995-12-29 Richard Stallman <rms@gnu.org>
1548 Fix line numbers in #line commands.
1550 1995-12-27 Richard Stallman <rms@gnu.org>
1552 * src/bison.s1 (YYPARSE_PARAM_DECL):
1553 In C++, make it always null.
1554 (YYPARSE_PARAM_ARG): New macro.
1555 (yyparse): Use YYPARSE_PARAM_ARG.
1557 1995-12-27 Richard Stallman <rms@gnu.org>
1559 * bison.simple (YYPARSE_PARAM_DECL):
1560 In C++, make it always null.
1561 (YYPARSE_PARAM_ARG): New macro.
1562 (yyparse): Use YYPARSE_PARAM_ARG.
1564 1995-11-29 Richard Stallman <rms@gnu.org>
1566 * doc/bison.texinfo:
1567 Describe literal string tokens, %raw, %no_lines, %token_table.
1569 1995-11-29 Daniel Hagerty <hag@gnu.org>
1571 * doc/bison.texinfo: Fixed update date
1573 1995-10-16 Richard Stallman <rms@gnu.org>
1575 * src/version.c: Version 1.25.
1577 1995-10-16 Richard Stallman <rms@gnu.org>
1579 * NEWS: *** empty log message ***
1581 1995-10-16 Richard Stallman <rms@gnu.org>
1583 * doc/bison.1, doc/bison.rnh:
1586 1995-10-15 Richard Stallman <rms@gnu.org>
1588 * src/vmsgetargs.c, src/getargs.c:
1589 Added -n, -k, and -raw switches.
1590 (noparserflag, toknumflag, rawtoknumflag): New variables.
1592 * src/symtab.h (SALIAS):
1593 New #define for adding aliases to %token.
1594 (struct bucket): Added `alias' field.
1596 * src/reduce.c (reduce_grammar):
1597 Revise error message.
1598 (print_notices): Remove final `.' from error message.
1600 * src/reader.c (reader_output_yylsp):
1602 (readgram): Use `#if 0' around code that accepted %command
1603 inside grammar rules: The documentation doesn't allow it,
1604 and it will fail since the %command processors scan for the next %.
1605 (parse_token_decl): Extended the %token
1606 declaration to allow a multi-character symbol as an alias.
1607 (parse_thong_decl): New function.
1608 (read_declarations): Added %thong declarations.
1609 (read_declarations): Handle NOOP to deal with allowing
1610 % declarations as another means to specify the flags.
1611 (readgram): Allow %prec prior to semantics embedded in a rule.
1612 (skip_to_char, read_declarations, copy_definition)
1613 (parse_token_decl, parse_start_decl, parse_type_decl)
1614 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
1615 (get_type_name, copy_guard, copy_action, readgram)
1616 (get_type, packsymbols): Revised most error messages.
1617 Changed `fatal' to `warnxxx' to avoid aborting for error.
1618 Revised and use multiple warnxxx functions to avoid using VARARGS1.
1619 (read_declarations): Improve the error message for
1620 an invalid character. Do not abort.
1621 (read_declarations, copy_guard, copy_action): Use
1622 printable_version to avoid unprintable characters in printed output.
1623 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
1624 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
1625 Allow the type of a non-terminal can be given
1626 more than once, as long as all specifications give the same type.
1629 (output_headers, output_trailers, output, output_gram)
1630 (output_rule_data): Implement noparserflag variable.
1631 Implement toknumflag variable.
1632 (output): Call reader_output_yylsp to output LTYPESTR.
1634 * src/main.c (main):
1635 If reader sees an error, don't process the grammar.
1636 (fatals): Updated to not use VARARGS1.
1637 (printable_version, int_to_string, warn, warni, warns, warnss)
1638 (warnsss): New error reporting functions. Avoid abort for error.
1641 Added THONG and NOOP for alias processing.
1642 Added SETOPT for the new code that allows setting options with %flags.
1645 Include getopt.h. Add some extern decls.
1646 (safegetc): New function to deal with EOF gracefully.
1647 (literalchar); new function to deal with reading \ escapes.
1648 (lex): Use literalchar.
1649 (lex): Implemented "..." tokens.
1650 (literalchar, lex, parse_percent_token): Made tokenbuffer
1651 always contain the token. This includes growing the token
1652 buffer while reading an integer.
1653 (parse_percent_token): Replaced if-else statement with percent_table.
1654 (parse_percent_token): Added % declarations as another
1655 way to specify the flags -n, -l, and -r. Also added hooks for
1656 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
1657 major changes to files.c.
1658 (lex) Retain in the incoming stream a character following
1660 (skip_white_space, lex): Revised most error messages
1661 and changed fatal to warn to avoid aborting.
1662 (percent_table): Added %thong declarations.
1664 * src/gram.h: Comment changes.
1666 * src/files.c (openfiles, open_extra_files, done):
1668 and actfile file. Handle noparserflag. Both for -n switch.
1670 * src/conflicts.c (resolve_sr_conflict):
1671 Remove use of alloca.
1673 1995-06-01 Jim Meyering <meyering@gnu.org>
1675 * doc/bison.texinfo: *** empty log message ***
1677 1995-05-06 Richard Stallman <rms@gnu.org>
1679 * src/bison.s1: Comment change.
1681 1995-05-06 Richard Stallman <rms@gnu.org>
1683 * bison.simple: Comment change.
1685 1995-05-03 Richard Stallman <rms@gnu.org>
1687 * src/version.c: Version now 1.24.
1689 * src/bison.s1: Change distribution terms.
1691 * src/version.c: Version now 1.23.
1693 1995-05-03 Richard Stallman <rms@gnu.org>
1695 * doc/bison.texinfo:
1696 Rewrite "Conditions for Using Bison".
1697 Update version to 1.24.
1699 1995-05-03 Richard Stallman <rms@gnu.org>
1701 * bison.simple: Change distribution terms.
1703 1995-02-23 Richard Stallman <rms@gnu.org>
1705 * src/files.c: Test __VMS_POSIX as well as VMS.
1707 1995-02-14 Jim Meyering <meyering@gnu.org>
1709 * src/bison.s1 (__yy_memcpy):
1710 Renamed from __yy_bcopy to avoid
1711 confusion. Reverse FROM and TO arguments to be consistent with
1714 1995-02-14 Jim Meyering <meyering@gnu.org>
1716 * bison.simple (__yy_memcpy):
1717 Renamed from __yy_bcopy to avoid
1718 confusion. Reverse FROM and TO arguments to be consistent with
1721 1994-11-10 David J. MacKenzie <djm@gnu.org>
1727 * Makefile.in (DISTFILES): Include NEWS.
1729 * Makefile.in (DISTFILES):
1730 Include install-sh, not install.sh.
1732 * configure.in: Update to Autoconf v2 macro names.
1734 1994-10-05 David J. MacKenzie <djm@gnu.org>
1736 * Makefile.in: fix typo
1738 * Makefile.in (prefix, exec_prefix):
1739 Let configure set them.
1741 1994-09-28 David J. MacKenzie <djm@gnu.org>
1743 * Makefile.in: Set datadir to $(prefix)/share.
1745 1994-09-15 Richard Stallman <rms@gnu.org>
1748 Update copyright notice and GPL version.
1750 1994-09-15 Richard Stallman <rms@gnu.org>
1753 Update copyright notice and GPL version.
1755 1994-07-12 Richard Stallman <rms@gnu.org>
1757 * src/reduce.c, src/reader.c:
1760 1994-05-05 David J. MacKenzie <djm@gnu.org>
1762 * Makefile.in: entered into RCS
1764 1994-03-26 Richard Stallman <rms@gnu.org>
1766 * src/bison.s1: entered into RCS
1768 1994-03-26 Richard Stallman <rms@gnu.org>
1770 * bison.simple: entered into RCS
1772 1994-03-25 Richard Stallman <rms@gnu.org>
1774 * src/main.c: entered into RCS
1776 1994-03-24 Richard Stallman <rms@gnu.org>
1778 * src/conflicts.c: entered into RCS
1780 1994-01-02 Richard Stallman <rms@gnu.org>
1782 * Makefile.in: *** empty log message ***
1784 1993-11-21 Richard Stallman <rms@gnu.org>
1786 * src/bison.s1: *** empty log message ***
1788 1993-11-21 Richard Stallman <rms@gnu.org>
1790 * doc/bison.texinfo: entered into RCS
1792 * doc/bison.texinfo: *** empty log message ***
1794 1993-11-21 Richard Stallman <rms@gnu.org>
1796 * bison.simple: *** empty log message ***
1798 1993-10-25 David J. MacKenzie <djm@gnu.org>
1800 * doc/bison.texinfo: *** empty log message ***
1802 1993-10-19 Richard Stallman <rms@gnu.org>
1804 * src/bison.s1: *** empty log message ***
1806 1993-10-19 Richard Stallman <rms@gnu.org>
1808 * bison.simple: *** empty log message ***
1810 1993-10-14 Richard Stallman <rms@gnu.org>
1812 * src/bison.s1: *** empty log message ***
1814 1993-10-14 Richard Stallman <rms@gnu.org>
1816 * bison.simple: *** empty log message ***
1818 1993-09-14 David J. MacKenzie <djm@gnu.org>
1820 * doc/bison.texinfo: *** empty log message ***
1822 1993-09-13 Noah Friedman <friedman@gnu.org>
1824 * Makefile.in: *** empty log message ***
1826 1993-09-10 Richard Stallman <rms@gnu.org>
1828 * src/conflicts.c: *** empty log message ***
1830 * src/system.h: entered into RCS
1832 1993-09-10 Richard Stallman <rms@gnu.org>
1834 * doc/bison.1: entered into RCS
1836 1993-09-06 Noah Friedman <friedman@gnu.org>
1838 * src/version.c: entered into RCS
1840 1993-09-06 Noah Friedman <friedman@gnu.org>
1842 * Makefile.in: *** empty log message ***
1844 1993-07-30 David J. MacKenzie <djm@gnu.org>
1846 * Makefile.in: *** empty log message ***
1848 1993-07-24 Richard Stallman <rms@gnu.org>
1850 * src/bison.s1: *** empty log message ***
1852 1993-07-24 Richard Stallman <rms@gnu.org>
1854 * bison.simple: *** empty log message ***
1856 1993-07-08 David J. MacKenzie <djm@gnu.org>
1858 * Makefile.in: *** empty log message ***
1860 1993-07-04 Richard Stallman <rms@gnu.org>
1862 * src/bison.s1: *** empty log message ***
1864 1993-07-04 Richard Stallman <rms@gnu.org>
1866 * bison.simple: *** empty log message ***
1868 1993-06-26 David J. MacKenzie <djm@gnu.org>
1870 * src/getargs.c: entered into RCS
1872 1993-06-26 David J. MacKenzie <djm@gnu.org>
1874 * doc/bison.texinfo: *** empty log message ***
1876 * doc/bison.1: New file.
1878 1993-06-25 Richard Stallman <rms@gnu.org>
1880 * src/getargs.c: New file.
1882 1993-06-16 Richard Stallman <rms@gnu.org>
1884 * src/bison.s1: *** empty log message ***
1886 1993-06-16 Richard Stallman <rms@gnu.org>
1888 * bison.simple: *** empty log message ***
1890 1993-06-03 Richard Stallman <rms@gnu.org>
1892 * src/bison.s1: New file.
1894 1993-06-03 Richard Stallman <rms@gnu.org>
1896 * doc/bison.texinfo: *** empty log message ***
1898 1993-06-03 Richard Stallman <rms@gnu.org>
1900 * bison.simple: New file.
1902 1993-05-19 Richard Stallman <rms@gnu.org>
1904 * doc/bison.texinfo: New file.
1906 1993-05-07 Noah Friedman <friedman@gnu.org>
1908 * Makefile.in: *** empty log message ***
1910 1993-04-28 Noah Friedman <friedman@gnu.org>
1912 * src/reader.c: *** empty log message ***
1914 1993-04-23 Noah Friedman <friedman@gnu.org>
1916 * src/alloc.h: entered into RCS
1918 1993-04-20 David J. MacKenzie <djm@gnu.org>
1920 * src/version.c: *** empty log message ***
1922 * src/files.c, src/allocate.c:
1925 * src/reader.c: *** empty log message ***
1927 * src/lex.c: entered into RCS
1929 * src/conflicts.c: New file.
1931 * src/symtab.c: entered into RCS
1933 * src/alloc.h: New file.
1935 * src/LR0.c: entered into RCS
1937 1993-04-18 Noah Friedman <friedman@gnu.org>
1939 * src/reader.c: New file.
1941 * src/version.c: *** empty log message ***
1943 1993-04-18 Noah Friedman <friedman@gnu.org>
1945 * Makefile.in: *** empty log message ***
1947 1993-04-17 Noah Friedman <friedman@gnu.org>
1949 * Makefile.in: *** empty log message ***
1951 1993-04-15 Richard Stallman <rms@gnu.org>
1953 * src/main.c, src/files.c:
1956 1993-04-15 Noah Friedman <friedman@gnu.org>
1958 * configure.in: entered into RCS
1960 * configure.in: *** empty log message ***
1962 * configure.in: New file.
1964 1993-04-14 Richard Stallman <rms@gnu.org>
1966 * Makefile.in: New file.
1968 1993-04-13 Richard Stallman <rms@gnu.org>
1970 * src/version.c: New file.
1972 1993-03-25 Richard Stallman <rms@gnu.org>
1974 * src/output.c: entered into RCS
1976 1992-09-25 Richard Stallman <rms@gnu.org>
1978 * configure.bat: entered into RCS
1980 1992-06-22 Richard Stallman <rms@gnu.org>
1982 * src/vmsgetargs.c: entered into RCS
1984 1992-06-22 Richard Stallman <rms@gnu.org>
1986 * doc/bison.rnh: entered into RCS
1988 1992-04-20 David J. MacKenzie <djm@gnu.org>
1990 * README: entered into RCS
1992 1992-01-22 Richard Stallman <rms@gnu.org>
1994 * src/machine.h: entered into RCS
1996 1991-12-21 Richard Stallman <rms@gnu.org>
1998 * src/lalr.c, src/closure.c:
2001 1991-12-20 Richard Stallman <rms@gnu.org>
2003 * src/state.h: entered into RCS
2005 1991-12-18 Richard Stallman <rms@gnu.org>
2007 * src/print.c, src/nullable.c, src/derives.c:
2010 1991-11-03 David J. MacKenzie <djm@gnu.org>
2012 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
2015 1988-09-09 Richard Stallman <rms@gnu.org>
2017 * src/bison.hairy: entered into RCS
2019 1987-12-16 Richard Stallman <rms@gnu.org>
2021 * REFERENCES: entered into RCS