1 2001-08-03 Akim Demaille <akim@epita.fr>
3 * src/reader.c (readgram): Display hidden chars in error messages.
5 2001-08-03 Akim Demaille <akim@epita.fr>
7 Update to gettext 0.10.39.
9 2001-08-03 Akim Demaille <akim@epita.fr>
13 2001-08-01 Marc Autret <autret_m@epita.fr>
15 * doc/bison.texinfo: Update.
16 * doc/bison.1 (mandoc): Update.
17 * src/system.h (EXT_GUARD_C, EXT_STYPE_H): Remove .c and .h.
18 * src/files.c: Support output files extensions computing.
19 (src_extension): New static variable.
20 (header_extension): New static variable.
22 (get_extension_index): New function, gets the index of an extension
24 (compute_exts_from_gf): New function, computes extensions from the
25 grammar file extension.
26 (compute_exts_from_src): New functions, computes extensions from the
27 C source file extension, file given by ``-o'' option.
28 (compute_base_names): Update.
29 (output_files): Update.
31 2001-08-01 Robert Anisko <anisko_r@epita.fr>
33 * doc/bison.texi: Document @$.
34 (Locations): New section.
36 2001-07-18 Akim Demaille <akim@epita.fr>
38 * Makefile.maint, GNUmakefile: New, from Autoconf 2.52.
39 * config/prev-version.txt, config/move-if-change: New.
40 * Makefile.am: Adjust.
42 2001-07-08 Pascal Bart <pascal.bart@epita.fr>
44 * src/bison.simple (yyparse): Suppress warning `comparaison
45 between signed and unsigned'.
47 2001-07-05 Pascal Bart <pascal.bart@epita.fr>
49 * src/getargs.h (raw_flag): Remove.
50 * src/getargs.c: Die on `-r'/`--raw'.
51 * src/lex.c (parse_percent_token): Die on `%raw'.
52 * src/reader.c (output_token_defines): Suppress call to `raw_flag'.
53 * tests/calc.at: Suppress test with option `--raw'.
55 2001-07-14 Akim Demaille <akim@epita.fr>
58 * configure.in: Require Autoconf 2.50.
59 Update to gettext 0.10.38.
61 2001-03-16 Akim Demaille <akim@epita.fr>
63 * doc/bison.texinfo: ANSIfy the examples.
65 2001-03-16 Akim Demaille <akim@epita.fr>
67 * getargs.c (skeleton): New variable.
68 (longopts): --skeleton is a new option.
69 (shortopts, getargs): -S is a new option.
70 * getargs.h: Declare skeleton.
71 * output.c (output_parser): Use it.
73 2001-03-16 Akim Demaille <akim@epita.fr>
75 * m4/strerror_r.m4: New.
76 * m4/error.m4: Run AC_FUNC_STRERROR_R.
77 * lib/error.h, lib/error.c: Update.
79 2001-03-16 Akim Demaille <akim@epita.fr>
81 * src/getargs.c (longopts): Clean up.
83 2001-02-21 Akim Demaille <akim@epita.fr>
85 * src/reader.c (gensym): `gensym_count' is your own.
86 Use a static buf to create the symbol name, as token_buffer is no
89 2001-02-08 Akim Demaille <akim@epita.fr>
91 * src/conflicts.c (conflict_report): Be sure not to append to res
92 between two calls, which could happen if both first sprintf were
93 skipped, but not the first cp += strlen.
95 2001-02-08 Akim Demaille <akim@epita.fr>
97 * lib/memchr.c, lib/stpcpy.c, lib/strndup.c, lib/strnlen.c:
98 New, from fileutils 4.0.37.
99 * configure.in: Require Autoconf 2.49c. I took some time before
100 making this decision. This is the only way out for portability
101 issues in Bison, it would mean way too much duplicate effort to
102 import in Bison features implemented in 2.49c since 2.13.
103 AC_REPLACE_FUNCS and AC_CHECK_DECLS the functions above.
105 2001-02-02 Akim Demaille <akim@epita.fr>
107 * lib/malloc.c, lib/realloc.c: New, from the fileutils 4.0.37.
108 * lib/xalloc.h, lib/xmalloc.c: Update.
110 2001-01-19 Akim Demaille <akim@epita.fr>
112 Get rid of the ad hoc handling of token_buffer in the scanner: use
115 * src/lex.c (token_obstack): New.
116 (init_lex): Initialize it. No longer call...
117 (grow_token_buffer): this. Remove it.
118 Adjust all the places which used it to use the obstack.
120 2001-01-19 Akim Demaille <akim@epita.fr>
122 * src/lex.h: Rename all the tokens:
123 s/\bENDFILE\b/tok_eof/g;
124 s/\bIDENTIFIER\b/tok_identifier/g;
126 Let them be enums, not #define, to ease debugging.
129 2001-01-18 Akim Demaille <akim@epita.fr>
131 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
132 * src/lex.c (maxtoken, grow_token_buffer): Static.
134 2001-01-18 Akim Demaille <akim@epita.fr>
136 Since we now use obstacks, more % directives can be enabled.
138 * src/lex.c (percent_table): Also accept `%yacc',
139 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
141 Handle the actions for `%semantic_parser' and `%pure_parser' here,
142 instead of returning a token.
143 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
144 * src/reader.c (read_declarations): Adjust.
145 * src/files.c (open_files): Don't call `compute_base_names', don't
146 compute `attrsfile' since they depend upon data which might be
147 *in* the input file now.
148 (output_files): Do it here.
149 * src/output.c (output_headers): Document the fact that this patch
150 introduces a guaranteed SEGV for semantic parsers.
151 * doc/bison.texinfo: Document them.
152 * tests/suite.at: Exercise these %options.
154 2000-12-20 Akim Demaille <akim@epita.fr>
156 Also handle the output file (--verbose) with obstacks.
158 * files.c (foutput): Remove.
159 (output_obstack): New.
160 Adjust all dependencies.
161 * src/conflicts.c: Return a string.
162 * src/system.h (obstack_grow_string): Rename as...
163 (obstack_sgrow): this. Be ready to work with non literals.
164 (obstack_fgrow4): New.
166 2000-12-20 Akim Demaille <akim@epita.fr>
168 * src/files.c (open_files): Fix the computation of short_base_name
169 in the case of `-o foo.tab.c'.
171 2000-12-20 Akim Demaille <akim@epita.fr>
173 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
174 (copy_dollar): Now that everything uses obstacks, get rid of the
177 2000-12-20 Akim Demaille <akim@epita.fr>
179 * src/files.c (open_files): Actually the `.output' file is based
180 on the short_base_name, not base_name.
181 * tests/suite.at (Checking output file names): Adjust.
183 2000-12-20 Akim Demaille <akim@epita.fr>
185 * src/bison.s1: Remove, we now use directly...
186 * src/bison.simple: this.
187 * src/Makefile.am: Use pkgdata instead of data.
189 2000-12-20 Akim Demaille <akim@epita.fr>
191 * src/files.c (guard_obstack): New.
192 (open_files): Initialize it.
193 (output_files): Dump it...
194 * src/files.h: Export it.
195 * src/reader.c (copy_guard): Use it.
197 2000-12-19 Akim Demaille <akim@epita.fr>
199 * src/files.c (outfile, defsfile, actfile): Removed as global
201 (open_files): Don't compute them.
202 (output_files): Adjust.
203 (base_name, short_base_name): Be global.
206 2000-12-19 Akim Demaille <akim@epita.fr>
208 * src/files.c (strsuffix): New.
209 (stringappend): Be just like strcat but allocate.
210 (base_names): Eve out from open_files.
211 Try to simplify the rather hairy computation of base_name and
213 (open_files): Use it.
214 * tests/suite.at (Checking output file names): New test.
216 2000-12-19 Akim Demaille <akim@epita.fr>
218 * src/system.h (obstack_grow_literal_string): Rename as...
219 (obstack_grow_string): this.
220 * src/output.c (output_parser): Recognize `%% actions' instead of
222 * src/bison.s1: s/$/%% actions/.
223 * src/bison.hairy: Likewise.
225 2000-12-19 Akim Demaille <akim@epita.fr>
227 * src/output.c (output_parser): Compute the `#line' lines when
229 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
230 Suggested by Hans Aberg.
232 2000-12-19 Akim Demaille <akim@epita.fr>
234 Let the handling of the skeleton files be local to the procedures
237 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
239 (fparser, open_extra_files): Remove.
240 (open_files, output_files): Don't take care of fparser.
241 * src/files.h: Adjust.
242 * src/output.c (output_parser): Open and close the file to the
244 * src/reader.c (read_declarations): When %semantic_parser, open
247 2000-12-19 Akim Demaille <akim@epita.fr>
249 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
250 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
252 2000-12-19 Akim Demaille <akim@epita.fr>
254 * src/files.c (open_files): Yipee! We no longer need all the code
255 looking for `/tmp' since we have no tmp file.
257 2000-12-19 Akim Demaille <akim@epita.fr>
259 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
261 * src/files.c (open_files): Less dependency on MSDOS etc.
263 2000-12-14 Akim Demaille <akim@epita.fr>
265 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
266 Provide a default definition.
267 Use it when executing the default @ action.
268 * src/reader.c (reader_output_yylsp): No longer include
269 `timestamp' and `text' in the default YYLTYPE.
271 2000-12-12 Akim Demaille <akim@epita.fr>
273 * src/reader.c (copy_definition, parse_union_decl, copy_action)
274 (copy_guard): Quote the file names.
275 Reported by Laurent Mascherpa.
277 2000-12-12 Akim Demaille <akim@epita.fr>
279 * src/output.c (output_headers, output_program, output): Be sure
280 to escape special characters when outputting filenames.
281 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
282 (output_headers): Don't depend on them, Use ACTSTR.
284 2000-11-17 Akim Demaille <akim@epita.fr>
286 * lib/obstack.h: Formatting changes.
287 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
288 prevents type checking.
289 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
290 cast the value to (void *): assigning a `foo *' to a `void *'
292 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
293 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
296 2000-11-17 Akim Demaille <akim@epita.fr>
298 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
300 (suite.m4, regression.m4, calc.m4): these.
301 * tests/atgeneral.m4: Update from CVS Autoconf.
303 2000-11-17 Akim Demaille <akim@epita.fr>
305 * tests/regression.m4 (%union and --defines): New test,
306 demonstrating a current bug in the obstack implementation.
308 2000-11-17 Akim Demaille <akim@epita.fr>
310 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
312 Use them to declare the variables which are global or local to
315 2000-11-17 Akim Demaille <akim@epita.fr>
317 * acconfig.h: Remove, no longer used.
319 2000-11-07 Akim Demaille <akim@epita.fr>
321 * src: s/Copyright (C)/Copyright/g.
323 2000-11-07 Akim Demaille <akim@epita.fr>
325 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
327 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
329 2000-11-07 Akim Demaille <akim@epita.fr>
331 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
332 Merge in a single CPP if/else.
334 2000-11-07 Akim Demaille <akim@epita.fr>
336 * src/output.c (output): Remove useless variables.
337 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
338 argument `data' for consistency with the prototypes.
340 (obstack_copy, obstack_copy0): Rename the second argument as
341 `address' for consistency. Qualify it `const'.
342 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
343 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
344 `const' their input argument (`data' or `address').
345 Adjust the corresponding macros to include `const' in casts.
347 2000-11-03 Akim Demaille <akim@epita.fr>
349 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
350 s/PFILE1/BISON_HAIRY/.
353 2000-11-03 Akim Demaille <akim@epita.fr>
355 For some reason, this was not applied.
357 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
358 `unlink': it's no longer used.
360 2000-11-03 Akim Demaille <akim@epita.fr>
362 * src/files.c (skeleton_find): New function, eved out of...
363 (open_files, open_extra_files): here.
365 2000-11-03 Akim Demaille <akim@epita.fr>
369 * src/files.c (obstack_save): New function.
371 (output_files): this.
373 * src/main.c (main): Don't use `atexit' to register `done', since
374 it no longer has to remove tmp files, just call `output_files'
375 when there are no errors.
377 2000-11-02 Akim Demaille <akim@epita.fr>
379 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
380 `unlink': it's no longer used.
381 * src/files.h: Formatting changes.
383 2000-11-02 Akim Demaille <akim@epita.fr>
385 Remove the last uses of mktemp and unlink/delete.
387 * src/files.c (fdefines, ftable): Removed.
388 (defines_ostack, table_obstack): New.
389 Adjust dependencies of the former into uses of the latter.
390 * src/output.c (output_short_or_char_table, output_short_table):
391 Convert to using obstacks.
392 * src/reader.c (copy_comment2): Accept one FILE * and two
394 (output_token_defines, reader_output_yylsp): Use obstacks.
395 * src/system.h (obstack_fgrow3): New.
397 2000-11-01 Akim Demaille <akim@epita.fr>
399 Change each use of `fattrs' into a use of `attrs_obstack'.
401 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
402 * src/files.c (fattrs): Remove.
403 (attrs_obstack): New.
404 Adjust all dependencies.
405 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
407 2000-11-01 Akim Demaille <akim@epita.fr>
410 Change each use of `faction' into a use of `action_obstack'.
412 * lib/obstack.h, lib/obstack.c: New files.
413 * src/files.c (faction): Remove.
414 (action_obstack): New.
415 Adjust all dependencies.
417 2000-10-20 Akim Demaille <akim@epita.fr>
419 * lib/quote.h (PARAMS): New macro. Use it.
421 2000-10-16 Akim Demaille <akim@epita.fr>
423 * src/output.c (output_short_or_char_table): New function.
424 (output_short_table, output_token_translations): Use it.
425 (goto_actions): Use output_short_table.
427 2000-10-16 Akim Demaille <akim@epita.fr>
429 * src/symtab.c (bucket_new): New function.
432 * src/output.c (output_short_table): New argument to display the
433 comment associated with the table.
435 (output_gram): Use it.
436 (output_rule_data): Nicer output layout for YYTNAME.
438 2000-10-16 Akim Demaille <akim@epita.fr>
440 * src/lex.c (read_typename): New function.
442 * src/reader.c (copy_dollar): Likewise.
444 2000-10-16 Akim Demaille <akim@epita.fr>
446 * src/reader.c (copy_comment2): Expect the input stream to be on
447 the `/' which is suspected to open a comment, instead of being
448 called after `//' or `/*' was read.
449 (copy_comment, copy_definition, parse_union_decl, copy_action)
450 (copy_guard): Adjust.
452 2000-10-16 Akim Demaille <akim@epita.fr>
454 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
455 `read_signed_integer'.
457 2000-10-16 Akim Demaille <akim@epita.fr>
459 * src/reader.c (copy_dollar): New function.
460 (copy_guard, copy_action): Use it.
462 2000-10-16 Akim Demaille <akim@epita.fr>
464 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
465 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
466 New files, from Fileutils 4.0.27.
467 * src/main.c (printable_version): Remove.
468 * src/lex.c, src/reader.c: Use `quote'.
470 2000-10-04 Akim Demaille <akim@epita.fr>
472 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
474 2000-10-04 Akim Demaille <akim@epita.fr>
476 * doc/bison.texinfo: Various typos spotted by Neil Booth.
478 2000-10-04 Akim Demaille <akim@epita.fr>
480 When a literal string is used to define two different tokens,
481 `bison -v' segfaults.
482 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
484 * tests/regression.m4: New file.
485 Include the core of the sample provided by Piotr Gackiewicz.
486 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
489 2000-10-04 Akim Demaille <akim@epita.fr>
491 * src/reader.c (parse_expect_decl): Keep `count' within the size
495 2000-10-02 Paul Eggert <eggert@twinsun.com>
497 * bison.s1 (yyparse): Assign the default value
498 unconditionally, to avoid a GCC warning and make the parser a
501 2000-10-02 Akim Demaille <akim@epita.fr>
503 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
506 2000-10-02 Akim Demaille <akim@epita.fr>
508 * src/derives.c, src/print.c, src/reduce.c: To ease the
509 translation, move some `\n' out of the translated strings.
511 2000-10-02 Akim Demaille <akim@epita.fr>
513 The location tracking mechanism is precious for parse error
514 messages. Nevertheless, it is enabled only when `@n' is used in
515 the grammar, which is a different issue (you can use it in error
516 message, but not in the grammar per se). Therefore, there should
517 be another means to enable it.
519 * src/getargs.c (getargs): Support `--locations'.
521 * src/getargs.h (locationsflag): Export it.
522 * src/lex.c (percent_table): Support `%locations'.
523 * src/reader.c (yylsp_needed): Remove this variable, now replaced
524 with `locationsflag'.
525 * doc/bison.texinfo: Document `--locations' and `%locations'.
527 * tests/calc.m4: Test it.
529 For regularity of the names, replace each
530 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
531 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
532 In addition replace each `flag' with `_flag'.
534 2000-10-02 Akim Demaille <akim@epita.fr>
536 Also test parse error messages, including with YYERROR_VERBOSE.
538 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
540 Use it to check the computations.
541 Use it to check `nonassoc' is honored.
542 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
544 (_AT_CHECK_CALC): Adjust to this option.
545 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
547 2000-10-02 Akim Demaille <akim@epita.fr>
549 Test also `--verbose', `--defines' and `--name-prefix'. Testing
550 the latter demonstrates a flaw in the handling of non debugging
551 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
552 was used in order to simplify:
568 unfortunately this leads to a CPP conflict when
569 `--name-prefix=foo' is used since it produces `#define yydebug
572 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
573 (YYDPRINTF): New macro.
575 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
577 Also test `--verbose', `--defines' and `--name-prefix'.
579 2000-10-02 Akim Demaille <akim@epita.fr>
581 Improve the readability of the produced parsers.
583 * src/bison.s1: Formatting changes.
584 Improve the comment related to the `$' mark.
585 (yydefault): Don't fall through to `yyresume': `goto' there.
586 * src/output.c (output_parser): When the `$' is met, skip the end
588 New variable, `number_of_dollar_signs', to check there's exactly
589 one `$' in the parser skeleton.
591 2000-10-02 Akim Demaille <akim@epita.fr>
593 * lib/xstrdup.c: New file, from the fileutils.
594 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
595 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
596 instead of strlen + xmalloc + strcpy.
597 * src/symtab.c (copys): Remove, use xstrdup instead.
599 2000-10-02 Akim Demaille <akim@epita.fr>
601 * src/gram.h (associativity): New enum type which replaces the
602 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
603 `right_assoc', `left_assoc' and `non_assoc'.
604 Adjust all dependencies.
605 * src/reader.c: Formatting changes.
606 (LTYPESTR): Don't define it, use it as a literal in
607 `reader_output_yylsp'.
608 * src/symtab.h (symbol_class): New enum type which replaces the
609 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
610 `sunknown', `stoken and `snterm'.
612 2000-10-02 Akim Demaille <akim@epita.fr>
614 * src/getargs.c (fixed_outfiles): Rename as...
615 (yaccflag): for consistency and accuracy.
618 2000-10-02 Akim Demaille <akim@epita.fr>
620 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
621 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
622 difficult and introduced a lot of core dump. It turns out that
623 Bison used an implementation of `xmalloc' based on `calloc', and
624 at various places it does depend upon the initialization to 0. I
625 have not tried to isolate the pertinent places, and all the former
626 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
627 someone should address this issue.
629 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
630 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
633 * src/warshall.h: New file.
636 2000-10-02 Akim Demaille <akim@epita.fr>
638 Various anti-`extern in *.c' changes.
640 * src/system.h: Include `assert.h'.
642 2000-10-02 Akim Demaille <akim@epita.fr>
644 * src/state.h (nstates, final_state, first_state, first_shift)
645 (first_reduction): Move their exportation from here...
646 * src/LR0.h: to here.
648 * src/getargs.c (statisticsflag): New variable.
649 Add support for `--statistics'.
652 Remove a lot of now useless `extern' statements in most files.
654 2000-10-02 Akim Demaille <akim@epita.fr>
656 * src/LR0.h: New file.
659 2000-10-02 Akim Demaille <akim@epita.fr>
661 * src/print.h: New file.
663 * src/print.c: Formatting and ordering changes.
664 (verbose, terse): Replace with...
665 (print_results): this new function.
668 2000-10-02 Akim Demaille <akim@epita.fr>
670 * src/conflicts.c (conflict_report): New function.
671 (conflict_log, verbose_conflict_log): Replace with...
672 (print_conflicts): this function.
674 * src/conflicts.h: New file.
675 Propagate its inclusion.
677 2000-10-02 Akim Demaille <akim@epita.fr>
679 * src/nullable.h: New file.
680 Propagate its inclusion.
681 * src/nullable.c: Formatting changes.
683 2000-10-02 Akim Demaille <akim@epita.fr>
685 * src/reduce.h: New file.
686 Propagate its inclusion.
687 * src/reduce.c: Topological sort and other formatting changes.
688 (bool, TRUE, FALSE): Move their definition to...
689 * src/system.h: here.
691 2000-10-02 Akim Demaille <akim@epita.fr>
693 * src/files.c: Formatting changes.
694 (tryopen, tryclose, openfiles): Rename as...
695 (xfopen, xfclose, open_files): this.
696 (stringappend): static.
697 * src/files.h: Complete the list of exported symbols.
700 2000-10-02 Akim Demaille <akim@epita.fr>
702 * src/reader.h: New file.
703 Propagate its use instead of tedious list of `extern' and
705 * src/reader.c: Formatting changes, topological sort,
708 2000-10-02 Akim Demaille <akim@epita.fr>
710 * src/lex.h: Prototype `lex.c' exported functions.
711 * src/reader.c: Adjust.
712 * src/lex.c: Formatting changes.
713 (safegetc): Rename as...
716 2000-10-02 Akim Demaille <akim@epita.fr>
718 * src/lalr.h: New file.
719 Propagate its inclusion instead of prototypes and `extern'.
720 * src/lalr.c: Formatting changes, topological sorting etc.
722 2000-10-02 Akim Demaille <akim@epita.fr>
724 * src/output.c (token_actions): Introduce a temporary array,
725 YYDEFACT, that makes it possible for this function to use
728 2000-10-02 Akim Demaille <akim@epita.fr>
730 `user_toknums' is output as a `short[]' in `output.c', while it is
731 defined as a `int[]' in `reader.c'. For consistency with the
732 other output tables, `user_toknums' is now defined as a table of
735 * src/reader.c (user_toknums): Be a short table instead of an int
739 Factor the short table outputs.
741 * src/output.c (output_short_table): New function.
742 * src/output.c (output_gram, output_stos, output_rule_data)
743 (output_base, output_table, output_check): Use it.
745 2000-10-02 Akim Demaille <akim@epita.fr>
747 * src/output.c (output): Topological sort of the functions, in
748 order to get rid of the `static' prototypes.
749 No longer use `register'.
750 * src/output.h: New file.
751 Propagate its inclusion in files explicitly prototyping functions
754 2000-09-21 Akim Demaille <akim@epita.fr>
756 * src/atgeneral.m4: Update from Autoconf.
758 2000-09-21 Akim Demaille <akim@epita.fr>
760 * src/closure.h: New file.
761 * src/closure.c: Formatting changes, topological sort over the
762 functions, use of closure.h.
763 (initialize_closure, finalize_closure): Rename as...
764 (new_closure, free_closure): these. Adjust dependencies.
765 * src/LR0.c: Formatting changes, topological sort, use of
767 (initialize_states): Rename as...
769 * src/Makefile.am (noinst_HEADERS): Adjust.
771 2000-09-20 Akim Demaille <akim@epita.fr>
773 * src/acconfig.h: Don't protect config.h against multiple
776 * src/system.h: Define PARAMS.
777 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
778 purpose of config.h. system.h must not try to fix wrong
779 definitions in config.h.
781 2000-09-20 Akim Demaille <akim@epita.fr>
783 * src/derives.h: New file.
784 * src/main.c, src/derives.h: Use it.
786 * src/Makefile.am (noinst_HEADERS): Adjust.
788 2000-09-20 Akim Demaille <akim@epita.fr>
790 * tests/atgeneral.m4: Update from Autoconf.
791 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
792 (AT_CHECK_CALC): New macros.
793 Use these macros to test bison with options `', `--raw',
794 `--debug', `--yacc', `--yacc --debug'.
796 2000-09-19 Akim Demaille <akim@epita.fr>
798 * src/output.c: Formatting changes.
799 * src/machine.h: Remove, leaving its contents in...
800 * src/system.h: here.
802 Adjust all dependencies on stdio.h and machine.h.
803 * src/getargs.h: New file.
804 Let all `extern' declarations about getargs.c be replaced with
805 inclusion of `getargs.h'.
806 * src/Makefile.am (noinst_HEADERS): Adjust.
808 * tests/calc.m4 (yyin): Be initialized in main, not on the global
810 (yyerror): Returns void, not int.
811 * doc/bison.texinfo: Formatting changes.
813 2000-09-19 Akim Demaille <akim@epita.fr>
815 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
818 2000-09-18 Akim Demaille <akim@epita.fr>
820 * configure.in: Append WARNING_CFLAGS to CFLAGS.
821 * src/Makefile.am (INCLUDES): Don't.
822 Be ready to fetch headers in lib/.
824 2000-09-18 Akim Demaille <akim@epita.fr>
826 * doc/bison.texinfo: Update the copyright.
827 ANSIfy and GNUify the examples.
830 2000-09-18 Akim Demaille <akim@epita.fr>
832 First set of tests: use the `calc' example from the documentation.
834 * src/bison.s1 (yyparse): Condition the code using `yytname' which
835 is defined only when YYDEBUG is.
836 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
837 * src/files.c (tryopen, tryclose): Formatting changes.
838 Move to the top and be static.
839 * src/reader.c (read_signed_integer): Likewise.
840 * tests/calc.m4: New file.
841 * Makefile.am, suite.m4: Adjust.
842 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
844 2000-09-18 Akim Demaille <akim@epita.fr>
846 Add support for an Autotest test suite for Bison.
848 * m4/m4.m4, m4/atconfig.m4: New files.
849 * m4/Makefile.am (EXTRA_DIST): Adjust.
850 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
852 * src/getargs.c: Display a more standard --version message.
853 * src/reader.c (reader): Formatting changes.
854 No longer depend upon VERSION_STRING.
855 * configure.in: No longer use `dnl'.
856 Set up the test suite and the new directory `tests/.
857 (VERSION_STRING): Remove.
859 2000-04-14 Akim Demaille <akim@epita.fr>
861 * src/reader.c (copy_comment2): New function, same as former
862 `copy_comment', but outputs into two FILE *.
863 (copy_comment): Use it.
864 (parse_union_decl): Use it.
865 (get_type, parse_start_decl): Use the same `invalid' message.
866 (parse_start_decl, parse_union_decl): Use the same `multiple'
868 (parse_union_decl, copy_guard, copy_action): Use the same
870 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
872 2000-03-31 Akim Demaille <akim@epita.fr>
874 * src/files.c (tryopen, tryclose): Move to the top.
877 2000-03-31 Akim Demaille <akim@epita.fr>
879 * src/main.c (main): Don't call `done', exit does it.
881 2000-03-31 Akim Demaille <akim@epita.fr>
883 * allocate.c: s/return (foo)/return foo/.
886 * output.c: Likewise.
887 * reader.c: Likewise.
888 * symtab.c: Likewise.
889 * vmsgetargs.c: Likewise.
891 2000-03-31 Akim Demaille <akim@epita.fr>
893 Clean up the error reporting functions.
895 * src/report.c: New file.
896 * src/report.h: Likewise.
897 * src/Makefile.am: Adjust.
898 * m4/error.m4: New file.
899 * m4/Makefile.am: Adjust.
900 * configure.in (jm_PREREQ_ERROR): Call it.
901 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
903 (fatal, fatals): Remove. All callers use complain.c::fatal.
904 (warn, warni, warns, warnss, warnss): Remove. All callers use
905 complain.c::complain.
906 (toomany): Remove, use fatal instead.
907 * src/files.c (done): No argument, use complain_message_count.
908 * src/main.c (main): Register `done' to `atexit'.
910 * src/getargs.c (usage): More `fputs', less `fprintf'.
912 2000-03-28 Akim Demaille <akim@epita.fr>
914 * lib/: New directory.
915 * Makefile.am (SUBDIRS): Adjust.
916 * configure.in: Adjust.
917 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
919 * src/alloca.c: Moved to lib/.
920 * src/getopt.c: Likewise.
921 * src/getopt1.c: Likewise.
922 * src/getopt.h: Likewise.
923 * src/ansi2knr.c: Likewise.
924 * src/ansi2knr.1: Likewise.
925 * src/Makefile.am: Adjust.
926 * lib/Makefile.am: New file.
928 2000-03-28 Akim Demaille <akim@epita.fr>
930 * src/getargs.c (usage): Refresh the help message.
932 2000-03-17 Akim Demaille <akim@epita.fr>
934 * src/getopt1.c: Updated from textutils 2.0e
935 * src/getopt.c: Likewise.
936 * src/getopt.h: Likewise.
938 2000-03-17 Akim Demaille <akim@epita.fr>
940 * src/Makefile.am (bison.simple): Fix the awk program: quote only
941 the file name, not the whole `#line LINE FILE'.
943 2000-03-17 Akim Demaille <akim@epita.fr>
945 On syntax errors, report the token on which we choked.
947 * src/bison.s1 (yyparse): In the label yyerrlab, when
948 YYERROR_VERBOSE, add yychar in msg.
950 2000-03-17 Akim Demaille <akim@epita.fr>
952 * src/reader.c (copy_at): New function.
953 (copy_guard): Use it.
954 (copy_action): Use it.
956 2000-03-17 Akim Demaille <akim@epita.fr>
958 Be kind to translators, save some useless translations.
960 * src/main.c (banner): New function.
961 (fatal_banner): Use it.
962 (warn_banner): Use it.
964 2000-03-17 Akim Demaille <akim@epita.fr>
966 * src/reader.c (copy_definition): Use copy_string and
967 copy_comment. Removed now unused `match', `ended',
969 (copy_comment, copy_string): Moved, to be visible from
972 2000-03-17 Akim Demaille <akim@epita.fr>
974 * src/reader.c (copy_string): Declare `static inline'. No
975 problems with inline, since it is checked by configure.
976 (copy_comment): Likewise.
978 2000-03-17 Akim Demaille <akim@epita.fr>
980 * src/reader.c (packsymbols): Formatting changes.
982 2000-03-17 Akim Demaille <akim@epita.fr>
984 * src/reader.c (copy_comment): New function, factored out from:
985 (copy_action): Use it. Removed now unused `match', `ended',
987 (copy_guard): Likewise.
989 2000-03-17 Akim Demaille <akim@epita.fr>
991 * src/reader.c (copy_string): New function, factored out from:
992 (copy_action): Use it.
993 (copy_guard): Likewise.
995 2000-03-17 Akim Demaille <akim@epita.fr>
997 Change the handling of @s so that they behave exactly like $s.
998 There is now a pseudo variable @$ (readble and writable), location
999 of the lhs of the rule (by default ranging from the location of
1000 the first symbol of the rhs, to the location of the last symbol,
1001 or, if the rhs is empty, YYLLOC).
1003 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
1005 (yyparse): When providing a default semantic action, provide a
1006 default location action.
1007 (after the $): No longer change `*YYLSP', just stack YYLOC the
1008 same way you stack YYVAL.
1009 * src/reader.c (read_declarations): Use warns.
1010 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
1011 (copy_action, case '@'): Likewise.
1012 Use a standard error message, to save useless work from
1015 2000-03-17 Akim Demaille <akim@epita.fr>
1017 * src/bison.s1: Formatting and cosmetics changes.
1018 * src/reader.c: Likewise.
1019 Update the Copyright notice.
1021 2000-03-17 Akim Demaille <akim@epita.fr>
1023 * src/bison.s1 (#line): All set to `#line' only, since the
1024 Makefile now handles them.
1026 2000-03-16 Akim Demaille <akim@epita.fr>
1028 * src/output.c (output_rule_data): Output the documentation of
1030 (Copyright notice): Update.
1033 2000-03-16 Akim Demaille <akim@epita.fr>
1035 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
1036 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
1037 One `#if YYDEBUG' remains, since it uses variables which are
1038 defined only if `YYDEBUG != 0'.
1040 2000-03-16 Akim Demaille <akim@epita.fr>
1042 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
1043 and related variables so that the similarities are highlighted.
1045 2000-03-16 Akim Demaille <akim@epita.fr>
1047 * src/bison.s1: Properly indent CPP directives.
1049 2000-03-16 Akim Demaille <akim@epita.fr>
1051 * src/bison.s1: Properly indent the `alloca' CPP section.
1053 2000-03-16 Akim Demaille <akim@epita.fr>
1055 Do not hard code values of directories in `configure.in'.
1056 Update the `configure' tool chain.
1058 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
1060 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
1061 (AC_OUTPUT): Add m4/Makefile.
1062 Bump to bison 1.28a, 1.29 has never been released.
1063 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
1064 handled via src/Makefile.am.
1065 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
1066 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
1068 * Makefile.am (SUBDIRS): Add m4.
1069 (ACLOCAL_AM_FLAGS): New variable.
1070 (AUTOMAKE_OPTIONS): Add check-news.
1071 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
1072 the proper line number and file name.
1073 (DEFS): Propagate the location of bison library files and of the
1075 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
1077 * acinclude.m4: Remove, replaced by the directory m4.
1078 * m4/Makefile.am (EXTRA_DIST): New variable.
1079 * m4/gettext.m4: New file, from the fileutils.
1080 * m4/lcmessage.m4: Likewise
1081 * m4/progtest.m4: Likewise.
1082 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
1084 2000-03-10 Akim Demaille <akim@epita.fr>
1087 Formatting changes of various comments.
1088 Respect the GNU coding standards at various places.
1089 Don't use `_()' when no translation is needed.
1091 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1094 OS/2 honors TMPDIR environment variable.
1096 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1098 * doc/bison.texinfo: Tweaked spelling and grammar.
1100 Removed reference to price of printed copy.
1101 Mention BISON_SIMPLE and BISON_HAIRY.
1103 1999-12-13 Jesse Thilo <jthilo@gnu.org>
1105 * configure.in, NEWS:
1106 Bison 1.29 released.
1108 1999-10-27 Jesse Thilo <jthilo@gnu.org>
1110 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
1111 Added reference card.
1113 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1115 * po/ru.po: Added Russian translation.
1117 1999-07-26 Jesse Thilo <jthilo@gnu.org>
1119 * configure.in: Added Russian translation.
1121 1999-07-06 Jesse Thilo <jthilo@gnu.org>
1123 * configure.in, NEWS, README:
1124 Released version 1.28.
1126 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1129 Squashed redefinition warning on some systems.
1131 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
1132 Have configure build version string instead of relying on ANSI string
1135 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1137 * po/POTFILES.in: Got rid of version.c.
1139 1999-06-14 Jesse Thilo <jthilo@gnu.org>
1141 * acconfig.h, configure.in:
1142 Have configure build version string instead of relying on ANSI string
1145 1999-06-08 Jesse Thilo <jthilo@gnu.org>
1148 Dropped mention of `+' for long-named options.
1150 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1152 * src/files.c: Added <unistd.h> for unlink().
1154 * src/Makefile.am, src/system.h:
1157 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1159 * README: Added a FAQ list.
1161 * configure.in, acconfig.h:
1164 1999-05-30 Jesse Thilo <jthilo@gnu.org>
1166 * doc/FAQ, doc/Makefile.am:
1169 1999-05-19 Jesse Thilo <jthilo@gnu.org>
1171 * src/alloc.h, src/symtab.h, src/version.c:
1172 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1174 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1176 * src/.cvsignore, src/Makefile.am:
1177 Reorganized: sources in `src', documentation in `doc'.
1179 * src/lex.c (literalchar):
1180 fixed the code for escaping double quotes (thanks
1183 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1185 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1186 Adjusted paths to reflect directory reorganization.
1188 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1190 * doc/.cvsignore, doc/Makefile.am:
1191 Reorganized: sources in `src', documentation in `doc'.
1193 1999-04-18 Jesse Thilo <jthilo@gnu.org>
1196 Updated AC_INIT file to reflect directory reorganization.
1198 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1199 Reorganized: sources in `src', documentation in `doc'.
1201 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1204 Don't declare calloc() and realloc() if not necessary.
1206 1999-04-13 Jesse Thilo <jthilo@gnu.org>
1208 * configure.in, acconfig.h, acinclude.m4:
1209 Don't declare calloc() and realloc() if not necessary.
1211 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1213 * po/.cvsignore: Added i18n support.
1215 1999-03-23 Jesse Thilo <jthilo@gnu.org>
1217 * acconfig.h, configure.in, Makefile.am:
1220 1999-03-22 Jesse Thilo <jthilo@gnu.org>
1222 * src/bison.s1: Fixed #line numbers.
1224 1999-03-15 Jesse Thilo <jthilo@gnu.org>
1226 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1227 Added PO files from Translation Project.
1229 1999-03-03 Jesse Thilo <jthilo@gnu.org>
1232 Added support for non-ANSI compilers (ansi2knr).
1234 1999-02-16 Jesse Thilo <jthilo@gnu.org>
1236 * configure.in: Bumped version number to 1.27.
1239 Added `bison.simple' to list of files removed by `make distclean'.
1241 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1243 * src/files.c, src/files.h:
1244 Defined locations of parser files in config.h instead of Makefile.
1246 1999-02-12 Jesse Thilo <jthilo@gnu.org>
1248 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1249 Defined locations of parser files in config.h instead of Makefile.
1251 1999-02-09 Jesse Thilo <jthilo@gnu.org>
1254 Removed inappropriate use of $< macro.
1256 1999-02-05 Jesse Thilo <jthilo@gnu.org>
1258 * po/Makefile.in.in, po/POTFILES.in:
1259 Add `po' directory skeleton.
1261 1999-01-27 Jesse Thilo <jthilo@gnu.org>
1263 * README: Document help-bison list.
1265 * configure.in: Add check for mkstemp().
1267 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1269 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1270 Hush a few compiler warnings.
1273 Add tryclose(), which verifies that fclose was successful.
1274 Hush a couple of compiler warnings.
1276 1999-01-20 Jesse Thilo <jthilo@gnu.org>
1278 * Makefile.am, OChangeLog:
1279 ChangeLog is now automatically generated. Include the old version as
1282 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1284 * 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:
1287 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1289 * doc/bison.texinfo: Fix formatting glitch.
1291 * doc/bison.texinfo: Update FSF address.
1293 1999-01-14 Jesse Thilo <jthilo@gnu.org>
1295 * acconfig.h: Update FSF address.
1297 1999-01-08 Jesse Thilo <jthilo@gnu.org>
1300 Don't define PACKAGE here, since config.h defines it.
1302 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1304 * src/reader.c: Update copyright date.
1307 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1308 favor of output directly to stderr (avoids buffer overruns).
1310 * src/reader.c: Some checks for premature EOF.
1312 * 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:
1313 Use prototypes if the compiler understands them.
1315 * src/files.c: Honor TMPDIR on Unix hosts.
1316 Use prototypes if the compiler understands them.
1319 Fix a couple of buffer overrun bugs.
1320 Use prototypes if the compiler understands them.
1322 * src/system.h: Include unistd.h and ctype.h.
1323 Use #ifdef instead of #if for NLS symbols.
1325 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1327 * doc/bison.texinfo:
1328 Delete comment "consider using @set for edition number, etc..." since
1329 we now are doing so.
1331 1998-12-30 Jesse Thilo <jthilo@gnu.org>
1334 Use prototypes if the compiler understands them.
1336 * NEWS: Document 1.26 highlights.
1338 * Makefile.am: Require Automake 1.3 or later.
1341 Use prototypes if the compiler understands them.
1343 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1346 Use VERSION symbol from automake for version number.
1348 1998-12-29 Jesse Thilo <jthilo@gnu.org>
1350 * acconfig.h, configure.in, version.cin:
1351 Use VERSION symbol from automake for version number.
1353 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1356 Distribute original version of simple parser (bison.s1), not built
1357 version (bison.simple).
1359 1998-11-28 Jesse Thilo <jthilo@gnu.org>
1361 * doc/bison.texinfo: Add info dir entry.
1363 * doc/bison.texinfo:
1364 Let automake put version number into documentation.
1366 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1368 * src/bison.cld, src/build.com, src/vmshlp.mar:
1369 Add non-RCS files from /gd/gnu/bison.
1371 1998-11-26 Jesse Thilo <jthilo@gnu.org>
1374 Document the BISON_HAIRY and BISON_SIMPLE variables.
1376 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1378 * src/version.c: Build version.c automatically.
1381 Fix token numbering (used to start at 258, not 257).
1383 * src/system.h: Include config.h.
1385 * src/getargs.c: Update bug report address.
1387 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1388 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1390 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1393 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1395 * configure.in, version.cin:
1396 Build version.c automatically.
1398 * AUTHORS: Add AUTHORS file.
1400 * README: Update bug report address.
1403 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1405 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1408 1998-11-25 Jesse Thilo <jthilo@gnu.org>
1410 * doc/bison.texinfo: Clean up some formatting.
1412 1998-05-05 Richard Stallman <rms@gnu.org>
1414 * doc/bison.texinfo:
1415 Explain better why to make a pure parser.
1417 1998-01-05 Richard Stallman <rms@gnu.org>
1419 * src/files.c (openfiles):
1420 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1421 find a temporary directory, if possible. Do not unlink files while
1424 1997-08-25 Richard Stallman <rms@gnu.org>
1426 * src/reader.c (stack_offset;):
1427 Change some warni to warns.
1429 * src/lex.c (literalchar): Use warns, not warni.
1431 1997-06-28 Richard Stallman <rms@gnu.org>
1433 * src/bison.s1: Add a Bison version comment.
1435 * src/main.c (fatal, warn, berror):
1438 1997-06-28 Richard Stallman <rms@gnu.org>
1440 * Makefile.in (bison_version): New variable.
1441 (dist): Use that variable.
1442 (bison.s1): Substitute the Bison version into bison.simple.
1444 * bison.simple: Add a Bison version comment.
1446 1997-06-18 Richard Stallman <rms@gnu.org>
1448 * src/main.c (fatal, warn, berror):
1449 Make error messages standard.
1450 (toomany): Improve error message text.
1452 * 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:
1453 new.h renamed to alloc.h.
1455 1997-06-18 Richard Stallman <rms@gnu.org>
1457 * Makefile.in: new.h renamed to alloc.h.
1459 1997-05-24 Richard Stallman <rms@gnu.org>
1461 * src/lex.c (literalchar):
1462 Fix the code for escaping \, " and '.
1464 (lex): Avoid trouble when there are many chars
1465 to discard in a char literal with just several chars in it.
1467 1997-05-17 Richard Stallman <rms@gnu.org>
1470 Use malloc, if using alloca is troublesome.
1471 (YYSTACK_USE_ALLOCA): New flag macro.
1472 Define it for some systems and compilers.
1473 (YYSTACK_ALLOC): New macro.
1474 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1475 If it was malloc'd, free it.
1477 1997-05-17 Richard Stallman <rms@gnu.org>
1480 Use malloc, if using alloca is troublesome.
1481 (YYSTACK_USE_ALLOCA): New flag macro.
1482 Define it for some systems and compilers.
1483 (YYSTACK_ALLOC): New macro.
1484 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1485 If it was malloc'd, free it.
1487 1997-04-23 Richard Stallman <rms@gnu.org>
1490 (alloca) [__hpux]: Always define as __builtin_alloca.
1492 1997-04-23 Richard Stallman <rms@gnu.org>
1495 (alloca) [__hpux]: Always define as __builtin_alloca.
1497 1997-04-22 Richard Stallman <rms@gnu.org>
1500 [__hpux]: Include alloca.h (right for HPUX 10)
1501 instead of declaring alloca (right for HPUX 9).
1503 * src/bison.s1 (__yy_memcpy):
1504 Declare arg `count' as unsigned int.
1505 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1507 1997-04-22 Richard Stallman <rms@gnu.org>
1510 [__hpux]: Include alloca.h (right for HPUX 10)
1511 instead of declaring alloca (right for HPUX 9).
1513 * bison.simple (__yy_memcpy):
1514 Declare arg `count' as unsigned int.
1515 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1517 1997-01-03 Richard Stallman <rms@gnu.org>
1519 * src/allocate.c: [__STDC__ or _MSC_VER]:
1520 Declare calloc and realloc to return void *.
1522 1997-01-02 Richard Stallman <rms@gnu.org>
1525 [_MSC_VER]: Include stdlib.h and process.h.
1526 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
1528 * src/main.c (main): Return FAILURE as a value.
1529 (printable_version): Declare arg as int, not char.
1531 1997-01-02 Richard Stallman <rms@gnu.org>
1533 * Makefile.in (dist):
1534 Explicitly check for symlinks, and copy them.
1536 1996-12-19 Richard Stallman <rms@gnu.org>
1539 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
1541 1996-12-18 Paul Eggert <eggert@gnu.org>
1543 * src/bison.s1 (yyparse):
1544 If __GNUC__ and YYPARSE_PARAM are both defined,
1545 declare yyparse to have a void * argument.
1547 1996-12-18 Paul Eggert <eggert@gnu.org>
1549 * bison.simple (yyparse):
1550 If __GNUC__ and YYPARSE_PARAM are both defined,
1551 declare yyparse to have a void * argument.
1553 1996-12-17 Richard Stallman <rms@gnu.org>
1555 * src/reduce.c (nbits): Add some casts.
1557 1996-08-12 Richard Stallman <rms@gnu.org>
1559 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
1561 1996-08-12 Richard Stallman <rms@gnu.org>
1563 * bison.simple: Test _MSDOS as well as _MSDOS_.
1565 1996-07-31 Richard Stallman <rms@gnu.org>
1568 [__sun && __i386]: Include alloca.h.
1570 1996-07-31 Richard Stallman <rms@gnu.org>
1573 [__sun && __i386]: Include alloca.h.
1575 1996-07-30 Richard Stallman <rms@gnu.org>
1577 * src/bison.s1: Comment change.
1579 * src/bison.s1: Test _MSDOS_, not MSDOS.
1581 1996-07-30 Richard Stallman <rms@gnu.org>
1583 * bison.simple: Comment change.
1585 * bison.simple: Test _MSDOS_, not MSDOS.
1587 1996-06-01 Richard Stallman <rms@gnu.org>
1589 * 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:
1590 Insert `_' macro around many string constants.
1593 Insert `_' macro around many string constants.
1595 (main): Call setlocale, bindtextdomain and textdomain.
1597 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
1598 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
1599 [ENABLE_NLS]: Include libintl.h.
1600 [ENABLE_NLS] (gettext): Define.
1601 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
1602 (N_, PACKAGE, LOCALEDIR): New macros.
1604 1996-06-01 Richard Stallman <rms@gnu.org>
1606 * POTFILES.in: New file.
1608 * Makefile.in (allocate.o):
1609 Define target explicitly.
1611 * Makefile.in (CFLAGS): Set to @CFLAGS@.
1612 (LDFLAGS): Set to @LDFLAGS@.
1613 (configure): Run autoconf only if preceding `cd' succeeds.
1614 (bison.s1): Redirect output to temporary file then move the
1615 temporary to the target, rather than redirecting directly to bison.s1.
1616 (clean): Remove config.status and config.log.
1617 (distclean): Don't remove config.status here.
1619 1996-05-12 Richard Stallman <rms@gnu.org>
1622 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1624 1996-05-12 Richard Stallman <rms@gnu.org>
1627 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
1629 1996-05-11 Richard Stallman <rms@gnu.org>
1631 * src/bison.s1 (__yy_memcpy):
1632 Really reorder the args, as was supposedly done on Feb 14 1995.
1633 (yyparse): Calls changed accordingly.
1635 1996-05-11 Richard Stallman <rms@gnu.org>
1637 * Makefile.in (dist): Don't use $(srcdir).
1639 * bison.simple (__yy_memcpy):
1640 Really reorder the args, as was supposedly done on Feb 14 1995.
1641 (yyparse): Calls changed accordingly.
1643 1996-01-27 Richard Stallman <rms@gnu.org>
1645 * src/output.c (output_rule_data):
1646 Test YYERROR_VERBOSE in the conditional
1647 around the definition of ttyname.
1649 1995-12-29 Richard Stallman <rms@gnu.org>
1652 Fix line numbers in #line commands.
1654 1995-12-29 Richard Stallman <rms@gnu.org>
1657 Fix line numbers in #line commands.
1659 1995-12-27 Richard Stallman <rms@gnu.org>
1661 * src/bison.s1 (YYPARSE_PARAM_DECL):
1662 In C++, make it always null.
1663 (YYPARSE_PARAM_ARG): New macro.
1664 (yyparse): Use YYPARSE_PARAM_ARG.
1666 1995-12-27 Richard Stallman <rms@gnu.org>
1668 * bison.simple (YYPARSE_PARAM_DECL):
1669 In C++, make it always null.
1670 (YYPARSE_PARAM_ARG): New macro.
1671 (yyparse): Use YYPARSE_PARAM_ARG.
1673 1995-11-29 Richard Stallman <rms@gnu.org>
1675 * doc/bison.texinfo:
1676 Describe literal string tokens, %raw, %no_lines, %token_table.
1678 1995-11-29 Daniel Hagerty <hag@gnu.org>
1680 * doc/bison.texinfo: Fixed update date
1682 1995-10-16 Richard Stallman <rms@gnu.org>
1684 * src/version.c: Version 1.25.
1686 1995-10-16 Richard Stallman <rms@gnu.org>
1688 * NEWS: *** empty log message ***
1690 1995-10-16 Richard Stallman <rms@gnu.org>
1692 * doc/bison.1, doc/bison.rnh:
1695 1995-10-15 Richard Stallman <rms@gnu.org>
1697 * src/vmsgetargs.c, src/getargs.c:
1698 Added -n, -k, and -raw switches.
1699 (noparserflag, toknumflag, rawtoknumflag): New variables.
1701 * src/symtab.h (SALIAS):
1702 New #define for adding aliases to %token.
1703 (struct bucket): Added `alias' field.
1705 * src/reduce.c (reduce_grammar):
1706 Revise error message.
1707 (print_notices): Remove final `.' from error message.
1709 * src/reader.c (reader_output_yylsp):
1711 (readgram): Use `#if 0' around code that accepted %command
1712 inside grammar rules: The documentation doesn't allow it,
1713 and it will fail since the %command processors scan for the next %.
1714 (parse_token_decl): Extended the %token
1715 declaration to allow a multi-character symbol as an alias.
1716 (parse_thong_decl): New function.
1717 (read_declarations): Added %thong declarations.
1718 (read_declarations): Handle NOOP to deal with allowing
1719 % declarations as another means to specify the flags.
1720 (readgram): Allow %prec prior to semantics embedded in a rule.
1721 (skip_to_char, read_declarations, copy_definition)
1722 (parse_token_decl, parse_start_decl, parse_type_decl)
1723 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
1724 (get_type_name, copy_guard, copy_action, readgram)
1725 (get_type, packsymbols): Revised most error messages.
1726 Changed `fatal' to `warnxxx' to avoid aborting for error.
1727 Revised and use multiple warnxxx functions to avoid using VARARGS1.
1728 (read_declarations): Improve the error message for
1729 an invalid character. Do not abort.
1730 (read_declarations, copy_guard, copy_action): Use
1731 printable_version to avoid unprintable characters in printed output.
1732 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
1733 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
1734 Allow the type of a non-terminal can be given
1735 more than once, as long as all specifications give the same type.
1738 (output_headers, output_trailers, output, output_gram)
1739 (output_rule_data): Implement noparserflag variable.
1740 Implement toknumflag variable.
1741 (output): Call reader_output_yylsp to output LTYPESTR.
1743 * src/main.c (main):
1744 If reader sees an error, don't process the grammar.
1745 (fatals): Updated to not use VARARGS1.
1746 (printable_version, int_to_string, warn, warni, warns, warnss)
1747 (warnsss): New error reporting functions. Avoid abort for error.
1750 Added THONG and NOOP for alias processing.
1751 Added SETOPT for the new code that allows setting options with %flags.
1754 Include getopt.h. Add some extern decls.
1755 (safegetc): New function to deal with EOF gracefully.
1756 (literalchar); new function to deal with reading \ escapes.
1757 (lex): Use literalchar.
1758 (lex): Implemented "..." tokens.
1759 (literalchar, lex, parse_percent_token): Made tokenbuffer
1760 always contain the token. This includes growing the token
1761 buffer while reading an integer.
1762 (parse_percent_token): Replaced if-else statement with percent_table.
1763 (parse_percent_token): Added % declarations as another
1764 way to specify the flags -n, -l, and -r. Also added hooks for
1765 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
1766 major changes to files.c.
1767 (lex) Retain in the incoming stream a character following
1769 (skip_white_space, lex): Revised most error messages
1770 and changed fatal to warn to avoid aborting.
1771 (percent_table): Added %thong declarations.
1773 * src/gram.h: Comment changes.
1775 * src/files.c (openfiles, open_extra_files, done):
1777 and actfile file. Handle noparserflag. Both for -n switch.
1779 * src/conflicts.c (resolve_sr_conflict):
1780 Remove use of alloca.
1782 1995-06-01 Jim Meyering <meyering@gnu.org>
1784 * doc/bison.texinfo: *** empty log message ***
1786 1995-05-06 Richard Stallman <rms@gnu.org>
1788 * src/bison.s1: Comment change.
1790 1995-05-06 Richard Stallman <rms@gnu.org>
1792 * bison.simple: Comment change.
1794 1995-05-03 Richard Stallman <rms@gnu.org>
1796 * src/version.c: Version now 1.24.
1798 * src/bison.s1: Change distribution terms.
1800 * src/version.c: Version now 1.23.
1802 1995-05-03 Richard Stallman <rms@gnu.org>
1804 * doc/bison.texinfo:
1805 Rewrite "Conditions for Using Bison".
1806 Update version to 1.24.
1808 1995-05-03 Richard Stallman <rms@gnu.org>
1810 * bison.simple: Change distribution terms.
1812 1995-02-23 Richard Stallman <rms@gnu.org>
1814 * src/files.c: Test __VMS_POSIX as well as VMS.
1816 1995-02-14 Jim Meyering <meyering@gnu.org>
1818 * src/bison.s1 (__yy_memcpy):
1819 Renamed from __yy_bcopy to avoid
1820 confusion. Reverse FROM and TO arguments to be consistent with
1823 1995-02-14 Jim Meyering <meyering@gnu.org>
1825 * bison.simple (__yy_memcpy):
1826 Renamed from __yy_bcopy to avoid
1827 confusion. Reverse FROM and TO arguments to be consistent with
1830 1994-11-10 David J. MacKenzie <djm@gnu.org>
1836 * Makefile.in (DISTFILES): Include NEWS.
1838 * Makefile.in (DISTFILES):
1839 Include install-sh, not install.sh.
1841 * configure.in: Update to Autoconf v2 macro names.
1843 1994-10-05 David J. MacKenzie <djm@gnu.org>
1845 * Makefile.in: fix typo
1847 * Makefile.in (prefix, exec_prefix):
1848 Let configure set them.
1850 1994-09-28 David J. MacKenzie <djm@gnu.org>
1852 * Makefile.in: Set datadir to $(prefix)/share.
1854 1994-09-15 Richard Stallman <rms@gnu.org>
1857 Update copyright notice and GPL version.
1859 1994-09-15 Richard Stallman <rms@gnu.org>
1862 Update copyright notice and GPL version.
1864 1994-07-12 Richard Stallman <rms@gnu.org>
1866 * src/reduce.c, src/reader.c:
1869 1994-05-05 David J. MacKenzie <djm@gnu.org>
1871 * Makefile.in: entered into RCS
1873 1994-03-26 Richard Stallman <rms@gnu.org>
1875 * src/bison.s1: entered into RCS
1877 1994-03-26 Richard Stallman <rms@gnu.org>
1879 * bison.simple: entered into RCS
1881 1994-03-25 Richard Stallman <rms@gnu.org>
1883 * src/main.c: entered into RCS
1885 1994-03-24 Richard Stallman <rms@gnu.org>
1887 * src/conflicts.c: entered into RCS
1889 1994-01-02 Richard Stallman <rms@gnu.org>
1891 * Makefile.in: *** empty log message ***
1893 1993-11-21 Richard Stallman <rms@gnu.org>
1895 * src/bison.s1: *** empty log message ***
1897 1993-11-21 Richard Stallman <rms@gnu.org>
1899 * doc/bison.texinfo: entered into RCS
1901 * doc/bison.texinfo: *** empty log message ***
1903 1993-11-21 Richard Stallman <rms@gnu.org>
1905 * bison.simple: *** empty log message ***
1907 1993-10-25 David J. MacKenzie <djm@gnu.org>
1909 * doc/bison.texinfo: *** empty log message ***
1911 1993-10-19 Richard Stallman <rms@gnu.org>
1913 * src/bison.s1: *** empty log message ***
1915 1993-10-19 Richard Stallman <rms@gnu.org>
1917 * bison.simple: *** empty log message ***
1919 1993-10-14 Richard Stallman <rms@gnu.org>
1921 * src/bison.s1: *** empty log message ***
1923 1993-10-14 Richard Stallman <rms@gnu.org>
1925 * bison.simple: *** empty log message ***
1927 1993-09-14 David J. MacKenzie <djm@gnu.org>
1929 * doc/bison.texinfo: *** empty log message ***
1931 1993-09-13 Noah Friedman <friedman@gnu.org>
1933 * Makefile.in: *** empty log message ***
1935 1993-09-10 Richard Stallman <rms@gnu.org>
1937 * src/conflicts.c: *** empty log message ***
1939 * src/system.h: entered into RCS
1941 1993-09-10 Richard Stallman <rms@gnu.org>
1943 * doc/bison.1: entered into RCS
1945 1993-09-06 Noah Friedman <friedman@gnu.org>
1947 * src/version.c: entered into RCS
1949 1993-09-06 Noah Friedman <friedman@gnu.org>
1951 * Makefile.in: *** empty log message ***
1953 1993-07-30 David J. MacKenzie <djm@gnu.org>
1955 * Makefile.in: *** empty log message ***
1957 1993-07-24 Richard Stallman <rms@gnu.org>
1959 * src/bison.s1: *** empty log message ***
1961 1993-07-24 Richard Stallman <rms@gnu.org>
1963 * bison.simple: *** empty log message ***
1965 1993-07-08 David J. MacKenzie <djm@gnu.org>
1967 * Makefile.in: *** empty log message ***
1969 1993-07-04 Richard Stallman <rms@gnu.org>
1971 * src/bison.s1: *** empty log message ***
1973 1993-07-04 Richard Stallman <rms@gnu.org>
1975 * bison.simple: *** empty log message ***
1977 1993-06-26 David J. MacKenzie <djm@gnu.org>
1979 * src/getargs.c: entered into RCS
1981 1993-06-26 David J. MacKenzie <djm@gnu.org>
1983 * doc/bison.texinfo: *** empty log message ***
1985 * doc/bison.1: New file.
1987 1993-06-25 Richard Stallman <rms@gnu.org>
1989 * src/getargs.c: New file.
1991 1993-06-16 Richard Stallman <rms@gnu.org>
1993 * src/bison.s1: *** empty log message ***
1995 1993-06-16 Richard Stallman <rms@gnu.org>
1997 * bison.simple: *** empty log message ***
1999 1993-06-03 Richard Stallman <rms@gnu.org>
2001 * src/bison.s1: New file.
2003 1993-06-03 Richard Stallman <rms@gnu.org>
2005 * doc/bison.texinfo: *** empty log message ***
2007 1993-06-03 Richard Stallman <rms@gnu.org>
2009 * bison.simple: New file.
2011 1993-05-19 Richard Stallman <rms@gnu.org>
2013 * doc/bison.texinfo: New file.
2015 1993-05-07 Noah Friedman <friedman@gnu.org>
2017 * Makefile.in: *** empty log message ***
2019 1993-04-28 Noah Friedman <friedman@gnu.org>
2021 * src/reader.c: *** empty log message ***
2023 1993-04-23 Noah Friedman <friedman@gnu.org>
2025 * src/alloc.h: entered into RCS
2027 1993-04-20 David J. MacKenzie <djm@gnu.org>
2029 * src/version.c: *** empty log message ***
2031 * src/files.c, src/allocate.c:
2034 * src/reader.c: *** empty log message ***
2036 * src/lex.c: entered into RCS
2038 * src/conflicts.c: New file.
2040 * src/symtab.c: entered into RCS
2042 * src/alloc.h: New file.
2044 * src/LR0.c: entered into RCS
2046 1993-04-18 Noah Friedman <friedman@gnu.org>
2048 * src/reader.c: New file.
2050 * src/version.c: *** empty log message ***
2052 1993-04-18 Noah Friedman <friedman@gnu.org>
2054 * Makefile.in: *** empty log message ***
2056 1993-04-17 Noah Friedman <friedman@gnu.org>
2058 * Makefile.in: *** empty log message ***
2060 1993-04-15 Richard Stallman <rms@gnu.org>
2062 * src/main.c, src/files.c:
2065 1993-04-15 Noah Friedman <friedman@gnu.org>
2067 * configure.in: entered into RCS
2069 * configure.in: *** empty log message ***
2071 * configure.in: New file.
2073 1993-04-14 Richard Stallman <rms@gnu.org>
2075 * Makefile.in: New file.
2077 1993-04-13 Richard Stallman <rms@gnu.org>
2079 * src/version.c: New file.
2081 1993-03-25 Richard Stallman <rms@gnu.org>
2083 * src/output.c: entered into RCS
2085 1992-09-25 Richard Stallman <rms@gnu.org>
2087 * configure.bat: entered into RCS
2089 1992-06-22 Richard Stallman <rms@gnu.org>
2091 * src/vmsgetargs.c: entered into RCS
2093 1992-06-22 Richard Stallman <rms@gnu.org>
2095 * doc/bison.rnh: entered into RCS
2097 1992-04-20 David J. MacKenzie <djm@gnu.org>
2099 * README: entered into RCS
2101 1992-01-22 Richard Stallman <rms@gnu.org>
2103 * src/machine.h: entered into RCS
2105 1991-12-21 Richard Stallman <rms@gnu.org>
2107 * src/lalr.c, src/closure.c:
2110 1991-12-20 Richard Stallman <rms@gnu.org>
2112 * src/state.h: entered into RCS
2114 1991-12-18 Richard Stallman <rms@gnu.org>
2116 * src/print.c, src/nullable.c, src/derives.c:
2119 1991-11-03 David J. MacKenzie <djm@gnu.org>
2121 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
2124 1988-09-09 Richard Stallman <rms@gnu.org>
2126 * src/bison.hairy: entered into RCS
2128 1987-12-16 Richard Stallman <rms@gnu.org>
2130 * REFERENCES: entered into RCS