]> git.saurik.com Git - bison.git/blame_incremental - ChangeLog
Update
[bison.git] / ChangeLog
... / ...
CommitLineData
12001-08-31 Marc Autret <autret_m@epita.fr>
2
3 * src/reader.c (readgram): CleanUp.
4 (output_token_defines): Likewise.
5 (packsymbols): Likewise.
6 (reader): Likewise.
7 * src/output.c (output): CPP-out useless code.
8
92001-08-31 Pascal Bart <pascal.bart@epita.fr>
10
11 * src/reader.c (reader): Delete obsolete call to function
12 output_trailers and output_headers.
13 * src/output.h: Remove obsolete functions prototypes of output_headers
14 and output_trailers.
15
162001-08-30 Pascal Bart <pascal.bart@epita.fr>
17
18 * src/main.c: Include macrotab.h.
19 * src/macrotab.h (macro_entry_s): Constify fields.
20 Adjust functions prototypes.
21 * src/macrotab.c (macro_insert): Constify key and value.
22 (macro_find): Constify key.
23 (macro_insert): Include 'xalloc.h'
24 (macro_insert): Use XMALLOC.
25 (macro_find): Constify return value.
26 * src/output.c (output_table_data): Rename table to table_data.
27 (output_parser): Constify macro_key, macro_value.
28
292001-08-30 Marc Autret <autret_m@epita.fr>
30
31 * src/reader.c (parse_skel_decl): New.
32 (read_declarations): Add case `tok_skel', call parse_skel_decl ().
33 * src/lex.h (token_t): New token `tok_skel'.
34 * src/lex.c (percent_table): Add skeleton option entry.
35 Standardize.
36
372001-08-29 Marc Autret <autret_m@epita.fr>
38
39 * src/bison.simple: Add %%user_code directive at the end.
40 * src/reader.c (read_additionnal_code): New.
41 (reader): Use it.
42 * src/output.c (output_program): Remove.
43 (output): Update.
44
452001-08-28 Marc Autret <autret_m@epita.fr>
46
47 * src/output.c (output_actions): Clean up.
48 (output_gram): CPP-out useless code.
49 * src/reader.c (reader): Clean up, CPP-out useless code.
50
512001-08-28 Pascal Bart <pascal.bart@epita.fr>
52
53 * src/output.c (output): Copy attrs_obstack in the '%%definitions'
54 directive.
55 * src/bison.simple: Add `%%definitions'.
56
572001-08-28 Marc Autret <autret_m@epita.fr>
58
59 * config/depcomp: New file.
60
612001-08-27 Paul Eggert <eggert@twinsun.com>
62
63 * src/bison.simple (yyparse): Don't take the address of an
64 item before the start of an array, as that doesn't conform to
65 the C Standard.
66
672001-08-27 Robert Anisko <robert.anisko@epita.fr>
68
69 * src/output.c (output): Remove the initialization of the macro
70 obstack. It was done too late here.
71
72 * src/reader.c (parse_macro_decl): Fix. Use of the macro obstack was
73 completely wrong.
74 (reader): Initialize the macro obstack here, since we need it to grow
75 '%define' directives.
76
77 * src/reader.h: Declare the macro obstack as extern.
78
792001-08-27 Robert Anisko <robert.anisko@epita.fr>
80
81 * src/output.c (output_parser): Fix. Store single '%' characters in
82 the output obstack instead of throwing them away.
83
842001-08-27 Akim Demaille <akim@epita.fr>
85
86 * Makefile.am (AUTOMAKE_OPTIONS): 1.5.
87
882001-08-25 Robert Anisko <robert.anisko@epita.fr>
89
90 * lib/Makefile.am: Adjust.
91
922001-08-25 Robert Anisko <robert.anisko@epita.fr>
93
94 * src/bison.simple: Update and add '%%' directives.
95
962001-08-25 Robert Anisko <robert.anisko@epita.fr>
97
98 * src/reader.c (reader): Remove calls to 'output_headers' and
99 'output_trailers'. Remove some C output.
100 (readgram): Disable a piece of code that was writing a default
101 definition for 'YYSTYPE'.
102 (reader_output_yylsp): Remove.
103 (packsymbols): Output token defintions to a macro.
104 (copy_definition): Disable C output.
105
106 * src/reader.c (parse_macro_decl): New function used to parse macro
107 declarations.
108 (copy_string2): Put the body of copy_string into this new function.
109 Add a parameter to let the caller choose whether he wants to copy the
110 string delimiters or not.
111 (copy_string): Be a simple call to copy_string2 with the last argument
112 bound to true.
113 (read_declarations): Add case for macro definition.
114 (copy_identifier): New.
115 (parse_macro_decl): Read macro identifiers using copy_identifier
116 rather than lex.
117
1182001-08-25 Robert Anisko <robert.anisko@epita.fr>
119
120 * src/output.c (prepare): Add prefixed names.
121 (output_parser): Output semantic actions.
122 (output_parser): Fix bug on '%%line' directives.
123
124 * src/output.c (output_headers): Remove. The C code printed by this
125 function should now be in the skeletons.
126 (output_trailers): Remove.
127 (output): Disable call to 'reader_output_yylsp'.
128 (output_rule_data): Do not output tables to the table obstack.
129
130 * src/output.c: Remove some C dedicated output.
131 Improve the use of macro and output obstacks.
132 (output_defines): Remove.
133
134 * src/output.c (output_token_translations): Associate 'translate'
135 table with a macro. No output to the table obstack.
136 (output_gram): Same for 'rhs' and 'prhs'.
137 (output_stos): Same for 'stos'.
138 (output_rule_data): Same for 'r1' and 'r2'.
139 (token_actions): Same for 'defact'.
140 (goto_actions): Same for 'defgoto'.
141 (output_base): Same for 'pact' and 'pgoto'.
142 (output_table): Same for 'table'.
143 (output_check): Same for 'check'.
144
145 * src/output.c (output_table_data): New function.
146 (output_short_table): Remove.
147 (output_short_or_char_table): Remove.
148
149 * src/output.c (output_parser): Replace most of the skeleton copy code
150 with something new. Skeletons are now processed character by character
151 rather than line by line, and Bison looks for '%%' macros. This is the
152 first step in making Bison's output process (a lot) more flexible.
153 (output_parser): Use the macro table.
154
1552001-08-25 Robert Anisko <robert.anisko@epita.fr>
156
157 * src/main.c (main): Initialize the macro table.
158
1592001-08-25 Robert Anisko <robert.anisko@epita.fr>
160
161 * src/lex.c (percent_table): Add tok_define.
162 * src/lex.h: Add tok_define.
163
1642001-08-25 Robert Anisko <robert.anisko@epita.fr>
165
166 * src/macrotab.c: New file.
167 * src/macrotab.h: New file.
168 * src/Makefile.am: Update.
169
1702001-08-25 Robert Anisko <robert.anisko@epita.fr>
171
172 * lib/hash.c: New file.
173 * lib/hash.h: New file.
174 * lib/Makefile.am: Update.
175
1762001-08-15 Akim Demaille <akim@epita.fr>
177
178 Version 1.28c.
179
1802001-08-15 Marc Autret <autret_m@epita.fr>
181
182 * src/reader.c (readgram): Indent output macro YYSTYPE.
183 (packsymbols): Likewise.
184 (output_token_defines): Likewise.
185 * src/files.c: Standardize.
186 (compute_header_macro): New.
187 (defines_obstack_save): New. Use compute_header_macro.
188 (output_files): Update. Use defines_obstack_save.
189
1902001-08-15 Akim Demaille <akim@epita.fr>
191
192 * doc/bison.texinfo (Table of Symbols): Document
193 YYSTACK_USE_ALLOCA.
194
1952001-08-15 Akim Demaille <akim@epita.fr>
196
197 * missing: Update from CVS Automake.
198 * config/config.guess, config/config.sub, config/texinfo.tex:
199 Update from gnu.org.
200
2012001-08-15 Akim Demaille <akim@epita.fr>
202
203 * Makefile.maint: Sync with CVS Autoconf.
204
2052001-08-14 Pascal Bart <pascal.bart@epita.fr>
206
207 * doc/bison.texinfo: Include GNU Free Documentation License from
208 `fdl.texi'.
209 * doc/fdl.texi: Add to package.
210
2112001-08-14 Marc Autret <autret_m@epita.fr>
212
213 Turn on %{source,header}_extension features.
214
215 * src/lex.c (percent_table): Un-CPP out header_extension and
216 source_extension.
217 * src/files.c (compute_exts_from_gf): Compare pointers with NULL.
218 (compute_exts_from_src): Remove conditions. It restores priorities
219 between options.
220
2212001-08-14 Marc Autret <autret_m@epita.fr>
222
223 * src/files.c (compute_base_names): Add extensions computing when
224 `--file-prefix' used.
225 Standardize function calls.
226
2272001-08-13 Marc Autret <autret_m@epita.fr>
228
229 * src/bison.simple (YYSTACK_USE_ALLOCA): Changed to allow users
230 defining it (defined but null disables alloca).
231
2322001-08-13 Marc Autret <autret_m@epita.fr>
233
234 * src/bison.simple (_yy_memcpy): CPP reformat.
235
2362001-08-13 Pascal Bart <pascal.bart@epita.fr>
237
238 * tests/atconfig.in (CPPFLAGS): Fix.
239
2402001-08-10 Pascal Bart <pascal.bart@epita.fr>
241
242 * doc/bison.texinfo: Include GNU General Public License from
243 `gpl.texi'.
244 * doc/gpl.texi: Add to package.
245
2462001-08-10 Marc Autret <autret_m@epita.fr>
247
248 * src/print_graph.h: Fix.
249 * src/reader.c (read_declarations): Use parse_header_extension_decl ().
250
2512001-08-10 Akim Demaille <akim@epita.fr>
252
253 * src/system.h: Provide default declarations for stpcpy, strndup,
254 and strnlen.
255
2562001-08-10 Robert Anisko <anisko_r@epita.fr>
257
258 * doc/bison.texinfo (Locations): Update @$ stuff.
259
2602001-08-09 Robert Anisko <anisko_r@epita.fr>
261
262 * src/bison.simple (YYLLOC_DEFAULT): Update.
263 (yyparse): Adjust.
264
2652001-08-08 Marc Autret <autret_m@epita.fr>
266
267 * doc/bison.texinfo: Change @samp{$<@dots{}>} to
268 @samp{$<@dots{}>@var{n}} in Section Actions in Mid-Rule.
269 Reported by Fabrice Bauzac.
270
2712001-08-08 Marc Autret <autret_m@epita.fr>
272
273 * src/vcg_default.h: Use NULL instead of 0 to initialize pointers.
274 * src/vcg.c (output_node): Fix.
275 * src/vcg.h: Cleanup.
276 * src/print_graph.c: Add comments.
277 (node_output_size): New global variable. Simplify the formatting of
278 the VCG graph output.
279 (print_actions): Unused code is now used. It notifies the final state
280 and no action states in the VCG graph. It also give the reduce actions.
281 The `shift and goto' edges are red and the `go to state' edges are
282 blue.
283 Get the current node name and node_obstack by argument.
284 (node_obstack): New variable.
285 (print_state): Manage node_obstack.
286 (print_core): Use node_obstack given by argument.
287 A node is not only computed here but in print_actions also.
288 (print_graph): CPP out useless code instead of commenting it.
289
2902001-08-07 Pascal Bart <pascal.bart@epita.fr>
291
292 * tests/atconfig.in (CPPFLAGS): Fix.
293
2942001-08-07 Akim Demaille <akim@epita.fr>
295
296 * src/print_graph.c (quote): New.
297 (print_core): Use it.
298
2992001-08-06 Akim Demaille <akim@epita.fr>, Marc Autret <autret_m@epita.fr>
300
301 * src/vcg.c (complain.h): Include it.
302 Unepitaize `return' invocations.
303 [NDEBUG] (main): Remove.
304 * src/vcg.h (node_t, edge_t, graph_t): Constify the char * members.
305 * src/files.c (open_files): Initialize graph_obstack.
306 * src/print_graph.c (print_actions): CPP out useless code.
307 (print_core): Don't output the last `\n' in labels.
308 Use `quote'.
309 * src/files.c (output_files): Output the VCG file.
310 * src/main.c (main): Invoke print_graph ();
311
3122001-08-06 Marc Autret <autret_m@epita.fr>
313
314 Automaton VCG graph output.
315 Using option ``-g'' or long option ``--graph'', you can generate
316 a gram_filename.vcg file containing a VCG description of the LALR (1)
317 automaton of your grammar.
318
319 * src/main.c: Call to print_graph() function.
320 * src/getargs.h: Update.
321 * src/getargs.c (options): Update to catch `-g' and `--graph' options.
322 (graph_flag): New flag.
323 (longopts): Update.
324 (getargs): Add case `g'.
325 * src/files.c (graph_obstack): New obstack struct.
326 (open_files): Initialize new obstack.
327 (output_files): Saves graph_obstack if required.
328 * src/files.h (graph_obstack): New extern declaration.
329 * src/Makefile.am: Add new source files.
330
3312001-08-06 Marc Autret <autret_m@epita.fr>
332
333 * src/print_graph.c, src/print_graph.h (graph): New.
334 * src/vcg.h: New file.
335 * src/vcg.c: New file, VCG graph handling.
336
3372001-08-06 Marc Autret <autret_m@epita.fr>
338
339 Add of %source_extension and %header_extension which specify
340 the source or/and the header output file extension.
341
342 * src/files.c (compute_base_names): Remove initialisation of
343 src_extension and header_extension.
344 (compute_exts_from_gf): Update.
345 (compute_exts_from_src): Update.
346 (output_files): Update.
347 * src/reader.c (parse_header_extension_decl): New.
348 (parse_source_extension_decl): New.
349 (read_declarations): New case statements for the new tokens.
350 * src/lex.c (percent_table): Add entries for %source_extension
351 and %header_extension.
352 * src/lex.h (token_e): New tokens tok_hdrext and tok_srcext.
353
3542001-08-06 Marc Autret <autret_m@epita.fr>
355
356 * configure.in: Bump to 1.28c.
357 * doc/bison.texinfo: Texinfo thingies.
358
3592001-08-04 Pascal Bart <pascal.bart@epita.fr>
360
361 * tests/atconfig.in (CPPFLAGS): Add.
362 * tests/calc.at (AT_CHECK): Use CPPFLAGS.
363
3642001-08-03 Akim Demaille <akim@epita.fr>
365
366 Version 1.28b.
367
3682001-08-03 Akim Demaille <akim@epita.fr>
369
370 * tests/Makefile.am (check-local): Ship testsuite.
371 * tests/calc.at (_AT_DATA_CALC_Y): Prototype all the functions.
372 Include `string.h'.
373
3742001-08-03 Akim Demaille <akim@epita.fr>
375
376 * configure.in: Try using -Wformat when compiling.
377
3782001-08-03 Akim Demaille <akim@epita.fr>
379
380 * configure.in: Bump to 1.28b.
381
3822001-08-03 Akim Demaille <akim@epita.fr>
383
384 * src/complain.c: Adjust strerror_r portability issues.
385
3862001-08-03 Akim Demaille <akim@epita.fr>
387
388 Version 1.28a.
389
3902001-08-03 Akim Demaille <akim@epita.fr>
391
392 * src/getargs.c, src/getarg.h (skeleton)): Constify.
393 * src/lex.c (literalchar): Avoid name clashes on `buf'.
394 * src/getargs.c: Include complain.h.
395 * src/files.c, src/files.h (skeleton_find): Avoid name clashes.
396 * lib/quotearg.c, lib/quotearg.h: Update from fileutils 4.1.
397
3982001-08-03 Akim Demaille <akim@epita.fr>
399
400 * src/reader.c (readgram): Display hidden chars in error messages.
401
4022001-08-03 Akim Demaille <akim@epita.fr>
403
404 Update to gettext 0.10.39.
405
4062001-08-03 Akim Demaille <akim@epita.fr>
407
408 * lib/strspn.c: New.
409
4102001-08-01 Marc Autret <autret_m@epita.fr>
411
412 * doc/bison.texinfo: Update.
413 * doc/bison.1 (mandoc): Update.
414 * src/system.h (EXT_GUARD_C, EXT_STYPE_H): Remove .c and .h.
415 * src/files.c: Support output files extensions computing.
416 (src_extension): New static variable.
417 (header_extension): New static variable.
418 (tr): New function.
419 (get_extension_index): New function, gets the index of an extension
420 filename in a string.
421 (compute_exts_from_gf): New function, computes extensions from the
422 grammar file extension.
423 (compute_exts_from_src): New functions, computes extensions from the
424 C source file extension, file given by ``-o'' option.
425 (compute_base_names): Update.
426 (output_files): Update.
427
4282001-08-01 Robert Anisko <anisko_r@epita.fr>
429
430 * doc/bison.texi: Document @$.
431 (Locations): New section.
432
4332001-07-18 Akim Demaille <akim@epita.fr>
434
435 * Makefile.maint, GNUmakefile: New, from Autoconf 2.52.
436 * config/prev-version.txt, config/move-if-change: New.
437 * Makefile.am: Adjust.
438
4392001-07-08 Pascal Bart <pascal.bart@epita.fr>
440
441 * src/bison.simple (yyparse): Suppress warning `comparaison
442 between signed and unsigned'.
443
4442001-07-05 Pascal Bart <pascal.bart@epita.fr>
445
446 * src/getargs.h (raw_flag): Remove.
447 * src/getargs.c: Die on `-r'/`--raw'.
448 * src/lex.c (parse_percent_token): Die on `%raw'.
449 * src/reader.c (output_token_defines): Suppress call to `raw_flag'.
450 * tests/calc.at: Suppress test with option `--raw'.
451
4522001-07-14 Akim Demaille <akim@epita.fr>
453
454 * config/: New.
455 * configure.in: Require Autoconf 2.50.
456 Update to gettext 0.10.38.
457
4582001-03-16 Akim Demaille <akim@epita.fr>
459
460 * doc/bison.texinfo: ANSIfy the examples.
461
4622001-03-16 Akim Demaille <akim@epita.fr>
463
464 * getargs.c (skeleton): New variable.
465 (longopts): --skeleton is a new option.
466 (shortopts, getargs): -S is a new option.
467 * getargs.h: Declare skeleton.
468 * output.c (output_parser): Use it.
469
4702001-03-16 Akim Demaille <akim@epita.fr>
471
472 * m4/strerror_r.m4: New.
473 * m4/error.m4: Run AC_FUNC_STRERROR_R.
474 * lib/error.h, lib/error.c: Update.
475
4762001-03-16 Akim Demaille <akim@epita.fr>
477
478 * src/getargs.c (longopts): Clean up.
479
4802001-02-21 Akim Demaille <akim@epita.fr>
481
482 * src/reader.c (gensym): `gensym_count' is your own.
483 Use a static buf to create the symbol name, as token_buffer is no
484 longer a buffer.
485
4862001-02-08 Akim Demaille <akim@epita.fr>
487
488 * src/conflicts.c (conflict_report): Be sure not to append to res
489 between two calls, which could happen if both first sprintf were
490 skipped, but not the first cp += strlen.
491
4922001-02-08 Akim Demaille <akim@epita.fr>
493
494 * lib/memchr.c, lib/stpcpy.c, lib/strndup.c, lib/strnlen.c:
495 New, from fileutils 4.0.37.
496 * configure.in: Require Autoconf 2.49c. I took some time before
497 making this decision. This is the only way out for portability
498 issues in Bison, it would mean way too much duplicate effort to
499 import in Bison features implemented in 2.49c since 2.13.
500 AC_REPLACE_FUNCS and AC_CHECK_DECLS the functions above.
501
5022001-02-02 Akim Demaille <akim@epita.fr>
503
504 * lib/malloc.c, lib/realloc.c: New, from the fileutils 4.0.37.
505 * lib/xalloc.h, lib/xmalloc.c: Update.
506
5072001-01-19 Akim Demaille <akim@epita.fr>
508
509 Get rid of the ad hoc handling of token_buffer in the scanner: use
510 the obstacks.
511
512 * src/lex.c (token_obstack): New.
513 (init_lex): Initialize it. No longer call...
514 (grow_token_buffer): this. Remove it.
515 Adjust all the places which used it to use the obstack.
516
5172001-01-19 Akim Demaille <akim@epita.fr>
518
519 * src/lex.h: Rename all the tokens:
520 s/\bENDFILE\b/tok_eof/g;
521 s/\bIDENTIFIER\b/tok_identifier/g;
522 etc.
523 Let them be enums, not #define, to ease debugging.
524 Adjust all the code.
525
5262001-01-18 Akim Demaille <akim@epita.fr>
527
528 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
529 * src/lex.c (maxtoken, grow_token_buffer): Static.
530
5312001-01-18 Akim Demaille <akim@epita.fr>
532
533 Since we now use obstacks, more % directives can be enabled.
534
535 * src/lex.c (percent_table): Also accept `%yacc',
536 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
537 `%debug'.
538 Handle the actions for `%semantic_parser' and `%pure_parser' here,
539 instead of returning a token.
540 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
541 * src/reader.c (read_declarations): Adjust.
542 * src/files.c (open_files): Don't call `compute_base_names', don't
543 compute `attrsfile' since they depend upon data which might be
544 *in* the input file now.
545 (output_files): Do it here.
546 * src/output.c (output_headers): Document the fact that this patch
547 introduces a guaranteed SEGV for semantic parsers.
548 * doc/bison.texinfo: Document them.
549 * tests/suite.at: Exercise these %options.
550
5512000-12-20 Akim Demaille <akim@epita.fr>
552
553 Also handle the output file (--verbose) with obstacks.
554
555 * files.c (foutput): Remove.
556 (output_obstack): New.
557 Adjust all dependencies.
558 * src/conflicts.c: Return a string.
559 * src/system.h (obstack_grow_string): Rename as...
560 (obstack_sgrow): this. Be ready to work with non literals.
561 (obstack_fgrow4): New.
562
5632000-12-20 Akim Demaille <akim@epita.fr>
564
565 * src/files.c (open_files): Fix the computation of short_base_name
566 in the case of `-o foo.tab.c'.
567
5682000-12-20 Akim Demaille <akim@epita.fr>
569
570 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
571 (copy_dollar): Now that everything uses obstacks, get rid of the
572 FILE * parameters.
573
5742000-12-20 Akim Demaille <akim@epita.fr>
575
576 * src/files.c (open_files): Actually the `.output' file is based
577 on the short_base_name, not base_name.
578 * tests/suite.at (Checking output file names): Adjust.
579
5802000-12-20 Akim Demaille <akim@epita.fr>
581
582 * src/bison.s1: Remove, we now use directly...
583 * src/bison.simple: this.
584 * src/Makefile.am: Use pkgdata instead of data.
585
5862000-12-20 Akim Demaille <akim@epita.fr>
587
588 * src/files.c (guard_obstack): New.
589 (open_files): Initialize it.
590 (output_files): Dump it...
591 * src/files.h: Export it.
592 * src/reader.c (copy_guard): Use it.
593
5942000-12-19 Akim Demaille <akim@epita.fr>
595
596 * src/files.c (outfile, defsfile, actfile): Removed as global
597 vars.
598 (open_files): Don't compute them.
599 (output_files): Adjust.
600 (base_name, short_base_name): Be global.
601 Adjust dependencies.
602
6032000-12-19 Akim Demaille <akim@epita.fr>
604
605 * src/files.c (strsuffix): New.
606 (stringappend): Be just like strcat but allocate.
607 (base_names): Eve out from open_files.
608 Try to simplify the rather hairy computation of base_name and
609 short_base_name.
610 (open_files): Use it.
611 * tests/suite.at (Checking output file names): New test.
612
6132000-12-19 Akim Demaille <akim@epita.fr>
614
615 * src/system.h (obstack_grow_literal_string): Rename as...
616 (obstack_grow_string): this.
617 * src/output.c (output_parser): Recognize `%% actions' instead of
618 `$'.
619 * src/bison.s1: s/$/%% actions/.
620 * src/bison.hairy: Likewise.
621
6222000-12-19 Akim Demaille <akim@epita.fr>
623
624 * src/output.c (output_parser): Compute the `#line' lines when
625 there are.
626 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
627 Suggested by Hans Aberg.
628
6292000-12-19 Akim Demaille <akim@epita.fr>
630
631 Let the handling of the skeleton files be local to the procedures
632 that use it.
633
634 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
635 longer static.
636 (fparser, open_extra_files): Remove.
637 (open_files, output_files): Don't take care of fparser.
638 * src/files.h: Adjust.
639 * src/output.c (output_parser): Open and close the file to the
640 skeleton.
641 * src/reader.c (read_declarations): When %semantic_parser, open
642 fguard.
643
6442000-12-19 Akim Demaille <akim@epita.fr>
645
646 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
647 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
648
6492000-12-19 Akim Demaille <akim@epita.fr>
650
651 * src/files.c (open_files): Yipee! We no longer need all the code
652 looking for `/tmp' since we have no tmp file.
653
6542000-12-19 Akim Demaille <akim@epita.fr>
655
656 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
657 New macros.
658 * src/files.c (open_files): Less dependency on MSDOS etc.
659
6602000-12-14 Akim Demaille <akim@epita.fr>
661
662 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
663 Provide a default definition.
664 Use it when executing the default @ action.
665 * src/reader.c (reader_output_yylsp): No longer include
666 `timestamp' and `text' in the default YYLTYPE.
667
6682000-12-12 Akim Demaille <akim@epita.fr>
669
670 * src/reader.c (copy_definition, parse_union_decl, copy_action)
671 (copy_guard): Quote the file names.
672 Reported by Laurent Mascherpa.
673
6742000-12-12 Akim Demaille <akim@epita.fr>
675
676 * src/output.c (output_headers, output_program, output): Be sure
677 to escape special characters when outputting filenames.
678 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
679 (output_headers): Don't depend on them, Use ACTSTR.
680
6812000-11-17 Akim Demaille <akim@epita.fr>
682
683 * lib/obstack.h: Formatting changes.
684 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
685 prevents type checking.
686 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
687 cast the value to (void *): assigning a `foo *' to a `void *'
688 variable is valid.
689 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
690 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
691 append characters.
692
6932000-11-17 Akim Demaille <akim@epita.fr>
694
695 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
696 as...
697 (suite.m4, regression.m4, calc.m4): these.
698 * tests/atgeneral.m4: Update from CVS Autoconf.
699
7002000-11-17 Akim Demaille <akim@epita.fr>
701
702 * tests/regression.m4 (%union and --defines): New test,
703 demonstrating a current bug in the obstack implementation.
704
7052000-11-17 Akim Demaille <akim@epita.fr>
706
707 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
708 macros.
709 Use them to declare the variables which are global or local to
710 `yyparse'.
711
7122000-11-17 Akim Demaille <akim@epita.fr>
713
714 * acconfig.h: Remove, no longer used.
715
7162000-11-07 Akim Demaille <akim@epita.fr>
717
718 * src: s/Copyright (C)/Copyright/g.
719
7202000-11-07 Akim Demaille <akim@epita.fr>
721
722 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
723 defining.
724 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
725
7262000-11-07 Akim Demaille <akim@epita.fr>
727
728 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
729 Merge in a single CPP if/else.
730
7312000-11-07 Akim Demaille <akim@epita.fr>
732
733 * src/output.c (output): Remove useless variables.
734 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
735 argument `data' for consistency with the prototypes.
736 Qualify it `const'.
737 (obstack_copy, obstack_copy0): Rename the second argument as
738 `address' for consistency. Qualify it `const'.
739 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
740 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
741 `const' their input argument (`data' or `address').
742 Adjust the corresponding macros to include `const' in casts.
743
7442000-11-03 Akim Demaille <akim@epita.fr>
745
746 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
747 s/PFILE1/BISON_HAIRY/.
748 Adjust dependencies.
749
7502000-11-03 Akim Demaille <akim@epita.fr>
751
752 For some reason, this was not applied.
753
754 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
755 `unlink': it's no longer used.
756
7572000-11-03 Akim Demaille <akim@epita.fr>
758
759 * src/files.c (skeleton_find): New function, eved out of...
760 (open_files, open_extra_files): here.
761
7622000-11-03 Akim Demaille <akim@epita.fr>
763
764 Don't use `atexit'.
765
766 * src/files.c (obstack_save): New function.
767 (done): Rename as...
768 (output_files): this.
769 Use `obstack_save'.
770 * src/main.c (main): Don't use `atexit' to register `done', since
771 it no longer has to remove tmp files, just call `output_files'
772 when there are no errors.
773
7742000-11-02 Akim Demaille <akim@epita.fr>
775
776 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
777 `unlink': it's no longer used.
778 * src/files.h: Formatting changes.
779
7802000-11-02 Akim Demaille <akim@epita.fr>
781
782 Remove the last uses of mktemp and unlink/delete.
783
784 * src/files.c (fdefines, ftable): Removed.
785 (defines_ostack, table_obstack): New.
786 Adjust dependencies of the former into uses of the latter.
787 * src/output.c (output_short_or_char_table, output_short_table):
788 Convert to using obstacks.
789 * src/reader.c (copy_comment2): Accept one FILE * and two
790 obstacks.
791 (output_token_defines, reader_output_yylsp): Use obstacks.
792 * src/system.h (obstack_fgrow3): New.
793
7942000-11-01 Akim Demaille <akim@epita.fr>
795
796 Change each use of `fattrs' into a use of `attrs_obstack'.
797
798 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
799 * src/files.c (fattrs): Remove.
800 (attrs_obstack): New.
801 Adjust all dependencies.
802 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
803
8042000-11-01 Akim Demaille <akim@epita.fr>
805
806 Introduce obstacks.
807 Change each use of `faction' into a use of `action_obstack'.
808
809 * lib/obstack.h, lib/obstack.c: New files.
810 * src/files.c (faction): Remove.
811 (action_obstack): New.
812 Adjust all dependencies.
813
8142000-10-20 Akim Demaille <akim@epita.fr>
815
816 * lib/quote.h (PARAMS): New macro. Use it.
817
8182000-10-16 Akim Demaille <akim@epita.fr>
819
820 * src/output.c (output_short_or_char_table): New function.
821 (output_short_table, output_token_translations): Use it.
822 (goto_actions): Use output_short_table.
823
8242000-10-16 Akim Demaille <akim@epita.fr>
825
826 * src/symtab.c (bucket_new): New function.
827 (getsym): Use it.
828
829 * src/output.c (output_short_table): New argument to display the
830 comment associated with the table.
831 Adjust dependencies.
832 (output_gram): Use it.
833 (output_rule_data): Nicer output layout for YYTNAME.
834
8352000-10-16 Akim Demaille <akim@epita.fr>
836
837 * src/lex.c (read_typename): New function.
838 (lex): Use it.
839 * src/reader.c (copy_dollar): Likewise.
840
8412000-10-16 Akim Demaille <akim@epita.fr>
842
843 * src/reader.c (copy_comment2): Expect the input stream to be on
844 the `/' which is suspected to open a comment, instead of being
845 called after `//' or `/*' was read.
846 (copy_comment, copy_definition, parse_union_decl, copy_action)
847 (copy_guard): Adjust.
848
8492000-10-16 Akim Demaille <akim@epita.fr>
850
851 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
852 `read_signed_integer'.
853
8542000-10-16 Akim Demaille <akim@epita.fr>
855
856 * src/reader.c (copy_dollar): New function.
857 (copy_guard, copy_action): Use it.
858
8592000-10-16 Akim Demaille <akim@epita.fr>
860
861 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
862 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
863 New files, from Fileutils 4.0.27.
864 * src/main.c (printable_version): Remove.
865 * src/lex.c, src/reader.c: Use `quote'.
866
8672000-10-04 Akim Demaille <akim@epita.fr>
868
869 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
870
8712000-10-04 Akim Demaille <akim@epita.fr>
872
873 * doc/bison.texinfo: Various typos spotted by Neil Booth.
874
8752000-10-04 Akim Demaille <akim@epita.fr>
876
877 When a literal string is used to define two different tokens,
878 `bison -v' segfaults.
879 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
880
881 * tests/regression.m4: New file.
882 Include the core of the sample provided by Piotr Gackiewicz.
883 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
884 properly.
885
8862000-10-04 Akim Demaille <akim@epita.fr>
887
888 * src/reader.c (parse_expect_decl): Keep `count' within the size
889 of `buffer'.
890 From Neil Booth.
891
8922000-10-02 Paul Eggert <eggert@twinsun.com>
893
894 * bison.s1 (yyparse): Assign the default value
895 unconditionally, to avoid a GCC warning and make the parser a
896 tad smaller.
897
8982000-10-02 Akim Demaille <akim@epita.fr>
899
900 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
901 options.
902
9032000-10-02 Akim Demaille <akim@epita.fr>
904
905 * src/derives.c, src/print.c, src/reduce.c: To ease the
906 translation, move some `\n' out of the translated strings.
907
9082000-10-02 Akim Demaille <akim@epita.fr>
909
910 The location tracking mechanism is precious for parse error
911 messages. Nevertheless, it is enabled only when `@n' is used in
912 the grammar, which is a different issue (you can use it in error
913 message, but not in the grammar per se). Therefore, there should
914 be another means to enable it.
915
916 * src/getargs.c (getargs): Support `--locations'.
917 (usage): Report it.
918 * src/getargs.h (locationsflag): Export it.
919 * src/lex.c (percent_table): Support `%locations'.
920 * src/reader.c (yylsp_needed): Remove this variable, now replaced
921 with `locationsflag'.
922 * doc/bison.texinfo: Document `--locations' and `%locations'.
923 Sort the options.
924 * tests/calc.m4: Test it.
925
926 For regularity of the names, replace each
927 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
928 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
929 In addition replace each `flag' with `_flag'.
930
9312000-10-02 Akim Demaille <akim@epita.fr>
932
933 Also test parse error messages, including with YYERROR_VERBOSE.
934
935 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
936 associative).
937 Use it to check the computations.
938 Use it to check `nonassoc' is honored.
939 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
940 `--yyerror-verbose'.
941 (_AT_CHECK_CALC): Adjust to this option.
942 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
943
9442000-10-02 Akim Demaille <akim@epita.fr>
945
946 Test also `--verbose', `--defines' and `--name-prefix'. Testing
947 the latter demonstrates a flaw in the handling of non debugging
948 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
949 was used in order to simplify:
950
951 #if YYDEBUG
952 if (yydebug)
953 {
954 ...
955 }
956 #endif
957
958 into
959
960 if (yydebug)
961 {
962 ...
963 }
964
965 unfortunately this leads to a CPP conflict when
966 `--name-prefix=foo' is used since it produces `#define yydebug
967 foodebug'.
968
969 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
970 (YYDPRINTF): New macro.
971 Spread its use.
972 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
973 the bison options.
974 Also test `--verbose', `--defines' and `--name-prefix'.
975
9762000-10-02 Akim Demaille <akim@epita.fr>
977
978 Improve the readability of the produced parsers.
979
980 * src/bison.s1: Formatting changes.
981 Improve the comment related to the `$' mark.
982 (yydefault): Don't fall through to `yyresume': `goto' there.
983 * src/output.c (output_parser): When the `$' is met, skip the end
984 of its line.
985 New variable, `number_of_dollar_signs', to check there's exactly
986 one `$' in the parser skeleton.
987
9882000-10-02 Akim Demaille <akim@epita.fr>
989
990 * lib/xstrdup.c: New file, from the fileutils.
991 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
992 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
993 instead of strlen + xmalloc + strcpy.
994 * src/symtab.c (copys): Remove, use xstrdup instead.
995
9962000-10-02 Akim Demaille <akim@epita.fr>
997
998 * src/gram.h (associativity): New enum type which replaces the
999 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
1000 `right_assoc', `left_assoc' and `non_assoc'.
1001 Adjust all dependencies.
1002 * src/reader.c: Formatting changes.
1003 (LTYPESTR): Don't define it, use it as a literal in
1004 `reader_output_yylsp'.
1005 * src/symtab.h (symbol_class): New enum type which replaces the
1006 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
1007 `sunknown', `stoken and `snterm'.
1008
10092000-10-02 Akim Demaille <akim@epita.fr>
1010
1011 * src/getargs.c (fixed_outfiles): Rename as...
1012 (yaccflag): for consistency and accuracy.
1013 Adjust dependencies.
1014
10152000-10-02 Akim Demaille <akim@epita.fr>
1016
1017 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
1018 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
1019 difficult and introduced a lot of core dump. It turns out that
1020 Bison used an implementation of `xmalloc' based on `calloc', and
1021 at various places it does depend upon the initialization to 0. I
1022 have not tried to isolate the pertinent places, and all the former
1023 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
1024 someone should address this issue.
1025
1026 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
1027 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
1028 files.
1029 Adjust dependencies.
1030 * src/warshall.h: New file.
1031 Propagate.
1032
10332000-10-02 Akim Demaille <akim@epita.fr>
1034
1035 Various anti-`extern in *.c' changes.
1036
1037 * src/system.h: Include `assert.h'.
1038
10392000-10-02 Akim Demaille <akim@epita.fr>
1040
1041 * src/state.h (nstates, final_state, first_state, first_shift)
1042 (first_reduction): Move their exportation from here...
1043 * src/LR0.h: to here.
1044 Adjust dependencies.
1045 * src/getargs.c (statisticsflag): New variable.
1046 Add support for `--statistics'.
1047 Adjust dependencies.
1048
1049 Remove a lot of now useless `extern' statements in most files.
1050
10512000-10-02 Akim Demaille <akim@epita.fr>
1052
1053 * src/LR0.h: New file.
1054 Propagate its use.
1055
10562000-10-02 Akim Demaille <akim@epita.fr>
1057
1058 * src/print.h: New file.
1059 Propagate its use.
1060 * src/print.c: Formatting and ordering changes.
1061 (verbose, terse): Replace with...
1062 (print_results): this new function.
1063 Adjust dependencies.
1064
10652000-10-02 Akim Demaille <akim@epita.fr>
1066
1067 * src/conflicts.c (conflict_report): New function.
1068 (conflict_log, verbose_conflict_log): Replace with...
1069 (print_conflicts): this function.
1070 Adjust dependencies.
1071 * src/conflicts.h: New file.
1072 Propagate its inclusion.
1073
10742000-10-02 Akim Demaille <akim@epita.fr>
1075
1076 * src/nullable.h: New file.
1077 Propagate its inclusion.
1078 * src/nullable.c: Formatting changes.
1079
10802000-10-02 Akim Demaille <akim@epita.fr>
1081
1082 * src/reduce.h: New file.
1083 Propagate its inclusion.
1084 * src/reduce.c: Topological sort and other formatting changes.
1085 (bool, TRUE, FALSE): Move their definition to...
1086 * src/system.h: here.
1087
10882000-10-02 Akim Demaille <akim@epita.fr>
1089
1090 * src/files.c: Formatting changes.
1091 (tryopen, tryclose, openfiles): Rename as...
1092 (xfopen, xfclose, open_files): this.
1093 (stringappend): static.
1094 * src/files.h: Complete the list of exported symbols.
1095 Propagate its use.
1096
10972000-10-02 Akim Demaille <akim@epita.fr>
1098
1099 * src/reader.h: New file.
1100 Propagate its use instead of tedious list of `extern' and
1101 prototypes.
1102 * src/reader.c: Formatting changes, topological sort,
1103 s/register//.
1104
11052000-10-02 Akim Demaille <akim@epita.fr>
1106
1107 * src/lex.h: Prototype `lex.c' exported functions.
1108 * src/reader.c: Adjust.
1109 * src/lex.c: Formatting changes.
1110 (safegetc): Rename as...
1111 (xgetc): this.
1112
11132000-10-02 Akim Demaille <akim@epita.fr>
1114
1115 * src/lalr.h: New file.
1116 Propagate its inclusion instead of prototypes and `extern'.
1117 * src/lalr.c: Formatting changes, topological sorting etc.
1118
11192000-10-02 Akim Demaille <akim@epita.fr>
1120
1121 * src/output.c (token_actions): Introduce a temporary array,
1122 YYDEFACT, that makes it possible for this function to use
1123 output_short_table.
1124
11252000-10-02 Akim Demaille <akim@epita.fr>
1126
1127 `user_toknums' is output as a `short[]' in `output.c', while it is
1128 defined as a `int[]' in `reader.c'. For consistency with the
1129 other output tables, `user_toknums' is now defined as a table of
1130 shorts.
1131
1132 * src/reader.c (user_toknums): Be a short table instead of an int
1133 table.
1134 Adjust dependencies.
1135
1136 Factor the short table outputs.
1137
1138 * src/output.c (output_short_table): New function.
1139 * src/output.c (output_gram, output_stos, output_rule_data)
1140 (output_base, output_table, output_check): Use it.
1141
11422000-10-02 Akim Demaille <akim@epita.fr>
1143
1144 * src/output.c (output): Topological sort of the functions, in
1145 order to get rid of the `static' prototypes.
1146 No longer use `register'.
1147 * src/output.h: New file.
1148 Propagate its inclusion in files explicitly prototyping functions
1149 from output.c.
1150
11512000-09-21 Akim Demaille <akim@epita.fr>
1152
1153 * src/atgeneral.m4: Update from Autoconf.
1154
11552000-09-21 Akim Demaille <akim@epita.fr>
1156
1157 * src/closure.h: New file.
1158 * src/closure.c: Formatting changes, topological sort over the
1159 functions, use of closure.h.
1160 (initialize_closure, finalize_closure): Rename as...
1161 (new_closure, free_closure): these. Adjust dependencies.
1162 * src/LR0.c: Formatting changes, topological sort, use of
1163 cloture.h.
1164 (initialize_states): Rename as...
1165 (new_states): this.
1166 * src/Makefile.am (noinst_HEADERS): Adjust.
1167
11682000-09-20 Akim Demaille <akim@epita.fr>
1169
1170 * src/acconfig.h: Don't protect config.h against multiple
1171 inclusion.
1172 Don't define PARAMS.
1173 * src/system.h: Define PARAMS.
1174 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
1175 purpose of config.h. system.h must not try to fix wrong
1176 definitions in config.h.
1177
11782000-09-20 Akim Demaille <akim@epita.fr>
1179
1180 * src/derives.h: New file.
1181 * src/main.c, src/derives.h: Use it.
1182 Formatting changes.
1183 * src/Makefile.am (noinst_HEADERS): Adjust.
1184
11852000-09-20 Akim Demaille <akim@epita.fr>
1186
1187 * tests/atgeneral.m4: Update from Autoconf.
1188 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
1189 (AT_CHECK_CALC): New macros.
1190 Use these macros to test bison with options `', `--raw',
1191 `--debug', `--yacc', `--yacc --debug'.
1192
11932000-09-19 Akim Demaille <akim@epita.fr>
1194
1195 * src/output.c: Formatting changes.
1196 * src/machine.h: Remove, leaving its contents in...
1197 * src/system.h: here.
1198 Include stdio.h.
1199 Adjust all dependencies on stdio.h and machine.h.
1200 * src/getargs.h: New file.
1201 Let all `extern' declarations about getargs.c be replaced with
1202 inclusion of `getargs.h'.
1203 * src/Makefile.am (noinst_HEADERS): Adjust.
1204
1205 * tests/calc.m4 (yyin): Be initialized in main, not on the global
1206 scope.
1207 (yyerror): Returns void, not int.
1208 * doc/bison.texinfo: Formatting changes.
1209
12102000-09-19 Akim Demaille <akim@epita.fr>
1211
1212 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
1213 portable.
1214
12152000-09-18 Akim Demaille <akim@epita.fr>
1216
1217 * configure.in: Append WARNING_CFLAGS to CFLAGS.
1218 * src/Makefile.am (INCLUDES): Don't.
1219 Be ready to fetch headers in lib/.
1220
12212000-09-18 Akim Demaille <akim@epita.fr>
1222
1223 * doc/bison.texinfo: Update the copyright.
1224 ANSIfy and GNUify the examples.
1225 Remove the old menu.
1226
12272000-09-18 Akim Demaille <akim@epita.fr>
1228
1229 First set of tests: use the `calc' example from the documentation.
1230
1231 * src/bison.s1 (yyparse): Condition the code using `yytname' which
1232 is defined only when YYDEBUG is.
1233 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
1234 * src/files.c (tryopen, tryclose): Formatting changes.
1235 Move to the top and be static.
1236 * src/reader.c (read_signed_integer): Likewise.
1237 * tests/calc.m4: New file.
1238 * Makefile.am, suite.m4: Adjust.
1239 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
1240
12412000-09-18 Akim Demaille <akim@epita.fr>
1242
1243 Add support for an Autotest test suite for Bison.
1244
1245 * m4/m4.m4, m4/atconfig.m4: New files.
1246 * m4/Makefile.am (EXTRA_DIST): Adjust.
1247 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
1248 files.
1249 * src/getargs.c: Display a more standard --version message.
1250 * src/reader.c (reader): Formatting changes.
1251 No longer depend upon VERSION_STRING.
1252 * configure.in: No longer use `dnl'.
1253 Set up the test suite and the new directory `tests/.
1254 (VERSION_STRING): Remove.
1255
12562000-04-14 Akim Demaille <akim@epita.fr>
1257
1258 * src/reader.c (copy_comment2): New function, same as former
1259 `copy_comment', but outputs into two FILE *.
1260 (copy_comment): Use it.
1261 (parse_union_decl): Use it.
1262 (get_type, parse_start_decl): Use the same `invalid' message.
1263 (parse_start_decl, parse_union_decl): Use the same `multiple'
1264 message.
1265 (parse_union_decl, copy_guard, copy_action): Use the same
1266 `unmatched' message.
1267 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
1268
12692000-03-31 Akim Demaille <akim@epita.fr>
1270
1271 * src/files.c (tryopen, tryclose): Move to the top.
1272 Be static.
1273
12742000-03-31 Akim Demaille <akim@epita.fr>
1275
1276 * src/main.c (main): Don't call `done', exit does it.
1277
12782000-03-31 Akim Demaille <akim@epita.fr>
1279
1280 * allocate.c: s/return (foo)/return foo/.
1281 * lalr.c: Likewise.
1282 * LR0.c: Likewise.
1283 * output.c: Likewise.
1284 * reader.c: Likewise.
1285 * symtab.c: Likewise.
1286 * vmsgetargs.c: Likewise.
1287
12882000-03-31 Akim Demaille <akim@epita.fr>
1289
1290 Clean up the error reporting functions.
1291
1292 * src/report.c: New file.
1293 * src/report.h: Likewise.
1294 * src/Makefile.am: Adjust.
1295 * m4/error.m4: New file.
1296 * m4/Makefile.am: Adjust.
1297 * configure.in (jm_PREREQ_ERROR): Call it.
1298 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
1299 Remove.
1300 (fatal, fatals): Remove. All callers use complain.c::fatal.
1301 (warn, warni, warns, warnss, warnss): Remove. All callers use
1302 complain.c::complain.
1303 (toomany): Remove, use fatal instead.
1304 * src/files.c (done): No argument, use complain_message_count.
1305 * src/main.c (main): Register `done' to `atexit'.
1306
1307 * src/getargs.c (usage): More `fputs', less `fprintf'.
1308
13092000-03-28 Akim Demaille <akim@epita.fr>
1310
1311 * lib/: New directory.
1312 * Makefile.am (SUBDIRS): Adjust.
1313 * configure.in: Adjust.
1314 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
1315 useless.
1316 * src/alloca.c: Moved to lib/.
1317 * src/getopt.c: Likewise.
1318 * src/getopt1.c: Likewise.
1319 * src/getopt.h: Likewise.
1320 * src/ansi2knr.c: Likewise.
1321 * src/ansi2knr.1: Likewise.
1322 * src/Makefile.am: Adjust.
1323 * lib/Makefile.am: New file.
1324
13252000-03-28 Akim Demaille <akim@epita.fr>
1326
1327 * src/getargs.c (usage): Refresh the help message.
1328
13292000-03-17 Akim Demaille <akim@epita.fr>
1330
1331 * src/getopt1.c: Updated from textutils 2.0e
1332 * src/getopt.c: Likewise.
1333 * src/getopt.h: Likewise.
1334
13352000-03-17 Akim Demaille <akim@epita.fr>
1336
1337 * src/Makefile.am (bison.simple): Fix the awk program: quote only
1338 the file name, not the whole `#line LINE FILE'.
1339
13402000-03-17 Akim Demaille <akim@epita.fr>
1341
1342 On syntax errors, report the token on which we choked.
1343
1344 * src/bison.s1 (yyparse): In the label yyerrlab, when
1345 YYERROR_VERBOSE, add yychar in msg.
1346
13472000-03-17 Akim Demaille <akim@epita.fr>
1348
1349 * src/reader.c (copy_at): New function.
1350 (copy_guard): Use it.
1351 (copy_action): Use it.
1352
13532000-03-17 Akim Demaille <akim@epita.fr>
1354
1355 Be kind to translators, save some useless translations.
1356
1357 * src/main.c (banner): New function.
1358 (fatal_banner): Use it.
1359 (warn_banner): Use it.
1360
13612000-03-17 Akim Demaille <akim@epita.fr>
1362
1363 * src/reader.c (copy_definition): Use copy_string and
1364 copy_comment. Removed now unused `match', `ended',
1365 `cplus_comment'.
1366 (copy_comment, copy_string): Moved, to be visible from
1367 copy_definition.
1368
13692000-03-17 Akim Demaille <akim@epita.fr>
1370
1371 * src/reader.c (copy_string): Declare `static inline'. No
1372 problems with inline, since it is checked by configure.
1373 (copy_comment): Likewise.
1374
13752000-03-17 Akim Demaille <akim@epita.fr>
1376
1377 * src/reader.c (packsymbols): Formatting changes.
1378
13792000-03-17 Akim Demaille <akim@epita.fr>
1380
1381 * src/reader.c (copy_comment): New function, factored out from:
1382 (copy_action): Use it. Removed now unused `match', `ended',
1383 `cplus_comment'.
1384 (copy_guard): Likewise.
1385
13862000-03-17 Akim Demaille <akim@epita.fr>
1387
1388 * src/reader.c (copy_string): New function, factored out from:
1389 (copy_action): Use it.
1390 (copy_guard): Likewise.
1391
13922000-03-17 Akim Demaille <akim@epita.fr>
1393
1394 Change the handling of @s so that they behave exactly like $s.
1395 There is now a pseudo variable @$ (readble and writable), location
1396 of the lhs of the rule (by default ranging from the location of
1397 the first symbol of the rhs, to the location of the last symbol,
1398 or, if the rhs is empty, YYLLOC).
1399
1400 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
1401 yyval.
1402 (yyparse): When providing a default semantic action, provide a
1403 default location action.
1404 (after the $): No longer change `*YYLSP', just stack YYLOC the
1405 same way you stack YYVAL.
1406 * src/reader.c (read_declarations): Use warns.
1407 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
1408 (copy_action, case '@'): Likewise.
1409 Use a standard error message, to save useless work from
1410 translators.
1411
14122000-03-17 Akim Demaille <akim@epita.fr>
1413
1414 * src/bison.s1: Formatting and cosmetics changes.
1415 * src/reader.c: Likewise.
1416 Update the Copyright notice.
1417
14182000-03-17 Akim Demaille <akim@epita.fr>
1419
1420 * src/bison.s1 (#line): All set to `#line' only, since the
1421 Makefile now handles them.
1422
14232000-03-16 Akim Demaille <akim@epita.fr>
1424
1425 * src/output.c (output_rule_data): Output the documentation of
1426 some of the tables.
1427 (Copyright notice): Update.
1428 Formatting changes.
1429
14302000-03-16 Akim Demaille <akim@epita.fr>
1431
1432 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
1433 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
1434 One `#if YYDEBUG' remains, since it uses variables which are
1435 defined only if `YYDEBUG != 0'.
1436
14372000-03-16 Akim Demaille <akim@epita.fr>
1438
1439 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
1440 and related variables so that the similarities are highlighted.
1441
14422000-03-16 Akim Demaille <akim@epita.fr>
1443
1444 * src/bison.s1: Properly indent CPP directives.
1445
14462000-03-16 Akim Demaille <akim@epita.fr>
1447
1448 * src/bison.s1: Properly indent the `alloca' CPP section.
1449
14502000-03-16 Akim Demaille <akim@epita.fr>
1451
1452 Do not hard code values of directories in `configure.in'.
1453 Update the `configure' tool chain.
1454
1455 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
1456 src/makefile.am.
1457 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
1458 (AC_OUTPUT): Add m4/Makefile.
1459 Bump to bison 1.28a, 1.29 has never been released.
1460 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
1461 handled via src/Makefile.am.
1462 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
1463 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
1464 autoheader.
1465 * Makefile.am (SUBDIRS): Add m4.
1466 (ACLOCAL_AM_FLAGS): New variable.
1467 (AUTOMAKE_OPTIONS): Add check-news.
1468 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
1469 the proper line number and file name.
1470 (DEFS): Propagate the location of bison library files and of the
1471 locale files.
1472 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
1473 builddir.
1474 * acinclude.m4: Remove, replaced by the directory m4.
1475 * m4/Makefile.am (EXTRA_DIST): New variable.
1476 * m4/gettext.m4: New file, from the fileutils.
1477 * m4/lcmessage.m4: Likewise
1478 * m4/progtest.m4: Likewise.
1479 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
1480
14812000-03-10 Akim Demaille <akim@epita.fr>
1482
1483 * src/closure.c:
1484 Formatting changes of various comments.
1485 Respect the GNU coding standards at various places.
1486 Don't use `_()' when no translation is needed.
1487
14881999-12-13 Jesse Thilo <jthilo@gnu.org>
1489
1490 * src/files.c:
1491 OS/2 honors TMPDIR environment variable.
1492
14931999-12-13 Jesse Thilo <jthilo@gnu.org>
1494
1495 * doc/bison.texinfo: Tweaked spelling and grammar.
1496 Updated ISBN.
1497 Removed reference to price of printed copy.
1498 Mention BISON_SIMPLE and BISON_HAIRY.
1499
15001999-12-13 Jesse Thilo <jthilo@gnu.org>
1501
1502 * configure.in, NEWS:
1503 Bison 1.29 released.
1504
15051999-10-27 Jesse Thilo <jthilo@gnu.org>
1506
1507 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
1508 Added reference card.
1509
15101999-07-26 Jesse Thilo <jthilo@gnu.org>
1511
1512 * po/ru.po: Added Russian translation.
1513
15141999-07-26 Jesse Thilo <jthilo@gnu.org>
1515
1516 * configure.in: Added Russian translation.
1517
15181999-07-06 Jesse Thilo <jthilo@gnu.org>
1519
1520 * configure.in, NEWS, README:
1521 Released version 1.28.
1522
15231999-06-14 Jesse Thilo <jthilo@gnu.org>
1524
1525 * src/system.h:
1526 Squashed redefinition warning on some systems.
1527
1528 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
1529 Have configure build version string instead of relying on ANSI string
1530 concatentation.
1531
15321999-06-14 Jesse Thilo <jthilo@gnu.org>
1533
1534 * po/POTFILES.in: Got rid of version.c.
1535
15361999-06-14 Jesse Thilo <jthilo@gnu.org>
1537
1538 * acconfig.h, configure.in:
1539 Have configure build version string instead of relying on ANSI string
1540 concatentation.
1541
15421999-06-08 Jesse Thilo <jthilo@gnu.org>
1543
1544 * doc/bison.1:
1545 Dropped mention of `+' for long-named options.
1546
15471999-05-30 Jesse Thilo <jthilo@gnu.org>
1548
1549 * src/files.c: Added <unistd.h> for unlink().
1550
1551 * src/Makefile.am, src/system.h:
1552 I18n fixes.
1553
15541999-05-30 Jesse Thilo <jthilo@gnu.org>
1555
1556 * README: Added a FAQ list.
1557
1558 * configure.in, acconfig.h:
1559 I18n fixes.
1560
15611999-05-30 Jesse Thilo <jthilo@gnu.org>
1562
1563 * doc/FAQ, doc/Makefile.am:
1564 Added a FAQ list.
1565
15661999-05-19 Jesse Thilo <jthilo@gnu.org>
1567
1568 * src/alloc.h, src/symtab.h, src/version.c:
1569 Protected inclusion of "config.h" with HAVE_CONFIG_H.
1570
15711999-04-18 Jesse Thilo <jthilo@gnu.org>
1572
1573 * src/.cvsignore, src/Makefile.am:
1574 Reorganized: sources in `src', documentation in `doc'.
1575
1576 * src/lex.c (literalchar):
1577 fixed the code for escaping double quotes (thanks
1578 Jonathan Czisny.)
1579
15801999-04-18 Jesse Thilo <jthilo@gnu.org>
1581
1582 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
1583 Adjusted paths to reflect directory reorganization.
1584
15851999-04-18 Jesse Thilo <jthilo@gnu.org>
1586
1587 * doc/.cvsignore, doc/Makefile.am:
1588 Reorganized: sources in `src', documentation in `doc'.
1589
15901999-04-18 Jesse Thilo <jthilo@gnu.org>
1591
1592 * configure.in:
1593 Updated AC_INIT file to reflect directory reorganization.
1594
1595 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
1596 Reorganized: sources in `src', documentation in `doc'.
1597
15981999-04-13 Jesse Thilo <jthilo@gnu.org>
1599
1600 * src/allocate.c:
1601 Don't declare calloc() and realloc() if not necessary.
1602
16031999-04-13 Jesse Thilo <jthilo@gnu.org>
1604
1605 * configure.in, acconfig.h, acinclude.m4:
1606 Don't declare calloc() and realloc() if not necessary.
1607
16081999-03-23 Jesse Thilo <jthilo@gnu.org>
1609
1610 * po/.cvsignore: Added i18n support.
1611
16121999-03-23 Jesse Thilo <jthilo@gnu.org>
1613
1614 * acconfig.h, configure.in, Makefile.am:
1615 Added i18n support.
1616
16171999-03-22 Jesse Thilo <jthilo@gnu.org>
1618
1619 * src/bison.s1: Fixed #line numbers.
1620
16211999-03-15 Jesse Thilo <jthilo@gnu.org>
1622
1623 * po/es.po, po/fr.po, po/nl.po, po/de.po:
1624 Added PO files from Translation Project.
1625
16261999-03-03 Jesse Thilo <jthilo@gnu.org>
1627
1628 * Makefile.am:
1629 Added support for non-ANSI compilers (ansi2knr).
1630
16311999-02-16 Jesse Thilo <jthilo@gnu.org>
1632
1633 * configure.in: Bumped version number to 1.27.
1634
1635 * Makefile.am:
1636 Added `bison.simple' to list of files removed by `make distclean'.
1637
16381999-02-12 Jesse Thilo <jthilo@gnu.org>
1639
1640 * src/files.c, src/files.h:
1641 Defined locations of parser files in config.h instead of Makefile.
1642
16431999-02-12 Jesse Thilo <jthilo@gnu.org>
1644
1645 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
1646 Defined locations of parser files in config.h instead of Makefile.
1647
16481999-02-09 Jesse Thilo <jthilo@gnu.org>
1649
1650 * Makefile.am:
1651 Removed inappropriate use of $< macro.
1652
16531999-02-05 Jesse Thilo <jthilo@gnu.org>
1654
1655 * po/Makefile.in.in, po/POTFILES.in:
1656 Add `po' directory skeleton.
1657
16581999-01-27 Jesse Thilo <jthilo@gnu.org>
1659
1660 * README: Document help-bison list.
1661
1662 * configure.in: Add check for mkstemp().
1663
16641999-01-20 Jesse Thilo <jthilo@gnu.org>
1665
1666 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
1667 Hush a few compiler warnings.
1668
1669 * src/files.c:
1670 Add tryclose(), which verifies that fclose was successful.
1671 Hush a couple of compiler warnings.
1672
16731999-01-20 Jesse Thilo <jthilo@gnu.org>
1674
1675 * Makefile.am, OChangeLog:
1676 ChangeLog is now automatically generated. Include the old version as
1677 OChangeLog.
1678
16791999-01-14 Jesse Thilo <jthilo@gnu.org>
1680
1681 * 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:
1682 Update FSF address.
1683
16841999-01-14 Jesse Thilo <jthilo@gnu.org>
1685
1686 * doc/bison.texinfo: Fix formatting glitch.
1687
1688 * doc/bison.texinfo: Update FSF address.
1689
16901999-01-14 Jesse Thilo <jthilo@gnu.org>
1691
1692 * acconfig.h: Update FSF address.
1693
16941999-01-08 Jesse Thilo <jthilo@gnu.org>
1695
1696 * src/system.h:
1697 Don't define PACKAGE here, since config.h defines it.
1698
16991998-12-30 Jesse Thilo <jthilo@gnu.org>
1700
1701 * src/reader.c: Update copyright date.
1702
1703 * src/main.c:
1704 Ditch sprintf to statically-sized buffers in fatal/warn functions in
1705 favor of output directly to stderr (avoids buffer overruns).
1706
1707 * src/reader.c: Some checks for premature EOF.
1708
1709 * 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:
1710 Use prototypes if the compiler understands them.
1711
1712 * src/files.c: Honor TMPDIR on Unix hosts.
1713 Use prototypes if the compiler understands them.
1714
1715 * src/reader.c:
1716 Fix a couple of buffer overrun bugs.
1717 Use prototypes if the compiler understands them.
1718
1719 * src/system.h: Include unistd.h and ctype.h.
1720 Use #ifdef instead of #if for NLS symbols.
1721
17221998-12-30 Jesse Thilo <jthilo@gnu.org>
1723
1724 * doc/bison.texinfo:
1725 Delete comment "consider using @set for edition number, etc..." since
1726 we now are doing so.
1727
17281998-12-30 Jesse Thilo <jthilo@gnu.org>
1729
1730 * configure.in:
1731 Use prototypes if the compiler understands them.
1732
1733 * NEWS: Document 1.26 highlights.
1734
1735 * Makefile.am: Require Automake 1.3 or later.
1736
1737 * acconfig.h:
1738 Use prototypes if the compiler understands them.
1739
17401998-12-29 Jesse Thilo <jthilo@gnu.org>
1741
1742 * src/version.c:
1743 Use VERSION symbol from automake for version number.
1744
17451998-12-29 Jesse Thilo <jthilo@gnu.org>
1746
1747 * acconfig.h, configure.in, version.cin:
1748 Use VERSION symbol from automake for version number.
1749
17501998-11-28 Jesse Thilo <jthilo@gnu.org>
1751
1752 * Makefile.am:
1753 Distribute original version of simple parser (bison.s1), not built
1754 version (bison.simple).
1755
17561998-11-28 Jesse Thilo <jthilo@gnu.org>
1757
1758 * doc/bison.texinfo: Add info dir entry.
1759
1760 * doc/bison.texinfo:
1761 Let automake put version number into documentation.
1762
17631998-11-26 Jesse Thilo <jthilo@gnu.org>
1764
1765 * src/bison.cld, src/build.com, src/vmshlp.mar:
1766 Add non-RCS files from /gd/gnu/bison.
1767
17681998-11-26 Jesse Thilo <jthilo@gnu.org>
1769
1770 * doc/bison.1:
1771 Document the BISON_HAIRY and BISON_SIMPLE variables.
1772
17731998-11-25 Jesse Thilo <jthilo@gnu.org>
1774
1775 * src/version.c: Build version.c automatically.
1776
1777 * src/reader.c:
1778 Fix token numbering (used to start at 258, not 257).
1779
1780 * src/system.h: Include config.h.
1781
1782 * src/getargs.c: Update bug report address.
1783
1784 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
1785 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
1786
17871998-11-25 Jesse Thilo <jthilo@gnu.org>
1788
1789 * Makefile.am:
1790 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1791
1792 * configure.in, version.cin:
1793 Build version.c automatically.
1794
1795 * AUTHORS: Add AUTHORS file.
1796
1797 * README: Update bug report address.
1798
1799 * bison.simple:
1800 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
1801
1802 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
1803 Add automake stuff.
1804
18051998-11-25 Jesse Thilo <jthilo@gnu.org>
1806
1807 * doc/bison.texinfo: Clean up some formatting.
1808
18091998-05-05 Richard Stallman <rms@gnu.org>
1810
1811 * doc/bison.texinfo:
1812 Explain better why to make a pure parser.
1813
18141998-01-05 Richard Stallman <rms@gnu.org>
1815
1816 * src/files.c (openfiles):
1817 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
1818 find a temporary directory, if possible. Do not unlink files while
1819 they are open.
1820
18211997-08-25 Richard Stallman <rms@gnu.org>
1822
1823 * src/reader.c (stack_offset;):
1824 Change some warni to warns.
1825
1826 * src/lex.c (literalchar): Use warns, not warni.
1827
18281997-06-28 Richard Stallman <rms@gnu.org>
1829
1830 * src/bison.s1: Add a Bison version comment.
1831
1832 * src/main.c (fatal, warn, berror):
1833 Use program_name.
1834
18351997-06-28 Richard Stallman <rms@gnu.org>
1836
1837 * Makefile.in (bison_version): New variable.
1838 (dist): Use that variable.
1839 (bison.s1): Substitute the Bison version into bison.simple.
1840
1841 * bison.simple: Add a Bison version comment.
1842
18431997-06-18 Richard Stallman <rms@gnu.org>
1844
1845 * src/main.c (fatal, warn, berror):
1846 Make error messages standard.
1847 (toomany): Improve error message text.
1848
1849 * 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:
1850 new.h renamed to alloc.h.
1851
18521997-06-18 Richard Stallman <rms@gnu.org>
1853
1854 * Makefile.in: new.h renamed to alloc.h.
1855
18561997-05-24 Richard Stallman <rms@gnu.org>
1857
1858 * src/lex.c (literalchar):
1859 Fix the code for escaping \, " and '.
1860
1861 (lex): Avoid trouble when there are many chars
1862 to discard in a char literal with just several chars in it.
1863
18641997-05-17 Richard Stallman <rms@gnu.org>
1865
1866 * src/bison.s1:
1867 Use malloc, if using alloca is troublesome.
1868 (YYSTACK_USE_ALLOCA): New flag macro.
1869 Define it for some systems and compilers.
1870 (YYSTACK_ALLOC): New macro.
1871 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1872 If it was malloc'd, free it.
1873
18741997-05-17 Richard Stallman <rms@gnu.org>
1875
1876 * bison.simple:
1877 Use malloc, if using alloca is troublesome.
1878 (YYSTACK_USE_ALLOCA): New flag macro.
1879 Define it for some systems and compilers.
1880 (YYSTACK_ALLOC): New macro.
1881 (yyparse): Use YYSTACK_ALLOC to allocate stack.
1882 If it was malloc'd, free it.
1883
18841997-04-23 Richard Stallman <rms@gnu.org>
1885
1886 * src/bison.s1:
1887 (alloca) [__hpux]: Always define as __builtin_alloca.
1888
18891997-04-23 Richard Stallman <rms@gnu.org>
1890
1891 * bison.simple:
1892 (alloca) [__hpux]: Always define as __builtin_alloca.
1893
18941997-04-22 Richard Stallman <rms@gnu.org>
1895
1896 * src/bison.s1:
1897 [__hpux]: Include alloca.h (right for HPUX 10)
1898 instead of declaring alloca (right for HPUX 9).
1899
1900 * src/bison.s1 (__yy_memcpy):
1901 Declare arg `count' as unsigned int.
1902 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1903
19041997-04-22 Richard Stallman <rms@gnu.org>
1905
1906 * bison.simple:
1907 [__hpux]: Include alloca.h (right for HPUX 10)
1908 instead of declaring alloca (right for HPUX 9).
1909
1910 * bison.simple (__yy_memcpy):
1911 Declare arg `count' as unsigned int.
1912 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
1913
19141997-01-03 Richard Stallman <rms@gnu.org>
1915
1916 * src/allocate.c: [__STDC__ or _MSC_VER]:
1917 Declare calloc and realloc to return void *.
1918
19191997-01-02 Richard Stallman <rms@gnu.org>
1920
1921 * src/system.h:
1922 [_MSC_VER]: Include stdlib.h and process.h.
1923 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
1924
1925 * src/main.c (main): Return FAILURE as a value.
1926 (printable_version): Declare arg as int, not char.
1927
19281997-01-02 Richard Stallman <rms@gnu.org>
1929
1930 * Makefile.in (dist):
1931 Explicitly check for symlinks, and copy them.
1932
19331996-12-19 Richard Stallman <rms@gnu.org>
1934
1935 * src/files.c:
1936 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
1937
19381996-12-18 Paul Eggert <eggert@gnu.org>
1939
1940 * src/bison.s1 (yyparse):
1941 If __GNUC__ and YYPARSE_PARAM are both defined,
1942 declare yyparse to have a void * argument.
1943
19441996-12-18 Paul Eggert <eggert@gnu.org>
1945
1946 * bison.simple (yyparse):
1947 If __GNUC__ and YYPARSE_PARAM are both defined,
1948 declare yyparse to have a void * argument.
1949
19501996-12-17 Richard Stallman <rms@gnu.org>
1951
1952 * src/reduce.c (nbits): Add some casts.
1953
19541996-08-12 Richard Stallman <rms@gnu.org>
1955
1956 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
1957
19581996-08-12 Richard Stallman <rms@gnu.org>
1959
1960 * bison.simple: Test _MSDOS as well as _MSDOS_.
1961
19621996-07-31 Richard Stallman <rms@gnu.org>
1963
1964 * src/bison.s1:
1965 [__sun && __i386]: Include alloca.h.
1966
19671996-07-31 Richard Stallman <rms@gnu.org>
1968
1969 * bison.simple:
1970 [__sun && __i386]: Include alloca.h.
1971
19721996-07-30 Richard Stallman <rms@gnu.org>
1973
1974 * src/bison.s1: Comment change.
1975
1976 * src/bison.s1: Test _MSDOS_, not MSDOS.
1977
19781996-07-30 Richard Stallman <rms@gnu.org>
1979
1980 * bison.simple: Comment change.
1981
1982 * bison.simple: Test _MSDOS_, not MSDOS.
1983
19841996-06-01 Richard Stallman <rms@gnu.org>
1985
1986 * 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:
1987 Insert `_' macro around many string constants.
1988
1989 * src/main.c:
1990 Insert `_' macro around many string constants.
1991
1992 (main): Call setlocale, bindtextdomain and textdomain.
1993
1994 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
1995 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
1996 [ENABLE_NLS]: Include libintl.h.
1997 [ENABLE_NLS] (gettext): Define.
1998 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
1999 (N_, PACKAGE, LOCALEDIR): New macros.
2000
20011996-06-01 Richard Stallman <rms@gnu.org>
2002
2003 * POTFILES.in: New file.
2004
2005 * Makefile.in (allocate.o):
2006 Define target explicitly.
2007
2008 * Makefile.in (CFLAGS): Set to @CFLAGS@.
2009 (LDFLAGS): Set to @LDFLAGS@.
2010 (configure): Run autoconf only if preceding `cd' succeeds.
2011 (bison.s1): Redirect output to temporary file then move the
2012 temporary to the target, rather than redirecting directly to bison.s1.
2013 (clean): Remove config.status and config.log.
2014 (distclean): Don't remove config.status here.
2015
20161996-05-12 Richard Stallman <rms@gnu.org>
2017
2018 * src/bison.s1:
2019 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
2020
20211996-05-12 Richard Stallman <rms@gnu.org>
2022
2023 * bison.simple:
2024 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
2025
20261996-05-11 Richard Stallman <rms@gnu.org>
2027
2028 * src/bison.s1 (__yy_memcpy):
2029 Really reorder the args, as was supposedly done on Feb 14 1995.
2030 (yyparse): Calls changed accordingly.
2031
20321996-05-11 Richard Stallman <rms@gnu.org>
2033
2034 * Makefile.in (dist): Don't use $(srcdir).
2035
2036 * bison.simple (__yy_memcpy):
2037 Really reorder the args, as was supposedly done on Feb 14 1995.
2038 (yyparse): Calls changed accordingly.
2039
20401996-01-27 Richard Stallman <rms@gnu.org>
2041
2042 * src/output.c (output_rule_data):
2043 Test YYERROR_VERBOSE in the conditional
2044 around the definition of ttyname.
2045
20461995-12-29 Richard Stallman <rms@gnu.org>
2047
2048 * src/bison.s1:
2049 Fix line numbers in #line commands.
2050
20511995-12-29 Richard Stallman <rms@gnu.org>
2052
2053 * bison.simple:
2054 Fix line numbers in #line commands.
2055
20561995-12-27 Richard Stallman <rms@gnu.org>
2057
2058 * src/bison.s1 (YYPARSE_PARAM_DECL):
2059 In C++, make it always null.
2060 (YYPARSE_PARAM_ARG): New macro.
2061 (yyparse): Use YYPARSE_PARAM_ARG.
2062
20631995-12-27 Richard Stallman <rms@gnu.org>
2064
2065 * bison.simple (YYPARSE_PARAM_DECL):
2066 In C++, make it always null.
2067 (YYPARSE_PARAM_ARG): New macro.
2068 (yyparse): Use YYPARSE_PARAM_ARG.
2069
20701995-11-29 Richard Stallman <rms@gnu.org>
2071
2072 * doc/bison.texinfo:
2073 Describe literal string tokens, %raw, %no_lines, %token_table.
2074
20751995-11-29 Daniel Hagerty <hag@gnu.org>
2076
2077 * doc/bison.texinfo: Fixed update date
2078
20791995-10-16 Richard Stallman <rms@gnu.org>
2080
2081 * src/version.c: Version 1.25.
2082
20831995-10-16 Richard Stallman <rms@gnu.org>
2084
2085 * NEWS: *** empty log message ***
2086
20871995-10-16 Richard Stallman <rms@gnu.org>
2088
2089 * doc/bison.1, doc/bison.rnh:
2090 Add new options.
2091
20921995-10-15 Richard Stallman <rms@gnu.org>
2093
2094 * src/vmsgetargs.c, src/getargs.c:
2095 Added -n, -k, and -raw switches.
2096 (noparserflag, toknumflag, rawtoknumflag): New variables.
2097
2098 * src/symtab.h (SALIAS):
2099 New #define for adding aliases to %token.
2100 (struct bucket): Added `alias' field.
2101
2102 * src/reduce.c (reduce_grammar):
2103 Revise error message.
2104 (print_notices): Remove final `.' from error message.
2105
2106 * src/reader.c (reader_output_yylsp):
2107 New function.
2108 (readgram): Use `#if 0' around code that accepted %command
2109 inside grammar rules: The documentation doesn't allow it,
2110 and it will fail since the %command processors scan for the next %.
2111 (parse_token_decl): Extended the %token
2112 declaration to allow a multi-character symbol as an alias.
2113 (parse_thong_decl): New function.
2114 (read_declarations): Added %thong declarations.
2115 (read_declarations): Handle NOOP to deal with allowing
2116 % declarations as another means to specify the flags.
2117 (readgram): Allow %prec prior to semantics embedded in a rule.
2118 (skip_to_char, read_declarations, copy_definition)
2119 (parse_token_decl, parse_start_decl, parse_type_decl)
2120 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
2121 (get_type_name, copy_guard, copy_action, readgram)
2122 (get_type, packsymbols): Revised most error messages.
2123 Changed `fatal' to `warnxxx' to avoid aborting for error.
2124 Revised and use multiple warnxxx functions to avoid using VARARGS1.
2125 (read_declarations): Improve the error message for
2126 an invalid character. Do not abort.
2127 (read_declarations, copy_guard, copy_action): Use
2128 printable_version to avoid unprintable characters in printed output.
2129 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
2130 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
2131 Allow the type of a non-terminal can be given
2132 more than once, as long as all specifications give the same type.
2133
2134 * src/output.c:
2135 (output_headers, output_trailers, output, output_gram)
2136 (output_rule_data): Implement noparserflag variable.
2137 Implement toknumflag variable.
2138 (output): Call reader_output_yylsp to output LTYPESTR.
2139
2140 * src/main.c (main):
2141 If reader sees an error, don't process the grammar.
2142 (fatals): Updated to not use VARARGS1.
2143 (printable_version, int_to_string, warn, warni, warns, warnss)
2144 (warnsss): New error reporting functions. Avoid abort for error.
2145
2146 * src/lex.h:
2147 Added THONG and NOOP for alias processing.
2148 Added SETOPT for the new code that allows setting options with %flags.
2149
2150 * src/lex.c:
2151 Include getopt.h. Add some extern decls.
2152 (safegetc): New function to deal with EOF gracefully.
2153 (literalchar); new function to deal with reading \ escapes.
2154 (lex): Use literalchar.
2155 (lex): Implemented "..." tokens.
2156 (literalchar, lex, parse_percent_token): Made tokenbuffer
2157 always contain the token. This includes growing the token
2158 buffer while reading an integer.
2159 (parse_percent_token): Replaced if-else statement with percent_table.
2160 (parse_percent_token): Added % declarations as another
2161 way to specify the flags -n, -l, and -r. Also added hooks for
2162 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
2163 major changes to files.c.
2164 (lex) Retain in the incoming stream a character following
2165 an incorrect '/'.
2166 (skip_white_space, lex): Revised most error messages
2167 and changed fatal to warn to avoid aborting.
2168 (percent_table): Added %thong declarations.
2169
2170 * src/gram.h: Comment changes.
2171
2172 * src/files.c (openfiles, open_extra_files, done):
2173 Add faction flag
2174 and actfile file. Handle noparserflag. Both for -n switch.
2175
2176 * src/conflicts.c (resolve_sr_conflict):
2177 Remove use of alloca.
2178
21791995-06-01 Jim Meyering <meyering@gnu.org>
2180
2181 * doc/bison.texinfo: *** empty log message ***
2182
21831995-05-06 Richard Stallman <rms@gnu.org>
2184
2185 * src/bison.s1: Comment change.
2186
21871995-05-06 Richard Stallman <rms@gnu.org>
2188
2189 * bison.simple: Comment change.
2190
21911995-05-03 Richard Stallman <rms@gnu.org>
2192
2193 * src/version.c: Version now 1.24.
2194
2195 * src/bison.s1: Change distribution terms.
2196
2197 * src/version.c: Version now 1.23.
2198
21991995-05-03 Richard Stallman <rms@gnu.org>
2200
2201 * doc/bison.texinfo:
2202 Rewrite "Conditions for Using Bison".
2203 Update version to 1.24.
2204
22051995-05-03 Richard Stallman <rms@gnu.org>
2206
2207 * bison.simple: Change distribution terms.
2208
22091995-02-23 Richard Stallman <rms@gnu.org>
2210
2211 * src/files.c: Test __VMS_POSIX as well as VMS.
2212
22131995-02-14 Jim Meyering <meyering@gnu.org>
2214
2215 * src/bison.s1 (__yy_memcpy):
2216 Renamed from __yy_bcopy to avoid
2217 confusion. Reverse FROM and TO arguments to be consistent with
2218 those of memcpy.
2219
22201995-02-14 Jim Meyering <meyering@gnu.org>
2221
2222 * bison.simple (__yy_memcpy):
2223 Renamed from __yy_bcopy to avoid
2224 confusion. Reverse FROM and TO arguments to be consistent with
2225 those of memcpy.
2226
22271994-11-10 David J. MacKenzie <djm@gnu.org>
2228
2229 * NEWS: reformat
2230
2231 * NEWS: New file.
2232
2233 * Makefile.in (DISTFILES): Include NEWS.
2234
2235 * Makefile.in (DISTFILES):
2236 Include install-sh, not install.sh.
2237
2238 * configure.in: Update to Autoconf v2 macro names.
2239
22401994-10-05 David J. MacKenzie <djm@gnu.org>
2241
2242 * Makefile.in: fix typo
2243
2244 * Makefile.in (prefix, exec_prefix):
2245 Let configure set them.
2246
22471994-09-28 David J. MacKenzie <djm@gnu.org>
2248
2249 * Makefile.in: Set datadir to $(prefix)/share.
2250
22511994-09-15 Richard Stallman <rms@gnu.org>
2252
2253 * src/bison.s1:
2254 Update copyright notice and GPL version.
2255
22561994-09-15 Richard Stallman <rms@gnu.org>
2257
2258 * bison.simple:
2259 Update copyright notice and GPL version.
2260
22611994-07-12 Richard Stallman <rms@gnu.org>
2262
2263 * src/reduce.c, src/reader.c:
2264 entered into RCS
2265
22661994-05-05 David J. MacKenzie <djm@gnu.org>
2267
2268 * Makefile.in: entered into RCS
2269
22701994-03-26 Richard Stallman <rms@gnu.org>
2271
2272 * src/bison.s1: entered into RCS
2273
22741994-03-26 Richard Stallman <rms@gnu.org>
2275
2276 * bison.simple: entered into RCS
2277
22781994-03-25 Richard Stallman <rms@gnu.org>
2279
2280 * src/main.c: entered into RCS
2281
22821994-03-24 Richard Stallman <rms@gnu.org>
2283
2284 * src/conflicts.c: entered into RCS
2285
22861994-01-02 Richard Stallman <rms@gnu.org>
2287
2288 * Makefile.in: *** empty log message ***
2289
22901993-11-21 Richard Stallman <rms@gnu.org>
2291
2292 * src/bison.s1: *** empty log message ***
2293
22941993-11-21 Richard Stallman <rms@gnu.org>
2295
2296 * doc/bison.texinfo: entered into RCS
2297
2298 * doc/bison.texinfo: *** empty log message ***
2299
23001993-11-21 Richard Stallman <rms@gnu.org>
2301
2302 * bison.simple: *** empty log message ***
2303
23041993-10-25 David J. MacKenzie <djm@gnu.org>
2305
2306 * doc/bison.texinfo: *** empty log message ***
2307
23081993-10-19 Richard Stallman <rms@gnu.org>
2309
2310 * src/bison.s1: *** empty log message ***
2311
23121993-10-19 Richard Stallman <rms@gnu.org>
2313
2314 * bison.simple: *** empty log message ***
2315
23161993-10-14 Richard Stallman <rms@gnu.org>
2317
2318 * src/bison.s1: *** empty log message ***
2319
23201993-10-14 Richard Stallman <rms@gnu.org>
2321
2322 * bison.simple: *** empty log message ***
2323
23241993-09-14 David J. MacKenzie <djm@gnu.org>
2325
2326 * doc/bison.texinfo: *** empty log message ***
2327
23281993-09-13 Noah Friedman <friedman@gnu.org>
2329
2330 * Makefile.in: *** empty log message ***
2331
23321993-09-10 Richard Stallman <rms@gnu.org>
2333
2334 * src/conflicts.c: *** empty log message ***
2335
2336 * src/system.h: entered into RCS
2337
23381993-09-10 Richard Stallman <rms@gnu.org>
2339
2340 * doc/bison.1: entered into RCS
2341
23421993-09-06 Noah Friedman <friedman@gnu.org>
2343
2344 * src/version.c: entered into RCS
2345
23461993-09-06 Noah Friedman <friedman@gnu.org>
2347
2348 * Makefile.in: *** empty log message ***
2349
23501993-07-30 David J. MacKenzie <djm@gnu.org>
2351
2352 * Makefile.in: *** empty log message ***
2353
23541993-07-24 Richard Stallman <rms@gnu.org>
2355
2356 * src/bison.s1: *** empty log message ***
2357
23581993-07-24 Richard Stallman <rms@gnu.org>
2359
2360 * bison.simple: *** empty log message ***
2361
23621993-07-08 David J. MacKenzie <djm@gnu.org>
2363
2364 * Makefile.in: *** empty log message ***
2365
23661993-07-04 Richard Stallman <rms@gnu.org>
2367
2368 * src/bison.s1: *** empty log message ***
2369
23701993-07-04 Richard Stallman <rms@gnu.org>
2371
2372 * bison.simple: *** empty log message ***
2373
23741993-06-26 David J. MacKenzie <djm@gnu.org>
2375
2376 * src/getargs.c: entered into RCS
2377
23781993-06-26 David J. MacKenzie <djm@gnu.org>
2379
2380 * doc/bison.texinfo: *** empty log message ***
2381
2382 * doc/bison.1: New file.
2383
23841993-06-25 Richard Stallman <rms@gnu.org>
2385
2386 * src/getargs.c: New file.
2387
23881993-06-16 Richard Stallman <rms@gnu.org>
2389
2390 * src/bison.s1: *** empty log message ***
2391
23921993-06-16 Richard Stallman <rms@gnu.org>
2393
2394 * bison.simple: *** empty log message ***
2395
23961993-06-03 Richard Stallman <rms@gnu.org>
2397
2398 * src/bison.s1: New file.
2399
24001993-06-03 Richard Stallman <rms@gnu.org>
2401
2402 * doc/bison.texinfo: *** empty log message ***
2403
24041993-06-03 Richard Stallman <rms@gnu.org>
2405
2406 * bison.simple: New file.
2407
24081993-05-19 Richard Stallman <rms@gnu.org>
2409
2410 * doc/bison.texinfo: New file.
2411
24121993-05-07 Noah Friedman <friedman@gnu.org>
2413
2414 * Makefile.in: *** empty log message ***
2415
24161993-04-28 Noah Friedman <friedman@gnu.org>
2417
2418 * src/reader.c: *** empty log message ***
2419
24201993-04-23 Noah Friedman <friedman@gnu.org>
2421
2422 * src/alloc.h: entered into RCS
2423
24241993-04-20 David J. MacKenzie <djm@gnu.org>
2425
2426 * src/version.c: *** empty log message ***
2427
2428 * src/files.c, src/allocate.c:
2429 entered into RCS
2430
2431 * src/reader.c: *** empty log message ***
2432
2433 * src/lex.c: entered into RCS
2434
2435 * src/conflicts.c: New file.
2436
2437 * src/symtab.c: entered into RCS
2438
2439 * src/alloc.h: New file.
2440
2441 * src/LR0.c: entered into RCS
2442
24431993-04-18 Noah Friedman <friedman@gnu.org>
2444
2445 * src/reader.c: New file.
2446
2447 * src/version.c: *** empty log message ***
2448
24491993-04-18 Noah Friedman <friedman@gnu.org>
2450
2451 * Makefile.in: *** empty log message ***
2452
24531993-04-17 Noah Friedman <friedman@gnu.org>
2454
2455 * Makefile.in: *** empty log message ***
2456
24571993-04-15 Richard Stallman <rms@gnu.org>
2458
2459 * src/main.c, src/files.c:
2460 New file.
2461
24621993-04-15 Noah Friedman <friedman@gnu.org>
2463
2464 * configure.in: entered into RCS
2465
2466 * configure.in: *** empty log message ***
2467
2468 * configure.in: New file.
2469
24701993-04-14 Richard Stallman <rms@gnu.org>
2471
2472 * Makefile.in: New file.
2473
24741993-04-13 Richard Stallman <rms@gnu.org>
2475
2476 * src/version.c: New file.
2477
24781993-03-25 Richard Stallman <rms@gnu.org>
2479
2480 * src/output.c: entered into RCS
2481
24821992-09-25 Richard Stallman <rms@gnu.org>
2483
2484 * configure.bat: entered into RCS
2485
24861992-06-22 Richard Stallman <rms@gnu.org>
2487
2488 * src/vmsgetargs.c: entered into RCS
2489
24901992-06-22 Richard Stallman <rms@gnu.org>
2491
2492 * doc/bison.rnh: entered into RCS
2493
24941992-04-20 David J. MacKenzie <djm@gnu.org>
2495
2496 * README: entered into RCS
2497
24981992-01-22 Richard Stallman <rms@gnu.org>
2499
2500 * src/machine.h: entered into RCS
2501
25021991-12-21 Richard Stallman <rms@gnu.org>
2503
2504 * src/lalr.c, src/closure.c:
2505 entered into RCS
2506
25071991-12-20 Richard Stallman <rms@gnu.org>
2508
2509 * src/state.h: entered into RCS
2510
25111991-12-18 Richard Stallman <rms@gnu.org>
2512
2513 * src/print.c, src/nullable.c, src/derives.c:
2514 entered into RCS
2515
25161991-11-03 David J. MacKenzie <djm@gnu.org>
2517
2518 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
2519 entered into RCS
2520
25211988-09-09 Richard Stallman <rms@gnu.org>
2522
2523 * src/bison.hairy: entered into RCS
2524
25251987-12-16 Richard Stallman <rms@gnu.org>
2526
2527 * REFERENCES: entered into RCS