]> git.saurik.com Git - bison.git/blame_incremental - ChangeLog
* src/lalr.c (F): New macro to access to the variable F.
[bison.git] / ChangeLog
... / ...
CommitLineData
12001-11-19 Akim Demaille <akim@epita.fr>
2
3 * src/lalr.c (F): New macro to access to the variable F.
4 Adjust.
5
62001-11-19 Akim Demaille <akim@epita.fr>
7
8 * src/lalr.h (LA): New macro to access to the variable LA.
9 * src/output.c, src/lalr.c, src/print_graph.c, src/conflicts.c:
10 * src/lalr.c: Adjust.
11
122001-11-19 Akim Demaille <akim@epita.fr>
13
14 * src/lalr.c (initialize_LA): Only initialize LA. Let...
15 (set_state_table): handle the `lookaheads' members.
16
17
182001-11-19 Akim Demaille <akim@epita.fr>
19
20 * src/lalr.h (lookaheads): Removed array, which contents is now
21 member of...
22 (state_t): this structure.
23 * src/output.c, src/lalr.c, src/print_graph.c, src/conflicts.c:
24 Adjust.
25
262001-11-19 Akim Demaille <akim@epita.fr>
27
28 * src/lalr.h (consistent): Removed array, which contents is now
29 member of...
30 (state_t): this structure.
31 * src/output.c, src/lalr.c, src/print_graph.c, src/conflicts.c:
32 Adjust.
33
342001-11-19 Akim Demaille <akim@epita.fr>
35
36 * src/lalr.h (reduction_table, shift_table): Removed arrays, which
37 contents is now members of...
38 (state_t): this structure.
39 * src/output.c, src/lalr.c, src/print_graph.c, src/conflicts.c:
40 Adjust.
41
42
432001-11-19 Akim Demaille <akim@epita.fr>
44
45 * src/lalr.h (state_t): New.
46 (state_table): Be a state_t * instead of a core **.
47 (accessing_symbol): Remove, part of state_t.
48 * src/lalr.c: Adjust.
49 (set_accessing_symbol): Merge into...
50 (set_state_table): this.
51 * src/print_graph.c, src/conflicts.c: Adjust.
52
532001-11-14 Akim Demaille <akim@epita.fr>
54
55 * tests/calc.at, tests/output.at, tests/regression.at,
56 * tests/testsuite.at, tests/torture.at: Rely on Autotest 2.52g:
57 now the tests are run in private dirs, therefore AC_CLEANUP and
58 family can be simplified to 0-ary.
59 * tests/atlocal.in: Now that we run `elsewhere' than in tests/,
60 use abs. path to find config.h.
61 * tests/calc.at (AT_CHECK_CALC): Don't try to check the compiler's
62 stderr, there can be way too much random noise.
63 Instead pass -Werror to GCC and rely on the exit status.
64 Reported by Wolfram Wagner.
65
662001-11-14 Akim Demaille <akim@epita.fr>
67
68 * src/bison.simple (yyparse): Let yyls1, yyss1 and yyvs1 be
69 defined only if yyoverflow is defined, to avoid `warning: unused
70 variable `yyvs1''.
71 Reported by The Test Suite.
72
732001-11-14 Akim Demaille <akim@epita.fr>
74
75 * src/print.c: Include reduce.h.
76 Reported by Hans Aberg.
77
782001-11-14 Akim Demaille <akim@epita.fr>
79
80 * src/lex.c, src/lex.h (token_buffer, unlexed_token_buffer):
81 Revert a previous patch: these are really const.
82 * src/conflicts.c (conflict_report): Additional useless pair of
83 braces to pacify GCC's warnings for `if () if () {} else {}'.
84 * src/lex.c (parse_percent_token): Replace equal_offset with
85 arg_offset.
86 arg is const.
87 Be sure to strdup `arg' when used, since there is no reason for
88 token_buffer not to change.
89
902001-11-14 Akim Demaille <akim@epita.fr>
91
92 * src/system.h (EXIT_SUCCESS, EXIT_FAILURE): Ensure a proper
93 definition.
94 * src/main.c (main): Use them.
95 Suggested by Hans Aberg.
96
972001-11-12 Akim Demaille <akim@epita.fr>
98
99 * src/system.h (ngettext): Now that we use ngettext, be sure to
100 provide a default definition when NLS are not used.
101
1022001-11-12 Akim Demaille <akim@epita.fr>
103
104 * doc/bison.texinfo: Use `$' as shell prompt, not `%'.
105 Use @kbd to denote user input.
106 (Language and Grammar): ANSIfy the example.
107 Adjust its layout for info/notinfo.
108 (Location Tracking Calc): Output error messages to stderr.
109 Output locations in a more GNUtically correct way.
110 Fix a couple of Englishos.
111 Adjust @group/@end group pairs.
112
1132001-11-12 Akim Demaille <akim@epita.fr>
114
115 %expext was not functioning at all.
116
117 * src/conflicts.c (expected_conflicts): Set to -1.
118 (conflict_report): Use ngettext.
119 (conflicts_print): Check %expect and make its violation an error.
120 * doc/bison.texinfo (Expect Decl): Adjust.
121 * configure.in (AM_GNU_GETTEXT): Ask for ngettext.
122 * tests/regression.at (%expect not enough, %expect right)
123 (%expect too much): New.
124
1252001-11-12 Akim Demaille <akim@epita.fr>
126
127 * tests/regression.at (Conflicts): Rename as...
128 (Unresolved SR Conflicts): this.
129 (Solved SR Conflicts): New.
130
1312001-11-12 Akim Demaille <akim@epita.fr>
132
133 * src/reduce.c (print_results): Rename as...
134 (reduce_output): This.
135 Output to OUT, passed as argument, instead of output_obstack.
136 (dump_grammar): Likewise.
137 (reduce_free): New.
138 Also free V1.
139 (reduce_grammar): No longer call reduce_output, since...
140 * src/print.c (print_results): do it.
141 * src/main.c (main): Call reduce_free;
142
1432001-11-12 Akim Demaille <akim@epita.fr>
144
145 * src/conflicts.c (print_reductions): Accept OUT as argument.
146 Output to it, not to output_obstack.
147 * src/print.c (print_actions): Adjust.
148
1492001-11-12 Akim Demaille <akim@epita.fr>
150
151 * src/conflicts.c (count_sr_conflicts, count_rr_conflicts): Return
152 the result instead of using...
153 (src_total, rrc_total, src_count, rrc_count): Remove.
154 (any_conflicts): Remove.
155 (print_conflicts): Split into...
156 (conflicts_print, conflicts_output): New.
157 * src/conflicts.h: Adjust.
158 * src/main.c (main): Invoke both conflicts_output and conflicts_print.
159 * src/print.c (print_grammar): Issue `\n' between two rules.
160 * tests/regression.at (Conflicts): New.
161 Reported by Tom Lane.
162
1632001-11-12 Akim Demaille <akim@epita.fr>
164
165 * tests/regression.at (Invalid input): Remove, duplicate with
166 ``Invalid input: 1''.
167
1682001-11-12 Akim Demaille <akim@epita.fr>
169
170 * tests/torture.at (AT_DATA_STACK_TORTURE)
171 (Exploding the Stack Size with Alloca)
172 (Exploding the Stack Size with Malloc): New.
173
1742001-11-12 Akim Demaille <akim@epita.fr>
175
176 * src/bison.simple (YYSTACK_REALLOC): New.
177 (yyparse) [!yyoverflow]: Use it and free the old stack.
178 Reported by Per Allansson.
179
1802001-11-12 Pascal Bart <pascal.bart@epita.fr>
181
182 * src/bison.simple: Define type yystype instead of YYSTYPE, and
183 define CPP macro, which substitute YYSTYPE by yystype.
184 * src/reader.c (parse_union_decl): Output yystype/YYSTYPE as we do
185 with yyltype/YYLTYPE. This allows inclusion of the generated
186 header within the parser if the compiler, such as GGC, accepts
187 multiple equivalent #defines.
188 From Akim.
189
1902001-11-05 Akim Demaille <akim@epita.fr>
191
192 * src/reader.c (symbols_output): New, extracted from...
193 (packsymbols): here.
194 (reader): Adjust.
195
1962001-11-05 Akim Demaille <akim@epita.fr>
197
198 * src/lex.c (parse_percent_token): s/quotearg/quote/.
199
2002001-11-05 Akim Demaille <akim@epita.fr>
201
202 * tests/regression.at (AT_TEST_CPP_GUARD_H): Adjust the clean up
203 pattern.
204
2052001-11-05 Akim Demaille <akim@epita.fr>
206
207 * src/options.h (struct option_table_struct): set_flags is void*.
208 * src/options.c (longopts): Support `--output' and `%output'.
209 (usage): Adjust.
210 * src/lex.h (tok_setopt): Remove, replaced with...
211 (tok_intopt, tok_stropt): these new guys.
212 * src/lex.c (getopt.h): Not needed.
213 (token_buffer, unlexed_token_buffer): Not const.
214 (percent_table): Promote `-' over `_' in directive names.
215 Active `%name-prefix', `file-prefix', and `output'.
216 (parse_percent_token): Accept possible arguments to directives.
217 Promote `-' over `_' in directive names.
218
2192001-11-04 Akim Demaille <akim@epita.fr>
220
221 * doc/bison.texinfo (Decl Summary): Split the list into
222 `directives for grammars' and `directives for bison'.
223 Sort'em.
224 Add description of `%name-prefix', `file-prefix', and `output'.
225 Promote `-' over `_' in directive names.
226 (Bison Options): s/%locactions/%locations/. Nice Freudian slip.
227 Simplify the description of `--name-prefix'.
228 Promote `-' over `_' in directive names.
229 Promote `--output' over `--output-file'.
230 Fix the description of `--defines'.
231 * tests/output.at: Exercise %file-prefix and %output.
232
2332001-11-02 Akim Demaille <akim@epita.fr>
234
235 * doc/refcard.tex: Update.
236
2372001-11-02 Akim Demaille <akim@epita.fr>
238
239 * src/symtab.h (SUNDEF): New.
240 * src/symtab.c (bucket_new): Init user_token_number to SUNDEF to
241 stand for `uninitialized', instead of 0.
242 * src/reader.c (packsymbols, parse_thong_decl): Adjust.
243 * src/lex.c (lex): Adjust.
244
245 * tests/calc.at (_AT_DATA_CALC_Y): Declare a token for EOF.
246 Number it 0.
247 Let yylex return it instead of a plain 0.
248 Reported by Dick Streefland.
249
2502001-11-02 Akim Demaille <akim@epita.fr>
251
252 * tests/regression.at (Mixing %token styles): New test.
253
2542001-11-02 Akim Demaille <akim@epita.fr>
255
256 * src/reader.c (parse_thong_decl): Formatting changes.
257 (token_translations_init): New, extracted from...
258 (packsymbols): Here.
259 Adjust.
260
2612001-11-01 Akim Demaille <akim@epita.fr>
262
263 * tests/regression.at (AT_TEST_CPP_GUARD_H): New.
264 Check that `9foo.y' produces correct cpp guards.
265 * src/files.c (compute_header_macro): Prepend `BISON_' to CPP
266 guards.
267 Reported by Wwp.
268
2692001-11-01 Akim Demaille <akim@epita.fr>
270
271 * tests/regression.at (Invalid input: 2): New.
272 * src/lex.c (unlexed_token_buffer): New.
273 (lex, unlex): Adjust: when unlexing, be sure to save token_buffer
274 too.
275 Reported by Wwp.
276
2772001-11-01 Akim Demaille <akim@epita.fr>
278
279 * tests/calc.at: Catch up with 1.30.
280 * configure.in: Bump to 1.49a.
281 Adjust to newer Autotest.
282
2832001-10-19 Pascal Bart <pascal.bart@epita.fr>
284
285 * src/conflicts.c: Move global variables rrc_total and src_total ...
286 (print_conflicts): here.
287 * src/output.c (output): Free global variable user_toknums.
288 * src/lex.c (token_obstack): Become static.
289
2902001-10-18 Akim Demaille <akim@epita.fr>
291
292 * tests/atlocal.in (GCC): Add.
293 * tests/calc.at: s/m4_match/m4_bmatch/.
294 s/m4_patsubst/m4_bpatsubst/.
295 (AT_CHECK_CALC): Check the compiler's stderr only if it's GCC.
296 * configure.in: AC_SUBST(GCC).
297
2982001-10-14 Marc Autret <autret_m@epita.fr>
299
300 * src/options.c (create_long_option_table): Fix.
301
3022001-10-10 Akim Demaille <akim@epita.fr>
303
304 * src/bison.simple: Be sure to set YYSTACK_USE_ALLOCA.
305
3062001-10-04 Akim Demaille <akim@epita.fr>
307
308 * src/reader.c (parse_union_decl): Push the caracters in
309 union_obstack, not attrs_obstack.
310
3112001-10-04 Akim Demaille <akim@epita.fr>
312
313 Merge in the branch 1.29.
314
315 * src/reader.c (packsymbols): Use a temporary obstack for
316 `%%tokendef', since output_stack is already used elsewhere.
317
318 2001-10-02 Akim Demaille <akim@epita.fr>
319
320 Bump 1.29d.
321
322 2001-10-02 Akim Demaille <akim@epita.fr>
323
324 Version 1.29c.
325
326 2001-10-02 Akim Demaille <akim@epita.fr>
327
328 * tests/regression.at (Invalid CPP headers): New.
329 From Alexander Belopolsky.
330 * src/files.c (compute_header_macro): Map non alnum chars to `_'.
331
332 2001-10-02 Akim Demaille <akim@epita.fr>
333
334 * tests/regression.at (Invalid input): New.
335 * src/lex.c (lex): Be sure to set `token_buffer' in any case.
336 Reported by Shura.
337
338 2001-10-02 Akim Demaille <akim@epita.fr>
339
340 * tests/calc.at: Now that --debug works, the tests must be adjusted.
341
342 2001-10-02 Akim Demaille <akim@epita.fr>
343
344 * src/output.c (output_parser): Assert `skeleton'.
345 * src/files.c (skeleton_find): Look harder for skeletons on DOSish
346 systems.
347 From Shura.
348
349 2001-10-01 Marc Autret <autret_m@epita.fr>
350
351 * src/lex.h: Echo modifications.
352 * src/lex.c (unlex): Parameter is now token_t.
353 From Hans Aberg.
354
355 2001-10-01 Marc Autret <autret_m@epita.fr>
356
357 * src/main.c: Include lex.h.
358 From Hans Aberg.
359
360 2001-09-29 Akim Demaille <akim@epita.fr>
361
362 * src/getargs.c (longopts): `--debug' is `-t', not `-d'.
363
364 2001-09-28 Akim Demaille <akim@epita.fr>
365
366 * tests/testsuite.at: Update to newer Autotest.
367 * tests/Makefile.am (EXTRA_DIST): bison is not to be shipped.
368
369 2001-09-27 Akim Demaille <akim@epita.fr>
370
371 Position independent wrapper.
372
373 * tests/bison: Remove.
374 * tests/bison.in: New.
375 * configure.in: Adjust.
376
377 2001-09-27 Paul Eggert <eggert@twinsun.com>
378
379 Port quotearg fixes from tar 1.13.24.
380
381 * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
382 tm to be declared.
383 (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
384 (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
385
386 * m4/Makefile.am (EXTRA_DIST): Add mbrtowc.m4.
387 * m4/mbrtowc.m4: New file.
388 * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for mbsinit and stddef.h.
389 Use jm_FUNC_MBRTOWC instead of AC_CHECK_FUNCS(mbrtowc).
390
391 2001-09-27 Akim Demaille <akim@epita.fr>
392
393 Bump to 1.29c.
394
395 2001-09-27 Akim Demaille <akim@epita.fr>
396
397 Version 1.29b.
398
399 2001-09-25 Akim Demaille <akim@epita.fr>
400
401 * src/system.h: Include `xalloc.h'.
402 Remove it from the C files.
403 * src/files.c (output_files): Free the obstacks.
404 * src/lex.c (init_lex): Rename as...
405 (lex_init): this.
406 (lex_free): New.
407 * src/main.c (main): Use it.
408
409 2001-09-24 Marc Autret <autret_m@epita.fr>
410
411 * src/vcg.c (open_edge, close_edge, open_node, close_node): Change
412 to output informations in fout (FILE*).
413 (open_graph, close_graph): Likewise.
414 (output_graph, output_edge, output_node): Likewise.
415 * src/vcg.h: Update function prototypes.
416 * src/print_graph.c (print_graph): Open output graph file.
417 (print_actions): Adjust.
418 * src/files.h: Remove extern declaration.
419 * src/files.c: Remove graph_obstack declaration.
420 (open_files): Remove graph_obstack initialization.
421 (output_files): Remove graph_obstack saving.
422
423 2001-09-24 Marc Autret <autret_m@epita.fr>
424
425 * src/files.c (compute_output_file_names): Fix.
426
427 2001-09-24 Marc Autret <autret_m@epita.fr>,
428 Akim Demaille <akim@epita.fr>
429
430 * src/reader.c (reader): Remove call to free_symtab ().
431 * src/main.c (main): Call it here.
432 Include symtab.h.
433 * src/conflicts.c (initialize_conflicts): Rename as...
434 (solve_conflicts): this.
435 * src/print.c (print_core, print_actions, print_state)
436 (print_grammar): Dump to a file instead a `output_obstack'.
437 (print_results): Dump `output_obstack', and then proceed with the
438 FILE *.
439 * src/files.c (compute_output_file_names, close_files): New.
440 (output_files): Adjust.
441 * src/main.c (main): Adjust.
442
443 2001-09-23 Marc Autret <autret_m@epita.fr>
444
445 * src/files.c (compute_header_macro): Computes header macro name
446 from spec_defines_file when given.
447
448 2001-09-23 Marc Autret <autret_m@epita.fr>
449
450 * src/files.c (output_files): Add default extensions.
451
452 2001-09-22 Akim Demaille <akim@epita.fr>
453
454 * src/conflicts.c (finalize_conflicts): Rename as...
455 (free_conflicts): this.
456
457 2001-09-22 Akim Demaille <akim@epita.fr>
458
459 * src/gram.c (gram_free): Rename back as...
460 (dummy): this.
461 (output_token_translations): Free `token_translations'.
462 * src/symtab.c (free_symtab): Free the tag field.
463
464 2001-09-22 Akim Demaille <akim@epita.fr>
465
466 Remove `translations' as it is always set to true.
467
468 * src/gram.h: Adjust.
469 * src/reader.c (packsymbols, parse_token_decl): Adjust
470 * src/print.c (print_grammar): Adjust.
471 * src/output.c (output_token_translations): Adjust.
472 * src/lex.c (lex): Adjust.
473 * src/gram.c: Be sure the set pointers to NULL.
474 (dummy): Rename as...
475 (gram_free): this.
476
477 2001-09-22 Akim Demaille <akim@epita.fr>
478
479 * configure.in: Invoke AM_LIB_DMALLOC.
480 * src/system.h: Use dmalloc.
481 * src/LR0.c: Be sure to have pointers initialized to NULL.
482 (allocate_itemsets): Allocate kernel_items only if needed.
483
484 2001-09-22 Akim Demaille <akim@epita.fr>
485
486 * configure.in: Bump to 1.29b.
487 * tests/Makefile.am (DISTCLEANFILES): Add package.m4.
488 * tests/calc.at (_AT_DATA_CALC_Y): #undef malloc so that we don't
489 need xmalloc.c in calc.y.
490 From Pascal Bart.
491
492 2001-09-21 Akim Demaille <akim@epita.fr>
493
494 Version 1.29a.
495 * Makefile.maint, config/config.guess, config/config.sub,
496 * config/missing: Update from masters.
497 * tests/Makefile.am ($(srcdir)/$(TESTSUITE)): No longer depend
498 upon package.m4.
499 * configure.in (ALL_LINGUAS): Add `tr'.
500
501 2001-09-21 Akim Demaille <akim@epita.fr>
502
503 * tests/Makefile.am (package.m4): Move to...
504 ($(srcdir)/$(TESTSUITE)): here.
505
506 2001-09-20 Akim Demaille <akim@epita.fr>
507
508 * src/complain.c: No longer try to be standalone: use system.h.
509 Don't assume __STDC__ is defined to 1. Just test if it is defined.
510 * src/complain.h: Likewise.
511 * src/reduce.c (useless_nonterminals, inaccessable_symbols):
512 Remove the unused variable `n'.
513 From Albert Chin-A-Young.
514
515 2001-09-18 Marc Autret <autret_m@epita.fr>
516
517 * doc/bison.1: Update.
518 * doc/bison.texinfo (Bison Options): Update --defines and --graph
519 descriptions.
520 (Option Cross Key): Update.
521 Add --graph.
522
523 2001-09-18 Marc Autret <autret_m@epita.fr>
524
525 * tests/regression.at: New test (comment in %union).
526
527 2001-09-18 Marc Autret <autret_m@epita.fr>
528
529 * src/reader.c (parse_union_decl): Do not output '/'. Let copy_comment
530 do that.
531 Reported by Keith Browne.
532
533 2001-09-18 Marc Autret <autret_m@epita.fr>
534
535 * tests/output.at: Add tests for --defines and --graph.
536
537 2001-09-18 Marc Autret <autret_m@epita.fr>
538
539 * tests/output.at: Removes tests of %{header,src}_extension features.
540
541 2001-09-18 Akim Demaille <akim@epita.fr>
542
543 * tests/Makefile.am (package.m4): New.
544 * tests/calc.at (_AT_CHECK_CALC): Just run `calc input'.
545 (_AT_CHECK_CALC_ERROR): Likewise.
546 Factor the `, ' part of verbose error messages.
547
548 2001-09-18 Marc Autret <autret_m@epita.fr>
549
550 * src/getargs.c (longopts): Declare --defines and --graph as options
551 with optional arguments.
552 * src/files.h: Add extern declarations.
553 * src/files.c (spec_graph_file, spec_defines_file): New.
554 (output_files): Update.
555 Remove CPP-outed code.
556
557 2001-09-18 Marc Autret <autret_m@epita.fr>
558
559 Turn off %{source,header}_extension feature.
560
561 * src/files.c (compute_exts_from_gf): Update.
562 (compute_exts_from_src): Update.
563 (output_files): CPP-out useless code.
564 * src/files.h: Remove {header,source}_extension extern declarations.
565 * src/reader.c (parse_dquoted_param): CPP-out.
566 (parse_header_extension_decl): Remove.
567 (parse_source_extension_decl): Remove.
568 (read_declarations): Remove cases tok_{hdrext,srcext}.
569 * src/lex.c (percent_table): Remove {header,source}_extension entries.
570 * src/lex.h (token_t): Remove tok_hdrext and tok_srcext.
571
572 2001-09-10 Akim Demaille <akim@epita.fr>
573
574 * tests/output.at (AT_CHECK_BISON_FLAGS, AT_CHECK_BISON_PERCENT):
575 (AT_CHECK_BISON_PERCENT_FLAGS): Merge into...
576 (AT_CHECK_OUTPUT): this.
577 Merely check ls' exit status, its output is useless.
578
579 2001-09-10 Akim Demaille <akim@epita.fr>
580
581 * tests/calc.at: Use m4_match.
582 (_AT_DATA_CALC_Y): Check `yyin != NULL', not `stdin != NULL'.
583
584 2001-09-10 Marc Autret <autret_m@epita.fr>,
585 Akim Demaille <akim@epita.fr>
586
587 * src/vcg.h (graph_s): color, textcolor, bordercolor are now
588 enum color_e.
589 * src/print_graph.c (print_graph): Initalize graph.layoutalgorithm
590 to `normal'.
591 * src/reader.c (parse_token_decl): Initialize token with tok_eof.
592 * src/lex.h: Adjust prototype.
593 (token_t): Add `tok_undef'.
594 * src/lex.c (struct percent_table_struct): Retval is now a token_t.
595 (parse_percent_token): Now returns token_t.
596 Add default statement in switch.
597 (lex): Separate `c' as an input variable, from the token_t result
598 part.
599 (unlexed): Is a token_t.
600
601 2001-09-10 Akim Demaille <akim@epita.fr>
602
603 * configure.in: Bump to 1.29a.
604
605 2001-09-07 Akim Demaille <akim@epita.fr>
606
607 Version 1.29.
608
609 2001-08-30 Akim Demaille <akim@epita.fr>
610
611 * tests/atgeneral.m4, tests/atconfig.in, tests/suite.at: Remove.
612 * m4/atconfig.m4: Remove.
613 * tests/testsuite.at, tests/atlocal.in, tests/output.at,
614 * tests/bison: New.
615 * tests/regression.at, tests/calc.at: Use m4_define, AT_BANNER,
616 m4_if, m4_patsubst, and m4_regexp.
617 * tests/calc.at (_AT_CHECK_CALC, _AT_CHECK_CALC_ERROR): Use an
618 `input' file instead of echo.
619
620 2001-08-29 Akim Demaille <akim@epita.fr>
621
622 Bump to 1.28e.
623
624 2001-08-29 Akim Demaille <akim@epita.fr>
625
626 Version 1.28d.
627
628 2001-08-29 Paul Eggert <eggert@twinsun.com>
629
630 * src/bison.simple (yyparse): Don't take the address of an
631 item before the start of an array, as that doesn't conform to
632 the C Standard.
633
634 2001-08-29 Robert Anisko <anisko_r@epita.fr>
635
636 * doc/bison.texinfo (Location Tracking Calc): New node.
637
638 2001-08-29 Paul Eggert <eggert@twinsun.com>
639
640 * src/output.c (output): Do not define const, as this now
641 causes more problems than it cures.
642
643 2001-08-29 Akim Demaille <akim@epita.fr>
644
645 * doc/bison.texinfo: Modernize `@node' and `@top' use: just name
646 the nodes.
647 Be sure to tag the `detailmenu'.
648
649 2001-08-29 Akim Demaille <akim@epita.fr>
650
651 * Makefile.maint (do-po-update): Wget refuses to overwrite files:
652 download in a tmp dir.
653
654 2001-08-28 Marc Autret <autret_m@epita.fr>
655
656 * config/depcomp: New file.
657
658 2001-08-28 Marc Autret <autret_m@epita.fr>
659
660 * doc/bison.1 (mandoc): Adjust.
661 From Juan Manuel Guerrero.
662
663 2001-08-28 Marc Autret <autret_m@epita.fr>
664
665 * src/print_graph.c (print_state): Fix.
666
667 2001-08-27 Marc Autret <autret_m@epita.fr>
668
669 * src/vcg.h (classname_s, infoname_s, node_s): Constify the
670 char * members.
671 Echo modifications to the functions prototypes.
672 * src/vcg.c (add_classname, add_infoname): Adjust arguments.
673
674 2001-08-27 Marc Autret <autret_m@epita.fr>
675
676 * src/vcg.c: Include `xalloc.h'.
677 (add_colorentry): New.
678 (add_classname): New.
679 (add_infoname): New.
680 * src/vcg.h: Add new prototypes.
681
682 2001-08-27 Akim Demaille <akim@epita.fr>
683
684 * Makefile.maint: Sync. again with CVS Autoconf.
685
686 2001-08-27 Akim Demaille <akim@epita.fr>
687
688 * Makefile.maint: Formatting changes.
689 (po-update, cvs-update, update): New targets.
690 (AMTAR): Remove.
691
692 2001-08-27 Akim Demaille <akim@epita.fr>
693
694 * Makefile.am (AUTOMAKE_OPTIONS): 1.5.
695 * Makefile.maint: Sync. with CVS Autoconf.
696
697 2001-08-27 Marc Autret <autret_m@epita.fr>
698
699 * src/vcg.h (struct infoname_s): New.
700 (struct colorentry_s): New.
701 (graph_s): New fields {vertical,horizontal}_order in structure.
702 Add `infoname' field.
703 Add `colorentry' field;
704 * src/vcg_defaults.h (G_VERTICAL_ORDER): New.
705 (G_HORIZONTAL_ORDER): New.
706 (G_INFONAME): New.
707 (G_COLORENTRY): New.
708 * src/vcg.c (output_graph): Add output of {vertical,horizontal}_order.
709 Add output of `infoname'.
710 Add output of `colorentry'.
711
712 2001-08-27 Marc Autret <autret_m@epita.fr>
713
714 * src/reader.c (parse_dquoted_param): Rename variable `index' to `i'.
715 This one shadowed a global parameter.
716
717 2001-08-24 Marc Autret <autret_m@epita.fr>
718
719 * src/print_graph.c (node_output_size): Declared POSIX `size_t' type,
720 instead of `unsigned'.
721 (print_state): Do not call obstack_object_size () in obstack_grow ()
722 to avoid macro variables shadowing.
723
724 2001-08-23 Marc Autret <autret_m@epita.fr>
725
726 * src/lex.c (percent_table): Typo: s/naem/name/.
727 Add graph option.
728 Normalize new options declarations.
729
730 2001-08-20 Pascal Bart <pascal.bart@epita.fr>
731
732 * tests/suite.at: Exercise %header_extension and %source_extension.
733
734 2001-08-16 Marc Autret <autret_m@epita.fr>
735
736 * src/reader.c (parse_dquoted_param): New.
737 (parse_header_extension_decl): Use it.
738 (parse_source_extension_decl): Likewise.
739
740 2001-08-16 Marc Autret <autret_m@epita.fr>
741
742 * src/vcg.c: Remove includes of `complain.h' and `xalloc.h'.
743 (get_xxxx_str): Use assert () instead of complain ().
744 Remove return invokations in default cases.
745 (get_decision_str): Modify default behaviour. Remove second argument.
746 Echo modifications on calls.
747 (output_graph): Fix.
748
749 2001-08-16 Marc Autret <autret_m@epita.fr>
750
751 * src/getargs.c (usage): Update with ``-g, --graph''.
752
753 2001-08-16 Marc Autret <autret_m@epita.fr>
754
755 * doc/bison.texinfo (Bison Options): Add items `-g', `--graph'.
756 (Option Cross Key): Likewise.
757 * doc/bison.1: Update.
758
7592001-09-25 Pascal Bart <pascal.bart@epita.fr>
760
761 * src/output.c (output_master_parser): Don't finish action_obstack.
762 (output_parser): Don't care about the muscle action, here.
763 (prepare): Copy the action_obstack in the action muscle.
764 (output): Free action_obstack.
765
7662001-09-23 Pascal Bart <pascal.bart@epita.fr>
767
768 * src/reader.c (parse_union_decl): Add new obstack union_obstack. Which
769 will contain `%union' declaration.
770 (parse_union_decl): Delete #line directive output.
771 (parse_union_decl): Substitute /attrs_obstack/union_obstack for all
772 informations about %union.
773 (parse_union_decl): Copy the union_obstack in the muscle stype.
774 * src/bison.simple: Add new #line directive.
775 Add typdef %%stype YYSTYPE.
776
7772001-09-23 Pascal Bart <pascal.bart@epita.fr>
778
779 * src/bison.simple: Add new `#line' directive.
780
7812001-09-22 Pascal Bart <pascal.bart@epita.fr>
782
783 * src/bison.simple: New `#line' directive.
784 * src/output.c (output_parser): Support new dynamic muscle input_line.
785
7862001-09-22 Marc Autret <autret_m@epita.fr>
787
788 * src/output.c (output_master_parser): New.
789 (output_parser): Be more re-entrant.
790
7912001-09-21 Marc Autret <autret_m@epita.fr>
792
793 * src/reader.c (copy_definition, parse_union_decl): Update and use
794 `linef' muscle.
795 (copy_action): Likewise.
796 Use obstack_1grow ().
797 * src/muscle_tab.c (muscle_init): Add muscle `linef'.
798
7992001-09-21 Marc Autret <autret_m@epita.fr>
800
801 * src/options.c (option_table): Adjust.
802 * src/lex.c (parse_percent_token): Fix.
803
8042001-09-20 Pascal Bart <pascal.bart@epita.fr>
805
806 * src/options.c (symtab.h): Include it, need by lex.h.
807
8082001-09-20 Pascal Bart <pascal.bart@epita.fr>
809
810 * src/lex.c (parse_percent_token): Change type of variable `tx', which
811 is now an option_table_struct*.
812 (option_strcmp): New function option_strcmp.
813 (parse_percent_token): Call option_strcmp.
814 * src/getargs.c (xalloc.h, options.h): Include it.
815 (getargs): Call create_long_option_table.
816 (getargs): Free longopts at the end of the function.
817 (shortopts): Move in options.c.
818 * src/options.c (create_long_option_table): New function. Convert
819 information from option_table to option structure.
820 * src/reader.c (options.h): Include it.
821
822 * src/Makefile.am: Adjust.
823 * src/options.c (option_table): Create from longopts and percent_table.
824 * src/getargs.c (longopts): Delete.
825 * src/lex.c (struct percent_table_struct): Delete.
826 (percent_table): Delete.
827 (options.h): Include it.
828 * src/options.c: Create.
829 * src/options.h: Create.
830 Declare enum opt_access_e.
831 Define struct option_table_struct.
832
8332001-09-20 Marc Autret <autret_m@epita.fr>
834
835 * doc/bison.texinfo: Adjust terminologies about prologue and epilogue
836 sections of Bison.
837
8382001-09-19 Pascal Bart <pascal.bart@epita.fr>
839
840 * src/bison.simple: s/%%filename/%%skeleton.
841 * src/muscle_tab.c (getargs.h): Include it.
842 (muscle_init): Insert new muscle skeleton.
843
8442001-09-18 Pascal Bart <pascal.bart@epita.fr>
845
846 * src/output.c (output_parser): Delete unused variable actions_dumped.
847
8482001-09-07 Pascal Bart <pascal.bart@epita.fr>
849
850 * src/output.c (output): Delete call to reader_output_yylsp.
851 * src/reader.c (reader): Likewise.
852 * src/reader.h: Delete declaration of reader_output_yylsp.
853
8542001-09-02 Marc Autret <autret_m@epita.fr>
855
856 * src/reader.c: Include muscle_tab.h.
857 (parse_union_decl): Update.
858 (parse_macro_decl): Rename parse_muscle_decl.
859 Update to use renamed functions and variable.
860 (read_declarations, copy_action, read_additionnal_code, : Updated
861 with correct variables and functions names.
862 (packsymbols, reader): Likewise.
863
864 * src/reader.h (muscle_obstack): Extern declaration update.
865
866 * src/output.c: Include muscle_tab.h
867 In all functions using macro_insert, change by using muscle_insert ().
868 (macro_obstack): Rename muscle_obstack.
869 Echo modifications in the whole file.
870 (MACRO_INSERT_INT): Rename MUSCLE_INSERT_INT.
871 (MACRO_INSERT_STRING): Rename MUSCLE_INSERT_STRING.
872 (MACRO_INSERT_PREFIX): Rename MUSCLE_INSERT_PREFIX.
873
874 * src/muscle_tab.h: Update double inclusion macros.
875 (macro_entry_s): Rename muscle_entry_s.
876 Update prototypes.
877
878 * src/muscle_tab.c: Include muscle_tab.h.
879 Rename macro_tabble to muscle_table.
880 (mhash1, mhash2, mcmp): Use muscle_entry.
881 (macro_init): Rename muscle_init. Update.
882 (macro_insert): Rename muscle_insert. Update.
883 (macro_find): Rename muscle_find. Update.
884
885 * src/main.c: Include muscle_tab.h.
886 (main): Call muscle_init ().
887 * src/Makefile.am (bison_SOURCES): Echo modifications.
888
8892001-09-02 Marc Autret <autret_m@epita.fr>
890
891 Now the files macro_tab.[ch] are named muscle_tab.[ch].
892
893 * src/muscle_tab.c, src/muscle_tab.h: Add files.
894
8952001-09-02 Marc Autret <autret_m@epita.fr>
896
897 * src/macrotab.c, src/macrotab.h: Remove.
898
8992001-09-01 Pascal Bart <pascal.bart@epita.fr>
900
901 * src/reader.c (copy_guard): Use muscle to specify the `#line'
902 filename.
903
9042001-09-01 Marc Autret <autret_m@epita.fr>
905
906 * tests/calc.at (exp): Now, YYERROR_VERBOSE need to be set
907 to an explicit value to activate the feature. We do it here.
908
9092001-08-31 Pascal Bart <pascal.bart@epita.fr>
910
911 * src/output.c (prepare): Delete the `filename' muscule insertion.
912 * src/reader.c (copy_action): Use `filename' muscule with `#line'.
913 (parse_union_decl): Likewise.
914 * src/macrotab.c (macro_init): Initialize filename by infile.
915
9162001-08-31 Marc Autret <autret_m@epita.fr>
917
918 * src/bison.simple (YYLSP_NEEDED): New definition.
919 * src/output.c (prepare): Add macro insertion of `locations_flag'
920
9212001-08-31 Pascal Bart <pascal.bart@epita.fr>
922
923 * src/output.c (prepare): Delete insertion of previous muscles,
924 and insert the `prefix' muscles.
925 * src/macrotab.c (macro_init): Likewise.
926 (macro_init): Initialization prefix directive by `yy'.
927 * src/bison.simple: Substitute all %%yylex, %%yychar, %%yylval,
928 %%yydebug, %%yyerror, %%yynerrs and %%yyparse by yylex, yychar,
929 yylval, yydebug, yyerror, yynerrs and yyparse.
930 New directive `#define' to substitute yydebug, ... with option
931 name_prefix.
932
9332001-08-31 Pascal Bart <pascal.bart@epita.fr>
934
935 * src/main.c (main): Standardize.
936 * src/output.c (output_table_data, output_parser): Likewise.
937 * src/macrotab.h, src/macrotab.c, src/bison.simple: Likewise.
938
9392001-08-31 Pascal Bart <pascal.bart@epita.fr>, Marc Autret <autret_m@epita.fr>
940
941 * src/reader.c (read_additionnal_code): Rename %%user_code to
942 %%epilogue.
943 * src/output.c (output): Rename %%declarations to %%prologue.
944 * src/bison.simple: Echo modifications.
945
9462001-08-31 Marc Autret <autret_m@epita.fr>
947
948 * src/reader.c (readgram): CleanUp.
949 (output_token_defines): Likewise.
950 (packsymbols): Likewise.
951 (reader): Likewise.
952 * src/output.c (output): CPP-out useless code.
953
9542001-08-31 Pascal Bart <pascal.bart@epita.fr>
955
956 * src/reader.c (reader): Delete obsolete call to function
957 output_trailers and output_headers.
958 * src/output.h: Remove obsolete functions prototypes of output_headers
959 and output_trailers.
960
9612001-08-30 Pascal Bart <pascal.bart@epita.fr>
962
963 * src/main.c: Include macrotab.h.
964 * src/macrotab.h (macro_entry_s): Constify fields.
965 Adjust functions prototypes.
966 * src/macrotab.c (macro_insert): Constify key and value.
967 (macro_find): Constify key.
968 (macro_insert): Include 'xalloc.h'
969 (macro_insert): Use XMALLOC.
970 (macro_find): Constify return value.
971 * src/output.c (output_table_data): Rename table to table_data.
972 (output_parser): Constify macro_key, macro_value.
973
9742001-08-30 Marc Autret <autret_m@epita.fr>
975
976 * src/reader.c (parse_skel_decl): New.
977 (read_declarations): Add case `tok_skel', call parse_skel_decl ().
978 * src/lex.h (token_t): New token `tok_skel'.
979 * src/lex.c (percent_table): Add skeleton option entry.
980 Standardize.
981
9822001-08-29 Marc Autret <autret_m@epita.fr>
983
984 * src/bison.simple: Add %%user_code directive at the end.
985 * src/reader.c (read_additionnal_code): New.
986 (reader): Use it.
987 * src/output.c (output_program): Remove.
988 (output): Update.
989
9902001-08-28 Marc Autret <autret_m@epita.fr>
991
992 * src/output.c (output_actions): Clean up.
993 (output_gram): CPP-out useless code.
994 * src/reader.c (reader): Clean up, CPP-out useless code.
995
9962001-08-28 Pascal Bart <pascal.bart@epita.fr>
997
998 * src/output.c (output): Copy attrs_obstack in the '%%definitions'
999 directive.
1000 * src/bison.simple: Add `%%definitions'.
1001
10022001-08-28 Marc Autret <autret_m@epita.fr>
1003
1004 * config/depcomp: New file.
1005
10062001-08-27 Paul Eggert <eggert@twinsun.com>
1007
1008 * src/bison.simple (yyparse): Don't take the address of an
1009 item before the start of an array, as that doesn't conform to
1010 the C Standard.
1011
10122001-08-27 Robert Anisko <robert.anisko@epita.fr>
1013
1014 * src/output.c (output): Remove the initialization of the macro
1015 obstack. It was done too late here.
1016
1017 * src/reader.c (parse_macro_decl): Fix. Use of the macro obstack was
1018 completely wrong.
1019 (reader): Initialize the macro obstack here, since we need it to grow
1020 '%define' directives.
1021
1022 * src/reader.h: Declare the macro obstack as extern.
1023
10242001-08-27 Robert Anisko <robert.anisko@epita.fr>
1025
1026 * src/output.c (output_parser): Fix. Store single '%' characters in
1027 the output obstack instead of throwing them away.
1028
10292001-08-27 Akim Demaille <akim@epita.fr>
1030
1031 * Makefile.am (AUTOMAKE_OPTIONS): 1.5.
1032
10332001-08-25 Robert Anisko <robert.anisko@epita.fr>
1034
1035 * lib/Makefile.am: Adjust.
1036
10372001-08-25 Robert Anisko <robert.anisko@epita.fr>
1038
1039 * src/bison.simple: Update and add '%%' directives.
1040
10412001-08-25 Robert Anisko <robert.anisko@epita.fr>
1042
1043 * src/reader.c (reader): Remove calls to 'output_headers' and
1044 'output_trailers'. Remove some C output.
1045 (readgram): Disable a piece of code that was writing a default
1046 definition for 'YYSTYPE'.
1047 (reader_output_yylsp): Remove.
1048 (packsymbols): Output token defintions to a macro.
1049 (copy_definition): Disable C output.
1050
1051 * src/reader.c (parse_macro_decl): New function used to parse macro
1052 declarations.
1053 (copy_string2): Put the body of copy_string into this new function.
1054 Add a parameter to let the caller choose whether he wants to copy the
1055 string delimiters or not.
1056 (copy_string): Be a simple call to copy_string2 with the last argument
1057 bound to true.
1058 (read_declarations): Add case for macro definition.
1059 (copy_identifier): New.
1060 (parse_macro_decl): Read macro identifiers using copy_identifier
1061 rather than lex.
1062
10632001-08-25 Robert Anisko <robert.anisko@epita.fr>
1064
1065 * src/output.c (prepare): Add prefixed names.
1066 (output_parser): Output semantic actions.
1067 (output_parser): Fix bug on '%%line' directives.
1068
1069 * src/output.c (output_headers): Remove. The C code printed by this
1070 function should now be in the skeletons.
1071 (output_trailers): Remove.
1072 (output): Disable call to 'reader_output_yylsp'.
1073 (output_rule_data): Do not output tables to the table obstack.
1074
1075 * src/output.c: Remove some C dedicated output.
1076 Improve the use of macro and output obstacks.
1077 (output_defines): Remove.
1078
1079 * src/output.c (output_token_translations): Associate 'translate'
1080 table with a macro. No output to the table obstack.
1081 (output_gram): Same for 'rhs' and 'prhs'.
1082 (output_stos): Same for 'stos'.
1083 (output_rule_data): Same for 'r1' and 'r2'.
1084 (token_actions): Same for 'defact'.
1085 (goto_actions): Same for 'defgoto'.
1086 (output_base): Same for 'pact' and 'pgoto'.
1087 (output_table): Same for 'table'.
1088 (output_check): Same for 'check'.
1089
1090 * src/output.c (output_table_data): New function.
1091 (output_short_table): Remove.
1092 (output_short_or_char_table): Remove.
1093
1094 * src/output.c (output_parser): Replace most of the skeleton copy code
1095 with something new. Skeletons are now processed character by character
1096 rather than line by line, and Bison looks for '%%' macros. This is the
1097 first step in making Bison's output process (a lot) more flexible.
1098 (output_parser): Use the macro table.
1099
11002001-08-25 Robert Anisko <robert.anisko@epita.fr>
1101
1102 * src/main.c (main): Initialize the macro table.
1103
11042001-08-25 Robert Anisko <robert.anisko@epita.fr>
1105
1106 * src/lex.c (percent_table): Add tok_define.
1107 * src/lex.h: Add tok_define.
1108
11092001-08-25 Robert Anisko <robert.anisko@epita.fr>
1110
1111 * src/macrotab.c: New file.
1112 * src/macrotab.h: New file.
1113 * src/Makefile.am: Update.
1114
11152001-08-25 Robert Anisko <robert.anisko@epita.fr>
1116
1117 * lib/hash.c: New file.
1118 * lib/hash.h: New file.
1119 * lib/Makefile.am: Update.
1120
11212001-08-15 Akim Demaille <akim@epita.fr>
1122
1123 Version 1.28c.
1124
11252001-08-15 Marc Autret <autret_m@epita.fr>
1126
1127 * src/reader.c (readgram): Indent output macro YYSTYPE.
1128 (packsymbols): Likewise.
1129 (output_token_defines): Likewise.
1130 * src/files.c: Standardize.
1131 (compute_header_macro): New.
1132 (defines_obstack_save): New. Use compute_header_macro.
1133 (output_files): Update. Use defines_obstack_save.
1134
11352001-08-15 Akim Demaille <akim@epita.fr>
1136
1137 * doc/bison.texinfo (Table of Symbols): Document
1138 YYSTACK_USE_ALLOCA.
1139
11402001-08-15 Akim Demaille <akim@epita.fr>
1141
1142 * missing: Update from CVS Automake.
1143 * config/config.guess, config/config.sub, config/texinfo.tex:
1144 Update from gnu.org.
1145
11462001-08-15 Akim Demaille <akim@epita.fr>
1147
1148 * Makefile.maint: Sync with CVS Autoconf.
1149
11502001-08-14 Pascal Bart <pascal.bart@epita.fr>
1151
1152 * doc/bison.texinfo: Include GNU Free Documentation License from
1153 `fdl.texi'.
1154 * doc/fdl.texi: Add to package.
1155
11562001-08-14 Marc Autret <autret_m@epita.fr>
1157
1158 Turn on %{source,header}_extension features.
1159
1160 * src/lex.c (percent_table): Un-CPP out header_extension and
1161 source_extension.
1162 * src/files.c (compute_exts_from_gf): Compare pointers with NULL.
1163 (compute_exts_from_src): Remove conditions. It restores priorities
1164 between options.
1165
11662001-08-14 Marc Autret <autret_m@epita.fr>
1167
1168 * src/files.c (compute_base_names): Add extensions computing when
1169 `--file-prefix' used.
1170 Standardize function calls.
1171
11722001-08-13 Marc Autret <autret_m@epita.fr>
1173
1174 * src/bison.simple (YYSTACK_USE_ALLOCA): Changed to allow users
1175 defining it (defined but null disables alloca).
1176
11772001-08-13 Marc Autret <autret_m@epita.fr>
1178
1179 * src/bison.simple (_yy_memcpy): CPP reformat.
1180
11812001-08-13 Pascal Bart <pascal.bart@epita.fr>
1182
1183 * tests/atconfig.in (CPPFLAGS): Fix.
1184
11852001-08-10 Pascal Bart <pascal.bart@epita.fr>
1186
1187 * doc/bison.texinfo: Include GNU General Public License from
1188 `gpl.texi'.
1189 * doc/gpl.texi: Add to package.
1190
11912001-08-10 Marc Autret <autret_m@epita.fr>
1192
1193 * src/print_graph.h: Fix.
1194 * src/reader.c (read_declarations): Use parse_header_extension_decl ().
1195
11962001-08-10 Akim Demaille <akim@epita.fr>
1197
1198 * src/system.h: Provide default declarations for stpcpy, strndup,
1199 and strnlen.
1200
12012001-08-10 Robert Anisko <anisko_r@epita.fr>
1202
1203 * doc/bison.texinfo (Locations): Update @$ stuff.
1204
12052001-08-09 Robert Anisko <anisko_r@epita.fr>
1206
1207 * src/bison.simple (YYLLOC_DEFAULT): Update.
1208 (yyparse): Adjust.
1209
12102001-08-08 Marc Autret <autret_m@epita.fr>
1211
1212 * doc/bison.texinfo: Change @samp{$<@dots{}>} to
1213 @samp{$<@dots{}>@var{n}} in Section Actions in Mid-Rule.
1214 Reported by Fabrice Bauzac.
1215
12162001-08-08 Marc Autret <autret_m@epita.fr>
1217
1218 * src/vcg_default.h: Use NULL instead of 0 to initialize pointers.
1219 * src/vcg.c (output_node): Fix.
1220 * src/vcg.h: Cleanup.
1221 * src/print_graph.c: Add comments.
1222 (node_output_size): New global variable. Simplify the formatting of
1223 the VCG graph output.
1224 (print_actions): Unused code is now used. It notifies the final state
1225 and no action states in the VCG graph. It also give the reduce actions.
1226 The `shift and goto' edges are red and the `go to state' edges are
1227 blue.
1228 Get the current node name and node_obstack by argument.
1229 (node_obstack): New variable.
1230 (print_state): Manage node_obstack.
1231 (print_core): Use node_obstack given by argument.
1232 A node is not only computed here but in print_actions also.
1233 (print_graph): CPP out useless code instead of commenting it.
1234
12352001-08-07 Pascal Bart <pascal.bart@epita.fr>
1236
1237 * tests/atconfig.in (CPPFLAGS): Fix.
1238
12392001-08-07 Akim Demaille <akim@epita.fr>
1240
1241 * src/print_graph.c (quote): New.
1242 (print_core): Use it.
1243
12442001-08-06 Akim Demaille <akim@epita.fr>, Marc Autret <autret_m@epita.fr>
1245
1246 * src/vcg.c (complain.h): Include it.
1247 Unepitaize `return' invocations.
1248 [NDEBUG] (main): Remove.
1249 * src/vcg.h (node_t, edge_t, graph_t): Constify the char * members.
1250 * src/files.c (open_files): Initialize graph_obstack.
1251 * src/print_graph.c (print_actions): CPP out useless code.
1252 (print_core): Don't output the last `\n' in labels.
1253 Use `quote'.
1254 * src/files.c (output_files): Output the VCG file.
1255 * src/main.c (main): Invoke print_graph ();
1256
12572001-08-06 Marc Autret <autret_m@epita.fr>
1258
1259 Automaton VCG graph output.
1260 Using option ``-g'' or long option ``--graph'', you can generate
1261 a gram_filename.vcg file containing a VCG description of the LALR (1)
1262 automaton of your grammar.
1263
1264 * src/main.c: Call to print_graph() function.
1265 * src/getargs.h: Update.
1266 * src/getargs.c (options): Update to catch `-g' and `--graph' options.
1267 (graph_flag): New flag.
1268 (longopts): Update.
1269 (getargs): Add case `g'.
1270 * src/files.c (graph_obstack): New obstack struct.
1271 (open_files): Initialize new obstack.
1272 (output_files): Saves graph_obstack if required.
1273 * src/files.h (graph_obstack): New extern declaration.
1274 * src/Makefile.am: Add new source files.
1275
12762001-08-06 Marc Autret <autret_m@epita.fr>
1277
1278 * src/print_graph.c, src/print_graph.h (graph): New.
1279 * src/vcg.h: New file.
1280 * src/vcg.c: New file, VCG graph handling.
1281
12822001-08-06 Marc Autret <autret_m@epita.fr>
1283
1284 Add of %source_extension and %header_extension which specify
1285 the source or/and the header output file extension.
1286
1287 * src/files.c (compute_base_names): Remove initialisation of
1288 src_extension and header_extension.
1289 (compute_exts_from_gf): Update.
1290 (compute_exts_from_src): Update.
1291 (output_files): Update.
1292 * src/reader.c (parse_header_extension_decl): New.
1293 (parse_source_extension_decl): New.
1294 (read_declarations): New case statements for the new tokens.
1295 * src/lex.c (percent_table): Add entries for %source_extension
1296 and %header_extension.
1297 * src/lex.h (token_e): New tokens tok_hdrext and tok_srcext.
1298
12992001-08-06 Marc Autret <autret_m@epita.fr>
1300
1301 * configure.in: Bump to 1.28c.
1302 * doc/bison.texinfo: Texinfo thingies.
1303
13042001-08-04 Pascal Bart <pascal.bart@epita.fr>
1305
1306 * tests/atconfig.in (CPPFLAGS): Add.
1307 * tests/calc.at (AT_CHECK): Use CPPFLAGS.
1308
13092001-08-03 Akim Demaille <akim@epita.fr>
1310
1311 Version 1.28b.
1312
13132001-08-03 Akim Demaille <akim@epita.fr>
1314
1315 * tests/Makefile.am (check-local): Ship testsuite.
1316 * tests/calc.at (_AT_DATA_CALC_Y): Prototype all the functions.
1317 Include `string.h'.
1318
13192001-08-03 Akim Demaille <akim@epita.fr>
1320
1321 * configure.in: Try using -Wformat when compiling.
1322
13232001-08-03 Akim Demaille <akim@epita.fr>
1324
1325 * configure.in: Bump to 1.28b.
1326
13272001-08-03 Akim Demaille <akim@epita.fr>
1328
1329 * src/complain.c: Adjust strerror_r portability issues.
1330
13312001-08-03 Akim Demaille <akim@epita.fr>
1332
1333 Version 1.28a.
1334
13352001-08-03 Akim Demaille <akim@epita.fr>
1336
1337 * src/getargs.c, src/getarg.h (skeleton)): Constify.
1338 * src/lex.c (literalchar): Avoid name clashes on `buf'.
1339 * src/getargs.c: Include complain.h.
1340 * src/files.c, src/files.h (skeleton_find): Avoid name clashes.
1341 * lib/quotearg.c, lib/quotearg.h: Update from fileutils 4.1.
1342
13432001-08-03 Akim Demaille <akim@epita.fr>
1344
1345 * src/reader.c (readgram): Display hidden chars in error messages.
1346
13472001-08-03 Akim Demaille <akim@epita.fr>
1348
1349 Update to gettext 0.10.39.
1350
13512001-08-03 Akim Demaille <akim@epita.fr>
1352
1353 * lib/strspn.c: New.
1354
13552001-08-01 Marc Autret <autret_m@epita.fr>
1356
1357 * doc/bison.texinfo: Update.
1358 * doc/bison.1 (mandoc): Update.
1359 * src/system.h (EXT_GUARD_C, EXT_STYPE_H): Remove .c and .h.
1360 * src/files.c: Support output files extensions computing.
1361 (src_extension): New static variable.
1362 (header_extension): New static variable.
1363 (tr): New function.
1364 (get_extension_index): New function, gets the index of an extension
1365 filename in a string.
1366 (compute_exts_from_gf): New function, computes extensions from the
1367 grammar file extension.
1368 (compute_exts_from_src): New functions, computes extensions from the
1369 C source file extension, file given by ``-o'' option.
1370 (compute_base_names): Update.
1371 (output_files): Update.
1372
13732001-08-01 Robert Anisko <anisko_r@epita.fr>
1374
1375 * doc/bison.texi: Document @$.
1376 (Locations): New section.
1377
13782001-07-18 Akim Demaille <akim@epita.fr>
1379
1380 * Makefile.maint, GNUmakefile: New, from Autoconf 2.52.
1381 * config/prev-version.txt, config/move-if-change: New.
1382 * Makefile.am: Adjust.
1383
13842001-07-08 Pascal Bart <pascal.bart@epita.fr>
1385
1386 * src/bison.simple (yyparse): Suppress warning `comparaison
1387 between signed and unsigned'.
1388
13892001-07-05 Pascal Bart <pascal.bart@epita.fr>
1390
1391 * src/getargs.h (raw_flag): Remove.
1392 * src/getargs.c: Die on `-r'/`--raw'.
1393 * src/lex.c (parse_percent_token): Die on `%raw'.
1394 * src/reader.c (output_token_defines): Suppress call to `raw_flag'.
1395 * tests/calc.at: Suppress test with option `--raw'.
1396
13972001-07-14 Akim Demaille <akim@epita.fr>
1398
1399 * config/: New.
1400 * configure.in: Require Autoconf 2.50.
1401 Update to gettext 0.10.38.
1402
14032001-03-16 Akim Demaille <akim@epita.fr>
1404
1405 * doc/bison.texinfo: ANSIfy the examples.
1406
14072001-03-16 Akim Demaille <akim@epita.fr>
1408
1409 * getargs.c (skeleton): New variable.
1410 (longopts): --skeleton is a new option.
1411 (shortopts, getargs): -S is a new option.
1412 * getargs.h: Declare skeleton.
1413 * output.c (output_parser): Use it.
1414
14152001-03-16 Akim Demaille <akim@epita.fr>
1416
1417 * m4/strerror_r.m4: New.
1418 * m4/error.m4: Run AC_FUNC_STRERROR_R.
1419 * lib/error.h, lib/error.c: Update.
1420
14212001-03-16 Akim Demaille <akim@epita.fr>
1422
1423 * src/getargs.c (longopts): Clean up.
1424
14252001-02-21 Akim Demaille <akim@epita.fr>
1426
1427 * src/reader.c (gensym): `gensym_count' is your own.
1428 Use a static buf to create the symbol name, as token_buffer is no
1429 longer a buffer.
1430
14312001-02-08 Akim Demaille <akim@epita.fr>
1432
1433 * src/conflicts.c (conflict_report): Be sure not to append to res
1434 between two calls, which could happen if both first sprintf were
1435 skipped, but not the first cp += strlen.
1436
14372001-02-08 Akim Demaille <akim@epita.fr>
1438
1439 * lib/memchr.c, lib/stpcpy.c, lib/strndup.c, lib/strnlen.c:
1440 New, from fileutils 4.0.37.
1441 * configure.in: Require Autoconf 2.49c. I took some time before
1442 making this decision. This is the only way out for portability
1443 issues in Bison, it would mean way too much duplicate effort to
1444 import in Bison features implemented in 2.49c since 2.13.
1445 AC_REPLACE_FUNCS and AC_CHECK_DECLS the functions above.
1446
14472001-02-02 Akim Demaille <akim@epita.fr>
1448
1449 * lib/malloc.c, lib/realloc.c: New, from the fileutils 4.0.37.
1450 * lib/xalloc.h, lib/xmalloc.c: Update.
1451
14522001-01-19 Akim Demaille <akim@epita.fr>
1453
1454 Get rid of the ad hoc handling of token_buffer in the scanner: use
1455 the obstacks.
1456
1457 * src/lex.c (token_obstack): New.
1458 (init_lex): Initialize it. No longer call...
1459 (grow_token_buffer): this. Remove it.
1460 Adjust all the places which used it to use the obstack.
1461
14622001-01-19 Akim Demaille <akim@epita.fr>
1463
1464 * src/lex.h: Rename all the tokens:
1465 s/\bENDFILE\b/tok_eof/g;
1466 s/\bIDENTIFIER\b/tok_identifier/g;
1467 etc.
1468 Let them be enums, not #define, to ease debugging.
1469 Adjust all the code.
1470
14712001-01-18 Akim Demaille <akim@epita.fr>
1472
1473 * src/lex.h (MAXTOKEN, maxtoken, grow_token_buffer): Remove, private.
1474 * src/lex.c (maxtoken, grow_token_buffer): Static.
1475
14762001-01-18 Akim Demaille <akim@epita.fr>
1477
1478 Since we now use obstacks, more % directives can be enabled.
1479
1480 * src/lex.c (percent_table): Also accept `%yacc',
1481 `%fixed_output_files', `%defines', `%no_parser', `%verbose', and
1482 `%debug'.
1483 Handle the actions for `%semantic_parser' and `%pure_parser' here,
1484 instead of returning a token.
1485 * src/lex.h (SEMANTIC_PARSER, PURE_PARSER): Remove, unused.
1486 * src/reader.c (read_declarations): Adjust.
1487 * src/files.c (open_files): Don't call `compute_base_names', don't
1488 compute `attrsfile' since they depend upon data which might be
1489 *in* the input file now.
1490 (output_files): Do it here.
1491 * src/output.c (output_headers): Document the fact that this patch
1492 introduces a guaranteed SEGV for semantic parsers.
1493 * doc/bison.texinfo: Document them.
1494 * tests/suite.at: Exercise these %options.
1495
14962000-12-20 Akim Demaille <akim@epita.fr>
1497
1498 Also handle the output file (--verbose) with obstacks.
1499
1500 * files.c (foutput): Remove.
1501 (output_obstack): New.
1502 Adjust all dependencies.
1503 * src/conflicts.c: Return a string.
1504 * src/system.h (obstack_grow_string): Rename as...
1505 (obstack_sgrow): this. Be ready to work with non literals.
1506 (obstack_fgrow4): New.
1507
15082000-12-20 Akim Demaille <akim@epita.fr>
1509
1510 * src/files.c (open_files): Fix the computation of short_base_name
1511 in the case of `-o foo.tab.c'.
1512
15132000-12-20 Akim Demaille <akim@epita.fr>
1514
1515 * src/reader.c (copy_string, copy_comment, copy_comment2, copy_at)
1516 (copy_dollar): Now that everything uses obstacks, get rid of the
1517 FILE * parameters.
1518
15192000-12-20 Akim Demaille <akim@epita.fr>
1520
1521 * src/files.c (open_files): Actually the `.output' file is based
1522 on the short_base_name, not base_name.
1523 * tests/suite.at (Checking output file names): Adjust.
1524
15252000-12-20 Akim Demaille <akim@epita.fr>
1526
1527 * src/bison.s1: Remove, we now use directly...
1528 * src/bison.simple: this.
1529 * src/Makefile.am: Use pkgdata instead of data.
1530
15312000-12-20 Akim Demaille <akim@epita.fr>
1532
1533 * src/files.c (guard_obstack): New.
1534 (open_files): Initialize it.
1535 (output_files): Dump it...
1536 * src/files.h: Export it.
1537 * src/reader.c (copy_guard): Use it.
1538
15392000-12-19 Akim Demaille <akim@epita.fr>
1540
1541 * src/files.c (outfile, defsfile, actfile): Removed as global
1542 vars.
1543 (open_files): Don't compute them.
1544 (output_files): Adjust.
1545 (base_name, short_base_name): Be global.
1546 Adjust dependencies.
1547
15482000-12-19 Akim Demaille <akim@epita.fr>
1549
1550 * src/files.c (strsuffix): New.
1551 (stringappend): Be just like strcat but allocate.
1552 (base_names): Eve out from open_files.
1553 Try to simplify the rather hairy computation of base_name and
1554 short_base_name.
1555 (open_files): Use it.
1556 * tests/suite.at (Checking output file names): New test.
1557
15582000-12-19 Akim Demaille <akim@epita.fr>
1559
1560 * src/system.h (obstack_grow_literal_string): Rename as...
1561 (obstack_grow_string): this.
1562 * src/output.c (output_parser): Recognize `%% actions' instead of
1563 `$'.
1564 * src/bison.s1: s/$/%% actions/.
1565 * src/bison.hairy: Likewise.
1566
15672000-12-19 Akim Demaille <akim@epita.fr>
1568
1569 * src/output.c (output_parser): Compute the `#line' lines when
1570 there are.
1571 * src/Makefile.am (bison.simple): Be a simple copy of bison.s1.
1572 Suggested by Hans Aberg.
1573
15742000-12-19 Akim Demaille <akim@epita.fr>
1575
1576 Let the handling of the skeleton files be local to the procedures
1577 that use it.
1578
1579 * src/files.c (xfopen, xfclose, skeleton_find, guardfile): No
1580 longer static.
1581 (fparser, open_extra_files): Remove.
1582 (open_files, output_files): Don't take care of fparser.
1583 * src/files.h: Adjust.
1584 * src/output.c (output_parser): Open and close the file to the
1585 skeleton.
1586 * src/reader.c (read_declarations): When %semantic_parser, open
1587 fguard.
1588
15892000-12-19 Akim Demaille <akim@epita.fr>
1590
1591 * src/file.h (BISON_SIMPLE, BISON_HAIRY): Move from here...
1592 * src/system.h (BISON_SIMPLE, BISON_HAIRY): ... to here.
1593
15942000-12-19 Akim Demaille <akim@epita.fr>
1595
1596 * src/files.c (open_files): Yipee! We no longer need all the code
1597 looking for `/tmp' since we have no tmp file.
1598
15992000-12-19 Akim Demaille <akim@epita.fr>
1600
1601 * src/system.h (EXT_TAB, EXT_OUTPUT, EXT_STYPE_H, EXT_GUARD_C):
1602 New macros.
1603 * src/files.c (open_files): Less dependency on MSDOS etc.
1604
16052000-12-14 Akim Demaille <akim@epita.fr>
1606
1607 * src/bison.s1 (YYLLOC_DEFAULT): New macro.
1608 Provide a default definition.
1609 Use it when executing the default @ action.
1610 * src/reader.c (reader_output_yylsp): No longer include
1611 `timestamp' and `text' in the default YYLTYPE.
1612
16132000-12-12 Akim Demaille <akim@epita.fr>
1614
1615 * src/reader.c (copy_definition, parse_union_decl, copy_action)
1616 (copy_guard): Quote the file names.
1617 Reported by Laurent Mascherpa.
1618
16192000-12-12 Akim Demaille <akim@epita.fr>
1620
1621 * src/output.c (output_headers, output_program, output): Be sure
1622 to escape special characters when outputting filenames.
1623 (ACTSTR_PROLOGUE, ACTSTR_EPILOGUE): Remove.
1624 (output_headers): Don't depend on them, Use ACTSTR.
1625
16262000-11-17 Akim Demaille <akim@epita.fr>
1627
1628 * lib/obstack.h: Formatting changes.
1629 (obstack_grow, obstack_grow0): Don't cast WHERE at all: it
1630 prevents type checking.
1631 (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
1632 cast the value to (void *): assigning a `foo *' to a `void *'
1633 variable is valid.
1634 (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
1635 * src/reader.c (parse_union_decl): Typo: use obstack_1grow to
1636 append characters.
1637
16382000-11-17 Akim Demaille <akim@epita.fr>
1639
1640 * tests/Makefile.am (suite.m4, regression.m4, calc.m4): Rename
1641 as...
1642 (suite.m4, regression.m4, calc.m4): these.
1643 * tests/atgeneral.m4: Update from CVS Autoconf.
1644
16452000-11-17 Akim Demaille <akim@epita.fr>
1646
1647 * tests/regression.m4 (%union and --defines): New test,
1648 demonstrating a current bug in the obstack implementation.
1649
16502000-11-17 Akim Demaille <akim@epita.fr>
1651
1652 * src/bison.s1 (_YY_DECL_VARIABLES, YY_DECL_VARIABLES): New
1653 macros.
1654 Use them to declare the variables which are global or local to
1655 `yyparse'.
1656
16572000-11-17 Akim Demaille <akim@epita.fr>
1658
1659 * acconfig.h: Remove, no longer used.
1660
16612000-11-07 Akim Demaille <akim@epita.fr>
1662
1663 * src: s/Copyright (C)/Copyright/g.
1664
16652000-11-07 Akim Demaille <akim@epita.fr>
1666
1667 * src/reader.c (reader): #define YYLSP_NEEDED to 1 instead of just
1668 defining.
1669 * src/bison.s1: s/#ifdef YYLSP_NEEDED/#if YYLSP_NEEDED/.
1670
16712000-11-07 Akim Demaille <akim@epita.fr>
1672
1673 * src/bison.s1 (YYLEX): Use #if instead of #ifdef.
1674 Merge in a single CPP if/else.
1675
16762000-11-07 Akim Demaille <akim@epita.fr>
1677
1678 * src/output.c (output): Remove useless variables.
1679 * lib/obstack.c (obstack_grow, obstack_grow0): Rename the second
1680 argument `data' for consistency with the prototypes.
1681 Qualify it `const'.
1682 (obstack_copy, obstack_copy0): Rename the second argument as
1683 `address' for consistency. Qualify it `const'.
1684 * lib/obstack.h (obstack_copy, obstack_copy0, obstack_grow)
1685 (obstack_grow0, obstack_ptr_grow, obstack_ptr_grow_fast): Qualify
1686 `const' their input argument (`data' or `address').
1687 Adjust the corresponding macros to include `const' in casts.
1688
16892000-11-03 Akim Demaille <akim@epita.fr>
1690
1691 * src/Makefile.am (INCLUDES): s/PFILE/BISON_SIMPLE/.
1692 s/PFILE1/BISON_HAIRY/.
1693 Adjust dependencies.
1694
16952000-11-03 Akim Demaille <akim@epita.fr>
1696
1697 For some reason, this was not applied.
1698
1699 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
1700 `unlink': it's no longer used.
1701
17022000-11-03 Akim Demaille <akim@epita.fr>
1703
1704 * src/files.c (skeleton_find): New function, eved out of...
1705 (open_files, open_extra_files): here.
1706
17072000-11-03 Akim Demaille <akim@epita.fr>
1708
1709 Don't use `atexit'.
1710
1711 * src/files.c (obstack_save): New function.
1712 (done): Rename as...
1713 (output_files): this.
1714 Use `obstack_save'.
1715 * src/main.c (main): Don't use `atexit' to register `done', since
1716 it no longer has to remove tmp files, just call `output_files'
1717 when there are no errors.
1718
17192000-11-02 Akim Demaille <akim@epita.fr>
1720
1721 * src/files.c [VMS]: No longer include `ssdef.h', no longer define
1722 `unlink': it's no longer used.
1723 * src/files.h: Formatting changes.
1724
17252000-11-02 Akim Demaille <akim@epita.fr>
1726
1727 Remove the last uses of mktemp and unlink/delete.
1728
1729 * src/files.c (fdefines, ftable): Removed.
1730 (defines_ostack, table_obstack): New.
1731 Adjust dependencies of the former into uses of the latter.
1732 * src/output.c (output_short_or_char_table, output_short_table):
1733 Convert to using obstacks.
1734 * src/reader.c (copy_comment2): Accept one FILE * and two
1735 obstacks.
1736 (output_token_defines, reader_output_yylsp): Use obstacks.
1737 * src/system.h (obstack_fgrow3): New.
1738
17392000-11-01 Akim Demaille <akim@epita.fr>
1740
1741 Change each use of `fattrs' into a use of `attrs_obstack'.
1742
1743 * src/reader.c (copy_at): Typo: s/yylloc/yyloc/.
1744 * src/files.c (fattrs): Remove.
1745 (attrs_obstack): New.
1746 Adjust all dependencies.
1747 (done): If SEMANTIC_PARSER, dump attrs_obstack into attrsfile.
1748
17492000-11-01 Akim Demaille <akim@epita.fr>
1750
1751 Introduce obstacks.
1752 Change each use of `faction' into a use of `action_obstack'.
1753
1754 * lib/obstack.h, lib/obstack.c: New files.
1755 * src/files.c (faction): Remove.
1756 (action_obstack): New.
1757 Adjust all dependencies.
1758
17592000-10-20 Akim Demaille <akim@epita.fr>
1760
1761 * lib/quote.h (PARAMS): New macro. Use it.
1762
17632000-10-16 Akim Demaille <akim@epita.fr>
1764
1765 * src/output.c (output_short_or_char_table): New function.
1766 (output_short_table, output_token_translations): Use it.
1767 (goto_actions): Use output_short_table.
1768
17692000-10-16 Akim Demaille <akim@epita.fr>
1770
1771 * src/symtab.c (bucket_new): New function.
1772 (getsym): Use it.
1773
1774 * src/output.c (output_short_table): New argument to display the
1775 comment associated with the table.
1776 Adjust dependencies.
1777 (output_gram): Use it.
1778 (output_rule_data): Nicer output layout for YYTNAME.
1779
17802000-10-16 Akim Demaille <akim@epita.fr>
1781
1782 * src/lex.c (read_typename): New function.
1783 (lex): Use it.
1784 * src/reader.c (copy_dollar): Likewise.
1785
17862000-10-16 Akim Demaille <akim@epita.fr>
1787
1788 * src/reader.c (copy_comment2): Expect the input stream to be on
1789 the `/' which is suspected to open a comment, instead of being
1790 called after `//' or `/*' was read.
1791 (copy_comment, copy_definition, parse_union_decl, copy_action)
1792 (copy_guard): Adjust.
1793
17942000-10-16 Akim Demaille <akim@epita.fr>
1795
1796 * src/reader.c (parse_expect_decl): Use `skip_white_space' and
1797 `read_signed_integer'.
1798
17992000-10-16 Akim Demaille <akim@epita.fr>
1800
1801 * src/reader.c (copy_dollar): New function.
1802 (copy_guard, copy_action): Use it.
1803
18042000-10-16 Akim Demaille <akim@epita.fr>
1805
1806 * lib/quote.h, lib/quote.c, lib/quotearg.h, lib/quotearg.c:
1807 * m4/prereq.m4, m4/c-bs-a.m4, m4/mbstate.m4:
1808 New files, from Fileutils 4.0.27.
1809 * src/main.c (printable_version): Remove.
1810 * src/lex.c, src/reader.c: Use `quote'.
1811
18122000-10-04 Akim Demaille <akim@epita.fr>
1813
1814 * lib/error.c, lib/error.h: New files, needed by xmalloc.c.
1815
18162000-10-04 Akim Demaille <akim@epita.fr>
1817
1818 * doc/bison.texinfo: Various typos spotted by Neil Booth.
1819
18202000-10-04 Akim Demaille <akim@epita.fr>
1821
1822 When a literal string is used to define two different tokens,
1823 `bison -v' segfaults.
1824 Reported by Piotr Gackiewicz, and fixed by Neil Booth.
1825
1826 * tests/regression.m4: New file.
1827 Include the core of the sample provided by Piotr Gackiewicz.
1828 * src/reader.c (parse_token_decl): Diagnose bad cases, and proceed
1829 properly.
1830
18312000-10-04 Akim Demaille <akim@epita.fr>
1832
1833 * src/reader.c (parse_expect_decl): Keep `count' within the size
1834 of `buffer'.
1835 From Neil Booth.
1836
18372000-10-02 Paul Eggert <eggert@twinsun.com>
1838
1839 * bison.s1 (yyparse): Assign the default value
1840 unconditionally, to avoid a GCC warning and make the parser a
1841 tad smaller.
1842
18432000-10-02 Akim Demaille <akim@epita.fr>
1844
1845 * src/getargs.c (getargs): Don't dump `--help' on unrecognized
1846 options.
1847
18482000-10-02 Akim Demaille <akim@epita.fr>
1849
1850 * src/derives.c, src/print.c, src/reduce.c: To ease the
1851 translation, move some `\n' out of the translated strings.
1852
18532000-10-02 Akim Demaille <akim@epita.fr>
1854
1855 The location tracking mechanism is precious for parse error
1856 messages. Nevertheless, it is enabled only when `@n' is used in
1857 the grammar, which is a different issue (you can use it in error
1858 message, but not in the grammar per se). Therefore, there should
1859 be another means to enable it.
1860
1861 * src/getargs.c (getargs): Support `--locations'.
1862 (usage): Report it.
1863 * src/getargs.h (locationsflag): Export it.
1864 * src/lex.c (percent_table): Support `%locations'.
1865 * src/reader.c (yylsp_needed): Remove this variable, now replaced
1866 with `locationsflag'.
1867 * doc/bison.texinfo: Document `--locations' and `%locations'.
1868 Sort the options.
1869 * tests/calc.m4: Test it.
1870
1871 For regularity of the names, replace each
1872 (nolineflag, toknumflag, rawtokenumflag, noparserflag): with...
1873 (no_lineflag, token_tableflag, rawflag, no_parserflag): this.
1874 In addition replace each `flag' with `_flag'.
1875
18762000-10-02 Akim Demaille <akim@epita.fr>
1877
1878 Also test parse error messages, including with YYERROR_VERBOSE.
1879
1880 * tests/calc.m4 (calc.y): Add support for `exp = exp' (non
1881 associative).
1882 Use it to check the computations.
1883 Use it to check `nonassoc' is honored.
1884 (AT_DATA_CALC_Y): Equip `calc.y' with YYERROR_VERBOSE when passed
1885 `--yyerror-verbose'.
1886 (_AT_CHECK_CALC): Adjust to this option.
1887 (_AT_CHECK_CALC_ERROR): New macro to check parse error messages.
1888
18892000-10-02 Akim Demaille <akim@epita.fr>
1890
1891 Test also `--verbose', `--defines' and `--name-prefix'. Testing
1892 the latter demonstrates a flaw in the handling of non debugging
1893 parsers introduced by myself on 2000-03-16: `#define yydebug 0'
1894 was used in order to simplify:
1895
1896 #if YYDEBUG
1897 if (yydebug)
1898 {
1899 ...
1900 }
1901 #endif
1902
1903 into
1904
1905 if (yydebug)
1906 {
1907 ...
1908 }
1909
1910 unfortunately this leads to a CPP conflict when
1911 `--name-prefix=foo' is used since it produces `#define yydebug
1912 foodebug'.
1913
1914 * src/bison.s1 [!YYDEBUG]: Do not define yydebug.
1915 (YYDPRINTF): New macro.
1916 Spread its use.
1917 * tests/calc.m4 (AT_CHECK_CALC): Do require a title, build it from
1918 the bison options.
1919 Also test `--verbose', `--defines' and `--name-prefix'.
1920
19212000-10-02 Akim Demaille <akim@epita.fr>
1922
1923 Improve the readability of the produced parsers.
1924
1925 * src/bison.s1: Formatting changes.
1926 Improve the comment related to the `$' mark.
1927 (yydefault): Don't fall through to `yyresume': `goto' there.
1928 * src/output.c (output_parser): When the `$' is met, skip the end
1929 of its line.
1930 New variable, `number_of_dollar_signs', to check there's exactly
1931 one `$' in the parser skeleton.
1932
19332000-10-02 Akim Demaille <akim@epita.fr>
1934
1935 * lib/xstrdup.c: New file, from the fileutils.
1936 * src/reader.c (parse_token_decl, get_type_name, parse_type_decl)
1937 (parse_assoc_decl, parse_thong_decl, get_type): Use `xstrdup'
1938 instead of strlen + xmalloc + strcpy.
1939 * src/symtab.c (copys): Remove, use xstrdup instead.
1940
19412000-10-02 Akim Demaille <akim@epita.fr>
1942
1943 * src/gram.h (associativity): New enum type which replaces the
1944 former CPP macros `RIGHT_ASSOC', `LEFT_ASSOC' and `NON_ASSOC' with
1945 `right_assoc', `left_assoc' and `non_assoc'.
1946 Adjust all dependencies.
1947 * src/reader.c: Formatting changes.
1948 (LTYPESTR): Don't define it, use it as a literal in
1949 `reader_output_yylsp'.
1950 * src/symtab.h (symbol_class): New enum type which replaces the
1951 former CPP macros `SUNKNOWN', `STOKEN and `SNTERM' with
1952 `sunknown', `stoken and `snterm'.
1953
19542000-10-02 Akim Demaille <akim@epita.fr>
1955
1956 * src/getargs.c (fixed_outfiles): Rename as...
1957 (yaccflag): for consistency and accuracy.
1958 Adjust dependencies.
1959
19602000-10-02 Akim Demaille <akim@epita.fr>
1961
1962 Use the more standard files `xalloc.h' and `xmalloc.c' instead of
1963 Bison's `allocate.c' and `alloc.h'. This patch was surprisingly
1964 difficult and introduced a lot of core dump. It turns out that
1965 Bison used an implementation of `xmalloc' based on `calloc', and
1966 at various places it does depend upon the initialization to 0. I
1967 have not tried to isolate the pertinent places, and all the former
1968 calls to Bison's `xmalloc' are now using `XCALLOC'. Someday,
1969 someone should address this issue.
1970
1971 * src/allocate.c, src/alloc.h, m4/bison-decl.m4: Remove.
1972 * lib/xmalloc.c, lib/xalloc.h, m4/malloc.m4, m4/realloc.m4: New
1973 files.
1974 Adjust dependencies.
1975 * src/warshall.h: New file.
1976 Propagate.
1977
19782000-10-02 Akim Demaille <akim@epita.fr>
1979
1980 Various anti-`extern in *.c' changes.
1981
1982 * src/system.h: Include `assert.h'.
1983
19842000-10-02 Akim Demaille <akim@epita.fr>
1985
1986 * src/state.h (nstates, final_state, first_state, first_shift)
1987 (first_reduction): Move their exportation from here...
1988 * src/LR0.h: to here.
1989 Adjust dependencies.
1990 * src/getargs.c (statisticsflag): New variable.
1991 Add support for `--statistics'.
1992 Adjust dependencies.
1993
1994 Remove a lot of now useless `extern' statements in most files.
1995
19962000-10-02 Akim Demaille <akim@epita.fr>
1997
1998 * src/LR0.h: New file.
1999 Propagate its use.
2000
20012000-10-02 Akim Demaille <akim@epita.fr>
2002
2003 * src/print.h: New file.
2004 Propagate its use.
2005 * src/print.c: Formatting and ordering changes.
2006 (verbose, terse): Replace with...
2007 (print_results): this new function.
2008 Adjust dependencies.
2009
20102000-10-02 Akim Demaille <akim@epita.fr>
2011
2012 * src/conflicts.c (conflict_report): New function.
2013 (conflict_log, verbose_conflict_log): Replace with...
2014 (print_conflicts): this function.
2015 Adjust dependencies.
2016 * src/conflicts.h: New file.
2017 Propagate its inclusion.
2018
20192000-10-02 Akim Demaille <akim@epita.fr>
2020
2021 * src/nullable.h: New file.
2022 Propagate its inclusion.
2023 * src/nullable.c: Formatting changes.
2024
20252000-10-02 Akim Demaille <akim@epita.fr>
2026
2027 * src/reduce.h: New file.
2028 Propagate its inclusion.
2029 * src/reduce.c: Topological sort and other formatting changes.
2030 (bool, TRUE, FALSE): Move their definition to...
2031 * src/system.h: here.
2032
20332000-10-02 Akim Demaille <akim@epita.fr>
2034
2035 * src/files.c: Formatting changes.
2036 (tryopen, tryclose, openfiles): Rename as...
2037 (xfopen, xfclose, open_files): this.
2038 (stringappend): static.
2039 * src/files.h: Complete the list of exported symbols.
2040 Propagate its use.
2041
20422000-10-02 Akim Demaille <akim@epita.fr>
2043
2044 * src/reader.h: New file.
2045 Propagate its use instead of tedious list of `extern' and
2046 prototypes.
2047 * src/reader.c: Formatting changes, topological sort,
2048 s/register//.
2049
20502000-10-02 Akim Demaille <akim@epita.fr>
2051
2052 * src/lex.h: Prototype `lex.c' exported functions.
2053 * src/reader.c: Adjust.
2054 * src/lex.c: Formatting changes.
2055 (safegetc): Rename as...
2056 (xgetc): this.
2057
20582000-10-02 Akim Demaille <akim@epita.fr>
2059
2060 * src/lalr.h: New file.
2061 Propagate its inclusion instead of prototypes and `extern'.
2062 * src/lalr.c: Formatting changes, topological sorting etc.
2063
20642000-10-02 Akim Demaille <akim@epita.fr>
2065
2066 * src/output.c (token_actions): Introduce a temporary array,
2067 YYDEFACT, that makes it possible for this function to use
2068 output_short_table.
2069
20702000-10-02 Akim Demaille <akim@epita.fr>
2071
2072 `user_toknums' is output as a `short[]' in `output.c', while it is
2073 defined as a `int[]' in `reader.c'. For consistency with the
2074 other output tables, `user_toknums' is now defined as a table of
2075 shorts.
2076
2077 * src/reader.c (user_toknums): Be a short table instead of an int
2078 table.
2079 Adjust dependencies.
2080
2081 Factor the short table outputs.
2082
2083 * src/output.c (output_short_table): New function.
2084 * src/output.c (output_gram, output_stos, output_rule_data)
2085 (output_base, output_table, output_check): Use it.
2086
20872000-10-02 Akim Demaille <akim@epita.fr>
2088
2089 * src/output.c (output): Topological sort of the functions, in
2090 order to get rid of the `static' prototypes.
2091 No longer use `register'.
2092 * src/output.h: New file.
2093 Propagate its inclusion in files explicitly prototyping functions
2094 from output.c.
2095
20962000-09-21 Akim Demaille <akim@epita.fr>
2097
2098 * src/atgeneral.m4: Update from Autoconf.
2099
21002000-09-21 Akim Demaille <akim@epita.fr>
2101
2102 * src/closure.h: New file.
2103 * src/closure.c: Formatting changes, topological sort over the
2104 functions, use of closure.h.
2105 (initialize_closure, finalize_closure): Rename as...
2106 (new_closure, free_closure): these. Adjust dependencies.
2107 * src/LR0.c: Formatting changes, topological sort, use of
2108 cloture.h.
2109 (initialize_states): Rename as...
2110 (new_states): this.
2111 * src/Makefile.am (noinst_HEADERS): Adjust.
2112
21132000-09-20 Akim Demaille <akim@epita.fr>
2114
2115 * src/acconfig.h: Don't protect config.h against multiple
2116 inclusion.
2117 Don't define PARAMS.
2118 * src/system.h: Define PARAMS.
2119 Remove some of the ad-hoc CPP magic for DOS, VMS etc.: this is the
2120 purpose of config.h. system.h must not try to fix wrong
2121 definitions in config.h.
2122
21232000-09-20 Akim Demaille <akim@epita.fr>
2124
2125 * src/derives.h: New file.
2126 * src/main.c, src/derives.h: Use it.
2127 Formatting changes.
2128 * src/Makefile.am (noinst_HEADERS): Adjust.
2129
21302000-09-20 Akim Demaille <akim@epita.fr>
2131
2132 * tests/atgeneral.m4: Update from Autoconf.
2133 * tests/calc.m4 (_AT_DATA_CALC_Y, AT_DATA_CALC_Y, _AT_CHECK_CALC)
2134 (AT_CHECK_CALC): New macros.
2135 Use these macros to test bison with options `', `--raw',
2136 `--debug', `--yacc', `--yacc --debug'.
2137
21382000-09-19 Akim Demaille <akim@epita.fr>
2139
2140 * src/output.c: Formatting changes.
2141 * src/machine.h: Remove, leaving its contents in...
2142 * src/system.h: here.
2143 Include stdio.h.
2144 Adjust all dependencies on stdio.h and machine.h.
2145 * src/getargs.h: New file.
2146 Let all `extern' declarations about getargs.c be replaced with
2147 inclusion of `getargs.h'.
2148 * src/Makefile.am (noinst_HEADERS): Adjust.
2149
2150 * tests/calc.m4 (yyin): Be initialized in main, not on the global
2151 scope.
2152 (yyerror): Returns void, not int.
2153 * doc/bison.texinfo: Formatting changes.
2154
21552000-09-19 Akim Demaille <akim@epita.fr>
2156
2157 * tests/calc.m4 (calc.y): Do not assign to stdin, as it's not
2158 portable.
2159
21602000-09-18 Akim Demaille <akim@epita.fr>
2161
2162 * configure.in: Append WARNING_CFLAGS to CFLAGS.
2163 * src/Makefile.am (INCLUDES): Don't.
2164 Be ready to fetch headers in lib/.
2165
21662000-09-18 Akim Demaille <akim@epita.fr>
2167
2168 * doc/bison.texinfo: Update the copyright.
2169 ANSIfy and GNUify the examples.
2170 Remove the old menu.
2171
21722000-09-18 Akim Demaille <akim@epita.fr>
2173
2174 First set of tests: use the `calc' example from the documentation.
2175
2176 * src/bison.s1 (yyparse): Condition the code using `yytname' which
2177 is defined only when YYDEBUG is.
2178 * m4/atconfig.m4 (AT_CONFIG): Adjust to Autoconf 2.13.
2179 * src/files.c (tryopen, tryclose): Formatting changes.
2180 Move to the top and be static.
2181 * src/reader.c (read_signed_integer): Likewise.
2182 * tests/calc.m4: New file.
2183 * Makefile.am, suite.m4: Adjust.
2184 * m4/atconfig.m4: Set BISON_SIMPLE and BISON_HAIRY.
2185
21862000-09-18 Akim Demaille <akim@epita.fr>
2187
2188 Add support for an Autotest test suite for Bison.
2189
2190 * m4/m4.m4, m4/atconfig.m4: New files.
2191 * m4/Makefile.am (EXTRA_DIST): Adjust.
2192 * tests/suite.m4, tests/Makefile.am, tests/atgeneral.m4: New
2193 files.
2194 * src/getargs.c: Display a more standard --version message.
2195 * src/reader.c (reader): Formatting changes.
2196 No longer depend upon VERSION_STRING.
2197 * configure.in: No longer use `dnl'.
2198 Set up the test suite and the new directory `tests/.
2199 (VERSION_STRING): Remove.
2200
22012000-04-14 Akim Demaille <akim@epita.fr>
2202
2203 * src/reader.c (copy_comment2): New function, same as former
2204 `copy_comment', but outputs into two FILE *.
2205 (copy_comment): Use it.
2206 (parse_union_decl): Use it.
2207 (get_type, parse_start_decl): Use the same `invalid' message.
2208 (parse_start_decl, parse_union_decl): Use the same `multiple'
2209 message.
2210 (parse_union_decl, copy_guard, copy_action): Use the same
2211 `unmatched' message.
2212 * m4/Makefile.am (EXTRA_DIST): Add `warning.m4'.
2213
22142000-03-31 Akim Demaille <akim@epita.fr>
2215
2216 * src/files.c (tryopen, tryclose): Move to the top.
2217 Be static.
2218
22192000-03-31 Akim Demaille <akim@epita.fr>
2220
2221 * src/main.c (main): Don't call `done', exit does it.
2222
22232000-03-31 Akim Demaille <akim@epita.fr>
2224
2225 * allocate.c: s/return (foo)/return foo/.
2226 * lalr.c: Likewise.
2227 * LR0.c: Likewise.
2228 * output.c: Likewise.
2229 * reader.c: Likewise.
2230 * symtab.c: Likewise.
2231 * vmsgetargs.c: Likewise.
2232
22332000-03-31 Akim Demaille <akim@epita.fr>
2234
2235 Clean up the error reporting functions.
2236
2237 * src/report.c: New file.
2238 * src/report.h: Likewise.
2239 * src/Makefile.am: Adjust.
2240 * m4/error.m4: New file.
2241 * m4/Makefile.am: Adjust.
2242 * configure.in (jm_PREREQ_ERROR): Call it.
2243 * src/main.c (int_to_string, banner, fatal_banner, warn_banner):
2244 Remove.
2245 (fatal, fatals): Remove. All callers use complain.c::fatal.
2246 (warn, warni, warns, warnss, warnss): Remove. All callers use
2247 complain.c::complain.
2248 (toomany): Remove, use fatal instead.
2249 * src/files.c (done): No argument, use complain_message_count.
2250 * src/main.c (main): Register `done' to `atexit'.
2251
2252 * src/getargs.c (usage): More `fputs', less `fprintf'.
2253
22542000-03-28 Akim Demaille <akim@epita.fr>
2255
2256 * lib/: New directory.
2257 * Makefile.am (SUBDIRS): Adjust.
2258 * configure.in: Adjust.
2259 (LIBOBJS): Although not used yet, AC_SUBST it, otherwise it's
2260 useless.
2261 * src/alloca.c: Moved to lib/.
2262 * src/getopt.c: Likewise.
2263 * src/getopt1.c: Likewise.
2264 * src/getopt.h: Likewise.
2265 * src/ansi2knr.c: Likewise.
2266 * src/ansi2knr.1: Likewise.
2267 * src/Makefile.am: Adjust.
2268 * lib/Makefile.am: New file.
2269
22702000-03-28 Akim Demaille <akim@epita.fr>
2271
2272 * src/getargs.c (usage): Refresh the help message.
2273
22742000-03-17 Akim Demaille <akim@epita.fr>
2275
2276 * src/getopt1.c: Updated from textutils 2.0e
2277 * src/getopt.c: Likewise.
2278 * src/getopt.h: Likewise.
2279
22802000-03-17 Akim Demaille <akim@epita.fr>
2281
2282 * src/Makefile.am (bison.simple): Fix the awk program: quote only
2283 the file name, not the whole `#line LINE FILE'.
2284
22852000-03-17 Akim Demaille <akim@epita.fr>
2286
2287 On syntax errors, report the token on which we choked.
2288
2289 * src/bison.s1 (yyparse): In the label yyerrlab, when
2290 YYERROR_VERBOSE, add yychar in msg.
2291
22922000-03-17 Akim Demaille <akim@epita.fr>
2293
2294 * src/reader.c (copy_at): New function.
2295 (copy_guard): Use it.
2296 (copy_action): Use it.
2297
22982000-03-17 Akim Demaille <akim@epita.fr>
2299
2300 Be kind to translators, save some useless translations.
2301
2302 * src/main.c (banner): New function.
2303 (fatal_banner): Use it.
2304 (warn_banner): Use it.
2305
23062000-03-17 Akim Demaille <akim@epita.fr>
2307
2308 * src/reader.c (copy_definition): Use copy_string and
2309 copy_comment. Removed now unused `match', `ended',
2310 `cplus_comment'.
2311 (copy_comment, copy_string): Moved, to be visible from
2312 copy_definition.
2313
23142000-03-17 Akim Demaille <akim@epita.fr>
2315
2316 * src/reader.c (copy_string): Declare `static inline'. No
2317 problems with inline, since it is checked by configure.
2318 (copy_comment): Likewise.
2319
23202000-03-17 Akim Demaille <akim@epita.fr>
2321
2322 * src/reader.c (packsymbols): Formatting changes.
2323
23242000-03-17 Akim Demaille <akim@epita.fr>
2325
2326 * src/reader.c (copy_comment): New function, factored out from:
2327 (copy_action): Use it. Removed now unused `match', `ended',
2328 `cplus_comment'.
2329 (copy_guard): Likewise.
2330
23312000-03-17 Akim Demaille <akim@epita.fr>
2332
2333 * src/reader.c (copy_string): New function, factored out from:
2334 (copy_action): Use it.
2335 (copy_guard): Likewise.
2336
23372000-03-17 Akim Demaille <akim@epita.fr>
2338
2339 Change the handling of @s so that they behave exactly like $s.
2340 There is now a pseudo variable @$ (readble and writable), location
2341 of the lhs of the rule (by default ranging from the location of
2342 the first symbol of the rhs, to the location of the last symbol,
2343 or, if the rhs is empty, YYLLOC).
2344
2345 * src/bison.s1 [YYLSP_NEEDED] (yyloc): New variable, twin of
2346 yyval.
2347 (yyparse): When providing a default semantic action, provide a
2348 default location action.
2349 (after the $): No longer change `*YYLSP', just stack YYLOC the
2350 same way you stack YYVAL.
2351 * src/reader.c (read_declarations): Use warns.
2352 (copy_guard, case '@'): Also recognize `@$', expanded as `YYLOC'.
2353 (copy_action, case '@'): Likewise.
2354 Use a standard error message, to save useless work from
2355 translators.
2356
23572000-03-17 Akim Demaille <akim@epita.fr>
2358
2359 * src/bison.s1: Formatting and cosmetics changes.
2360 * src/reader.c: Likewise.
2361 Update the Copyright notice.
2362
23632000-03-17 Akim Demaille <akim@epita.fr>
2364
2365 * src/bison.s1 (#line): All set to `#line' only, since the
2366 Makefile now handles them.
2367
23682000-03-16 Akim Demaille <akim@epita.fr>
2369
2370 * src/output.c (output_rule_data): Output the documentation of
2371 some of the tables.
2372 (Copyright notice): Update.
2373 Formatting changes.
2374
23752000-03-16 Akim Demaille <akim@epita.fr>
2376
2377 * src/bison.s1 [!YYDEBUG]: Define yydebug to 0. This allows to
2378 remove most `#if YYDEBUG != 0', since `if (yydebug)' is enough.
2379 One `#if YYDEBUG' remains, since it uses variables which are
2380 defined only if `YYDEBUG != 0'.
2381
23822000-03-16 Akim Demaille <akim@epita.fr>
2383
2384 * src/bison.s1 (yyparse): Reorganize the definitions of the stacks
2385 and related variables so that the similarities are highlighted.
2386
23872000-03-16 Akim Demaille <akim@epita.fr>
2388
2389 * src/bison.s1: Properly indent CPP directives.
2390
23912000-03-16 Akim Demaille <akim@epita.fr>
2392
2393 * src/bison.s1: Properly indent the `alloca' CPP section.
2394
23952000-03-16 Akim Demaille <akim@epita.fr>
2396
2397 Do not hard code values of directories in `configure.in'.
2398 Update the `configure' tool chain.
2399
2400 * configure.in (XPFILE, XPFILE1, LOCALEDIR): Remove, handled by
2401 src/makefile.am.
2402 (VERSION_STRING): Use the third arg of AC_DEFINE_UNQUOTED.
2403 (AC_OUTPUT): Add m4/Makefile.
2404 Bump to bison 1.28a, 1.29 has never been released.
2405 * acconfig.h (XPFILE, XPFILE1, LOCALEDIR): Remove, since they are
2406 handled via src/Makefile.am.
2407 (VERSION_STRING, PROTOTYPES, ENABLE_NLS, HAVE_CATGETS,
2408 HAVE_GETTEXT, HAVE_LC_MESSAGES, HAVE_STPCPY): Remove, handled by
2409 autoheader.
2410 * Makefile.am (SUBDIRS): Add m4.
2411 (ACLOCAL_AM_FLAGS): New variable.
2412 (AUTOMAKE_OPTIONS): Add check-news.
2413 * src/Makefile.am (bison.simple): Use awk to replace #line lines with
2414 the proper line number and file name.
2415 (DEFS): Propagate the location of bison library files and of the
2416 locale files.
2417 (INCLUDES): Added `-I ..' so that one can compile with srcdir !=
2418 builddir.
2419 * acinclude.m4: Remove, replaced by the directory m4.
2420 * m4/Makefile.am (EXTRA_DIST): New variable.
2421 * m4/gettext.m4: New file, from the fileutils.
2422 * m4/lcmessage.m4: Likewise
2423 * m4/progtest.m4: Likewise.
2424 * m4/bison-decl.m4: New file, extracted from former acinclude.m4.
2425
24262000-03-10 Akim Demaille <akim@epita.fr>
2427
2428 * src/closure.c:
2429 Formatting changes of various comments.
2430 Respect the GNU coding standards at various places.
2431 Don't use `_()' when no translation is needed.
2432
24331999-12-13 Jesse Thilo <jthilo@gnu.org>
2434
2435 * src/files.c:
2436 OS/2 honors TMPDIR environment variable.
2437
24381999-12-13 Jesse Thilo <jthilo@gnu.org>
2439
2440 * doc/bison.texinfo: Tweaked spelling and grammar.
2441 Updated ISBN.
2442 Removed reference to price of printed copy.
2443 Mention BISON_SIMPLE and BISON_HAIRY.
2444
24451999-12-13 Jesse Thilo <jthilo@gnu.org>
2446
2447 * configure.in, NEWS:
2448 Bison 1.29 released.
2449
24501999-10-27 Jesse Thilo <jthilo@gnu.org>
2451
2452 * doc/.cvsignore, doc/Makefile.am, doc/refcard.tex:
2453 Added reference card.
2454
24551999-07-26 Jesse Thilo <jthilo@gnu.org>
2456
2457 * po/ru.po: Added Russian translation.
2458
24591999-07-26 Jesse Thilo <jthilo@gnu.org>
2460
2461 * configure.in: Added Russian translation.
2462
24631999-07-06 Jesse Thilo <jthilo@gnu.org>
2464
2465 * configure.in, NEWS, README:
2466 Released version 1.28.
2467
24681999-06-14 Jesse Thilo <jthilo@gnu.org>
2469
2470 * src/system.h:
2471 Squashed redefinition warning on some systems.
2472
2473 * src/getargs.c, src/Makefile.am, src/reader.c, src/version.c:
2474 Have configure build version string instead of relying on ANSI string
2475 concatentation.
2476
24771999-06-14 Jesse Thilo <jthilo@gnu.org>
2478
2479 * po/POTFILES.in: Got rid of version.c.
2480
24811999-06-14 Jesse Thilo <jthilo@gnu.org>
2482
2483 * acconfig.h, configure.in:
2484 Have configure build version string instead of relying on ANSI string
2485 concatentation.
2486
24871999-06-08 Jesse Thilo <jthilo@gnu.org>
2488
2489 * doc/bison.1:
2490 Dropped mention of `+' for long-named options.
2491
24921999-05-30 Jesse Thilo <jthilo@gnu.org>
2493
2494 * src/files.c: Added <unistd.h> for unlink().
2495
2496 * src/Makefile.am, src/system.h:
2497 I18n fixes.
2498
24991999-05-30 Jesse Thilo <jthilo@gnu.org>
2500
2501 * README: Added a FAQ list.
2502
2503 * configure.in, acconfig.h:
2504 I18n fixes.
2505
25061999-05-30 Jesse Thilo <jthilo@gnu.org>
2507
2508 * doc/FAQ, doc/Makefile.am:
2509 Added a FAQ list.
2510
25111999-05-19 Jesse Thilo <jthilo@gnu.org>
2512
2513 * src/alloc.h, src/symtab.h, src/version.c:
2514 Protected inclusion of "config.h" with HAVE_CONFIG_H.
2515
25161999-04-18 Jesse Thilo <jthilo@gnu.org>
2517
2518 * src/.cvsignore, src/Makefile.am:
2519 Reorganized: sources in `src', documentation in `doc'.
2520
2521 * src/lex.c (literalchar):
2522 fixed the code for escaping double quotes (thanks
2523 Jonathan Czisny.)
2524
25251999-04-18 Jesse Thilo <jthilo@gnu.org>
2526
2527 * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in:
2528 Adjusted paths to reflect directory reorganization.
2529
25301999-04-18 Jesse Thilo <jthilo@gnu.org>
2531
2532 * doc/.cvsignore, doc/Makefile.am:
2533 Reorganized: sources in `src', documentation in `doc'.
2534
25351999-04-18 Jesse Thilo <jthilo@gnu.org>
2536
2537 * configure.in:
2538 Updated AC_INIT file to reflect directory reorganization.
2539
2540 * configure.in, .cvsignore, Makefile.am, POTFILES.in:
2541 Reorganized: sources in `src', documentation in `doc'.
2542
25431999-04-13 Jesse Thilo <jthilo@gnu.org>
2544
2545 * src/allocate.c:
2546 Don't declare calloc() and realloc() if not necessary.
2547
25481999-04-13 Jesse Thilo <jthilo@gnu.org>
2549
2550 * configure.in, acconfig.h, acinclude.m4:
2551 Don't declare calloc() and realloc() if not necessary.
2552
25531999-03-23 Jesse Thilo <jthilo@gnu.org>
2554
2555 * po/.cvsignore: Added i18n support.
2556
25571999-03-23 Jesse Thilo <jthilo@gnu.org>
2558
2559 * acconfig.h, configure.in, Makefile.am:
2560 Added i18n support.
2561
25621999-03-22 Jesse Thilo <jthilo@gnu.org>
2563
2564 * src/bison.s1: Fixed #line numbers.
2565
25661999-03-15 Jesse Thilo <jthilo@gnu.org>
2567
2568 * po/es.po, po/fr.po, po/nl.po, po/de.po:
2569 Added PO files from Translation Project.
2570
25711999-03-03 Jesse Thilo <jthilo@gnu.org>
2572
2573 * Makefile.am:
2574 Added support for non-ANSI compilers (ansi2knr).
2575
25761999-02-16 Jesse Thilo <jthilo@gnu.org>
2577
2578 * configure.in: Bumped version number to 1.27.
2579
2580 * Makefile.am:
2581 Added `bison.simple' to list of files removed by `make distclean'.
2582
25831999-02-12 Jesse Thilo <jthilo@gnu.org>
2584
2585 * src/files.c, src/files.h:
2586 Defined locations of parser files in config.h instead of Makefile.
2587
25881999-02-12 Jesse Thilo <jthilo@gnu.org>
2589
2590 * acconfig.h, acinclude.m4, configure.in, Makefile.am:
2591 Defined locations of parser files in config.h instead of Makefile.
2592
25931999-02-09 Jesse Thilo <jthilo@gnu.org>
2594
2595 * Makefile.am:
2596 Removed inappropriate use of $< macro.
2597
25981999-02-05 Jesse Thilo <jthilo@gnu.org>
2599
2600 * po/Makefile.in.in, po/POTFILES.in:
2601 Add `po' directory skeleton.
2602
26031999-01-27 Jesse Thilo <jthilo@gnu.org>
2604
2605 * README: Document help-bison list.
2606
2607 * configure.in: Add check for mkstemp().
2608
26091999-01-20 Jesse Thilo <jthilo@gnu.org>
2610
2611 * src/conflicts.c, src/LR0.c, src/output.c, src/reader.c:
2612 Hush a few compiler warnings.
2613
2614 * src/files.c:
2615 Add tryclose(), which verifies that fclose was successful.
2616 Hush a couple of compiler warnings.
2617
26181999-01-20 Jesse Thilo <jthilo@gnu.org>
2619
2620 * Makefile.am, OChangeLog:
2621 ChangeLog is now automatically generated. Include the old version as
2622 OChangeLog.
2623
26241999-01-14 Jesse Thilo <jthilo@gnu.org>
2625
2626 * 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:
2627 Update FSF address.
2628
26291999-01-14 Jesse Thilo <jthilo@gnu.org>
2630
2631 * doc/bison.texinfo: Fix formatting glitch.
2632
2633 * doc/bison.texinfo: Update FSF address.
2634
26351999-01-14 Jesse Thilo <jthilo@gnu.org>
2636
2637 * acconfig.h: Update FSF address.
2638
26391999-01-08 Jesse Thilo <jthilo@gnu.org>
2640
2641 * src/system.h:
2642 Don't define PACKAGE here, since config.h defines it.
2643
26441998-12-30 Jesse Thilo <jthilo@gnu.org>
2645
2646 * src/reader.c: Update copyright date.
2647
2648 * src/main.c:
2649 Ditch sprintf to statically-sized buffers in fatal/warn functions in
2650 favor of output directly to stderr (avoids buffer overruns).
2651
2652 * src/reader.c: Some checks for premature EOF.
2653
2654 * 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:
2655 Use prototypes if the compiler understands them.
2656
2657 * src/files.c: Honor TMPDIR on Unix hosts.
2658 Use prototypes if the compiler understands them.
2659
2660 * src/reader.c:
2661 Fix a couple of buffer overrun bugs.
2662 Use prototypes if the compiler understands them.
2663
2664 * src/system.h: Include unistd.h and ctype.h.
2665 Use #ifdef instead of #if for NLS symbols.
2666
26671998-12-30 Jesse Thilo <jthilo@gnu.org>
2668
2669 * doc/bison.texinfo:
2670 Delete comment "consider using @set for edition number, etc..." since
2671 we now are doing so.
2672
26731998-12-30 Jesse Thilo <jthilo@gnu.org>
2674
2675 * configure.in:
2676 Use prototypes if the compiler understands them.
2677
2678 * NEWS: Document 1.26 highlights.
2679
2680 * Makefile.am: Require Automake 1.3 or later.
2681
2682 * acconfig.h:
2683 Use prototypes if the compiler understands them.
2684
26851998-12-29 Jesse Thilo <jthilo@gnu.org>
2686
2687 * src/version.c:
2688 Use VERSION symbol from automake for version number.
2689
26901998-12-29 Jesse Thilo <jthilo@gnu.org>
2691
2692 * acconfig.h, configure.in, version.cin:
2693 Use VERSION symbol from automake for version number.
2694
26951998-11-28 Jesse Thilo <jthilo@gnu.org>
2696
2697 * Makefile.am:
2698 Distribute original version of simple parser (bison.s1), not built
2699 version (bison.simple).
2700
27011998-11-28 Jesse Thilo <jthilo@gnu.org>
2702
2703 * doc/bison.texinfo: Add info dir entry.
2704
2705 * doc/bison.texinfo:
2706 Let automake put version number into documentation.
2707
27081998-11-26 Jesse Thilo <jthilo@gnu.org>
2709
2710 * src/bison.cld, src/build.com, src/vmshlp.mar:
2711 Add non-RCS files from /gd/gnu/bison.
2712
27131998-11-26 Jesse Thilo <jthilo@gnu.org>
2714
2715 * doc/bison.1:
2716 Document the BISON_HAIRY and BISON_SIMPLE variables.
2717
27181998-11-25 Jesse Thilo <jthilo@gnu.org>
2719
2720 * src/version.c: Build version.c automatically.
2721
2722 * src/reader.c:
2723 Fix token numbering (used to start at 258, not 257).
2724
2725 * src/system.h: Include config.h.
2726
2727 * src/getargs.c: Update bug report address.
2728
2729 * src/alloca.c, src/getopt1.c, src/getopt.c, src/getopt.h:
2730 Get latest copies of alloca.c, getopt.c, getopt.h, getopt1.c from gnu.org.
2731
27321998-11-25 Jesse Thilo <jthilo@gnu.org>
2733
2734 * Makefile.am:
2735 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
2736
2737 * configure.in, version.cin:
2738 Build version.c automatically.
2739
2740 * AUTHORS: Add AUTHORS file.
2741
2742 * README: Update bug report address.
2743
2744 * bison.simple:
2745 Rename bison.simple to bison.s1 (bison.simple is then built from bison.s1).
2746
2747 * configure.in, Makefile.am, Makefile.in, stamp-h.in:
2748 Add automake stuff.
2749
27501998-11-25 Jesse Thilo <jthilo@gnu.org>
2751
2752 * doc/bison.texinfo: Clean up some formatting.
2753
27541998-05-05 Richard Stallman <rms@gnu.org>
2755
2756 * doc/bison.texinfo:
2757 Explain better why to make a pure parser.
2758
27591998-01-05 Richard Stallman <rms@gnu.org>
2760
2761 * src/files.c (openfiles):
2762 [_WIN32 && !__CYGWIN32__] Use TEMP or Temp to
2763 find a temporary directory, if possible. Do not unlink files while
2764 they are open.
2765
27661997-08-25 Richard Stallman <rms@gnu.org>
2767
2768 * src/reader.c (stack_offset;):
2769 Change some warni to warns.
2770
2771 * src/lex.c (literalchar): Use warns, not warni.
2772
27731997-06-28 Richard Stallman <rms@gnu.org>
2774
2775 * src/bison.s1: Add a Bison version comment.
2776
2777 * src/main.c (fatal, warn, berror):
2778 Use program_name.
2779
27801997-06-28 Richard Stallman <rms@gnu.org>
2781
2782 * Makefile.in (bison_version): New variable.
2783 (dist): Use that variable.
2784 (bison.s1): Substitute the Bison version into bison.simple.
2785
2786 * bison.simple: Add a Bison version comment.
2787
27881997-06-18 Richard Stallman <rms@gnu.org>
2789
2790 * src/main.c (fatal, warn, berror):
2791 Make error messages standard.
2792 (toomany): Improve error message text.
2793
2794 * 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:
2795 new.h renamed to alloc.h.
2796
27971997-06-18 Richard Stallman <rms@gnu.org>
2798
2799 * Makefile.in: new.h renamed to alloc.h.
2800
28011997-05-24 Richard Stallman <rms@gnu.org>
2802
2803 * src/lex.c (literalchar):
2804 Fix the code for escaping \, " and '.
2805
2806 (lex): Avoid trouble when there are many chars
2807 to discard in a char literal with just several chars in it.
2808
28091997-05-17 Richard Stallman <rms@gnu.org>
2810
2811 * src/bison.s1:
2812 Use malloc, if using alloca is troublesome.
2813 (YYSTACK_USE_ALLOCA): New flag macro.
2814 Define it for some systems and compilers.
2815 (YYSTACK_ALLOC): New macro.
2816 (yyparse): Use YYSTACK_ALLOC to allocate stack.
2817 If it was malloc'd, free it.
2818
28191997-05-17 Richard Stallman <rms@gnu.org>
2820
2821 * bison.simple:
2822 Use malloc, if using alloca is troublesome.
2823 (YYSTACK_USE_ALLOCA): New flag macro.
2824 Define it for some systems and compilers.
2825 (YYSTACK_ALLOC): New macro.
2826 (yyparse): Use YYSTACK_ALLOC to allocate stack.
2827 If it was malloc'd, free it.
2828
28291997-04-23 Richard Stallman <rms@gnu.org>
2830
2831 * src/bison.s1:
2832 (alloca) [__hpux]: Always define as __builtin_alloca.
2833
28341997-04-23 Richard Stallman <rms@gnu.org>
2835
2836 * bison.simple:
2837 (alloca) [__hpux]: Always define as __builtin_alloca.
2838
28391997-04-22 Richard Stallman <rms@gnu.org>
2840
2841 * src/bison.s1:
2842 [__hpux]: Include alloca.h (right for HPUX 10)
2843 instead of declaring alloca (right for HPUX 9).
2844
2845 * src/bison.s1 (__yy_memcpy):
2846 Declare arg `count' as unsigned int.
2847 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
2848
28491997-04-22 Richard Stallman <rms@gnu.org>
2850
2851 * bison.simple:
2852 [__hpux]: Include alloca.h (right for HPUX 10)
2853 instead of declaring alloca (right for HPUX 9).
2854
2855 * bison.simple (__yy_memcpy):
2856 Declare arg `count' as unsigned int.
2857 (yyparse): Cast third arg to __yy_memcpy to unsigned int.
2858
28591997-01-03 Richard Stallman <rms@gnu.org>
2860
2861 * src/allocate.c: [__STDC__ or _MSC_VER]:
2862 Declare calloc and realloc to return void *.
2863
28641997-01-02 Richard Stallman <rms@gnu.org>
2865
2866 * src/system.h:
2867 [_MSC_VER]: Include stdlib.h and process.h.
2868 [_MSC_VER] (getpid): Define as macro--translate it to _getpid.
2869
2870 * src/main.c (main): Return FAILURE as a value.
2871 (printable_version): Declare arg as int, not char.
2872
28731997-01-02 Richard Stallman <rms@gnu.org>
2874
2875 * Makefile.in (dist):
2876 Explicitly check for symlinks, and copy them.
2877
28781996-12-19 Richard Stallman <rms@gnu.org>
2879
2880 * src/files.c:
2881 [_MSC_VER] (XPFILE, XPFILE1): Define, if not already defined.
2882
28831996-12-18 Paul Eggert <eggert@gnu.org>
2884
2885 * src/bison.s1 (yyparse):
2886 If __GNUC__ and YYPARSE_PARAM are both defined,
2887 declare yyparse to have a void * argument.
2888
28891996-12-18 Paul Eggert <eggert@gnu.org>
2890
2891 * bison.simple (yyparse):
2892 If __GNUC__ and YYPARSE_PARAM are both defined,
2893 declare yyparse to have a void * argument.
2894
28951996-12-17 Richard Stallman <rms@gnu.org>
2896
2897 * src/reduce.c (nbits): Add some casts.
2898
28991996-08-12 Richard Stallman <rms@gnu.org>
2900
2901 * src/bison.s1: Test _MSDOS as well as _MSDOS_.
2902
29031996-08-12 Richard Stallman <rms@gnu.org>
2904
2905 * bison.simple: Test _MSDOS as well as _MSDOS_.
2906
29071996-07-31 Richard Stallman <rms@gnu.org>
2908
2909 * src/bison.s1:
2910 [__sun && __i386]: Include alloca.h.
2911
29121996-07-31 Richard Stallman <rms@gnu.org>
2913
2914 * bison.simple:
2915 [__sun && __i386]: Include alloca.h.
2916
29171996-07-30 Richard Stallman <rms@gnu.org>
2918
2919 * src/bison.s1: Comment change.
2920
2921 * src/bison.s1: Test _MSDOS_, not MSDOS.
2922
29231996-07-30 Richard Stallman <rms@gnu.org>
2924
2925 * bison.simple: Comment change.
2926
2927 * bison.simple: Test _MSDOS_, not MSDOS.
2928
29291996-06-01 Richard Stallman <rms@gnu.org>
2930
2931 * 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:
2932 Insert `_' macro around many string constants.
2933
2934 * src/main.c:
2935 Insert `_' macro around many string constants.
2936
2937 (main): Call setlocale, bindtextdomain and textdomain.
2938
2939 * src/system.h: [HAVE_LOCALE_H]: Include locale.h.
2940 [! HAVE_LOCALE_H] (setlocale): Define as no-op.
2941 [ENABLE_NLS]: Include libintl.h.
2942 [ENABLE_NLS] (gettext): Define.
2943 [! ENABLE_NLS] (bintextdomain, textdomain, _): Consolation definitions.
2944 (N_, PACKAGE, LOCALEDIR): New macros.
2945
29461996-06-01 Richard Stallman <rms@gnu.org>
2947
2948 * POTFILES.in: New file.
2949
2950 * Makefile.in (allocate.o):
2951 Define target explicitly.
2952
2953 * Makefile.in (CFLAGS): Set to @CFLAGS@.
2954 (LDFLAGS): Set to @LDFLAGS@.
2955 (configure): Run autoconf only if preceding `cd' succeeds.
2956 (bison.s1): Redirect output to temporary file then move the
2957 temporary to the target, rather than redirecting directly to bison.s1.
2958 (clean): Remove config.status and config.log.
2959 (distclean): Don't remove config.status here.
2960
29611996-05-12 Richard Stallman <rms@gnu.org>
2962
2963 * src/bison.s1:
2964 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
2965
29661996-05-12 Richard Stallman <rms@gnu.org>
2967
2968 * bison.simple:
2969 (__yy_memcpy) [__cplusplus]: Reorder declarations of variables f and t.
2970
29711996-05-11 Richard Stallman <rms@gnu.org>
2972
2973 * src/bison.s1 (__yy_memcpy):
2974 Really reorder the args, as was supposedly done on Feb 14 1995.
2975 (yyparse): Calls changed accordingly.
2976
29771996-05-11 Richard Stallman <rms@gnu.org>
2978
2979 * Makefile.in (dist): Don't use $(srcdir).
2980
2981 * bison.simple (__yy_memcpy):
2982 Really reorder the args, as was supposedly done on Feb 14 1995.
2983 (yyparse): Calls changed accordingly.
2984
29851996-01-27 Richard Stallman <rms@gnu.org>
2986
2987 * src/output.c (output_rule_data):
2988 Test YYERROR_VERBOSE in the conditional
2989 around the definition of ttyname.
2990
29911995-12-29 Richard Stallman <rms@gnu.org>
2992
2993 * src/bison.s1:
2994 Fix line numbers in #line commands.
2995
29961995-12-29 Richard Stallman <rms@gnu.org>
2997
2998 * bison.simple:
2999 Fix line numbers in #line commands.
3000
30011995-12-27 Richard Stallman <rms@gnu.org>
3002
3003 * src/bison.s1 (YYPARSE_PARAM_DECL):
3004 In C++, make it always null.
3005 (YYPARSE_PARAM_ARG): New macro.
3006 (yyparse): Use YYPARSE_PARAM_ARG.
3007
30081995-12-27 Richard Stallman <rms@gnu.org>
3009
3010 * bison.simple (YYPARSE_PARAM_DECL):
3011 In C++, make it always null.
3012 (YYPARSE_PARAM_ARG): New macro.
3013 (yyparse): Use YYPARSE_PARAM_ARG.
3014
30151995-11-29 Richard Stallman <rms@gnu.org>
3016
3017 * doc/bison.texinfo:
3018 Describe literal string tokens, %raw, %no_lines, %token_table.
3019
30201995-11-29 Daniel Hagerty <hag@gnu.org>
3021
3022 * doc/bison.texinfo: Fixed update date
3023
30241995-10-16 Richard Stallman <rms@gnu.org>
3025
3026 * src/version.c: Version 1.25.
3027
30281995-10-16 Richard Stallman <rms@gnu.org>
3029
3030 * NEWS: *** empty log message ***
3031
30321995-10-16 Richard Stallman <rms@gnu.org>
3033
3034 * doc/bison.1, doc/bison.rnh:
3035 Add new options.
3036
30371995-10-15 Richard Stallman <rms@gnu.org>
3038
3039 * src/vmsgetargs.c, src/getargs.c:
3040 Added -n, -k, and -raw switches.
3041 (noparserflag, toknumflag, rawtoknumflag): New variables.
3042
3043 * src/symtab.h (SALIAS):
3044 New #define for adding aliases to %token.
3045 (struct bucket): Added `alias' field.
3046
3047 * src/reduce.c (reduce_grammar):
3048 Revise error message.
3049 (print_notices): Remove final `.' from error message.
3050
3051 * src/reader.c (reader_output_yylsp):
3052 New function.
3053 (readgram): Use `#if 0' around code that accepted %command
3054 inside grammar rules: The documentation doesn't allow it,
3055 and it will fail since the %command processors scan for the next %.
3056 (parse_token_decl): Extended the %token
3057 declaration to allow a multi-character symbol as an alias.
3058 (parse_thong_decl): New function.
3059 (read_declarations): Added %thong declarations.
3060 (read_declarations): Handle NOOP to deal with allowing
3061 % declarations as another means to specify the flags.
3062 (readgram): Allow %prec prior to semantics embedded in a rule.
3063 (skip_to_char, read_declarations, copy_definition)
3064 (parse_token_decl, parse_start_decl, parse_type_decl)
3065 (parse_assoc_decl, parse_union_decl, parse_expect_decl)
3066 (get_type_name, copy_guard, copy_action, readgram)
3067 (get_type, packsymbols): Revised most error messages.
3068 Changed `fatal' to `warnxxx' to avoid aborting for error.
3069 Revised and use multiple warnxxx functions to avoid using VARARGS1.
3070 (read_declarations): Improve the error message for
3071 an invalid character. Do not abort.
3072 (read_declarations, copy_guard, copy_action): Use
3073 printable_version to avoid unprintable characters in printed output.
3074 (parse_expect_decl): Error if argument to %expect exceeds 10 digits.
3075 (parse_token_decl, parse_assoc_decl, parse_type_decl, get_type):
3076 Allow the type of a non-terminal can be given
3077 more than once, as long as all specifications give the same type.
3078
3079 * src/output.c:
3080 (output_headers, output_trailers, output, output_gram)
3081 (output_rule_data): Implement noparserflag variable.
3082 Implement toknumflag variable.
3083 (output): Call reader_output_yylsp to output LTYPESTR.
3084
3085 * src/main.c (main):
3086 If reader sees an error, don't process the grammar.
3087 (fatals): Updated to not use VARARGS1.
3088 (printable_version, int_to_string, warn, warni, warns, warnss)
3089 (warnsss): New error reporting functions. Avoid abort for error.
3090
3091 * src/lex.h:
3092 Added THONG and NOOP for alias processing.
3093 Added SETOPT for the new code that allows setting options with %flags.
3094
3095 * src/lex.c:
3096 Include getopt.h. Add some extern decls.
3097 (safegetc): New function to deal with EOF gracefully.
3098 (literalchar); new function to deal with reading \ escapes.
3099 (lex): Use literalchar.
3100 (lex): Implemented "..." tokens.
3101 (literalchar, lex, parse_percent_token): Made tokenbuffer
3102 always contain the token. This includes growing the token
3103 buffer while reading an integer.
3104 (parse_percent_token): Replaced if-else statement with percent_table.
3105 (parse_percent_token): Added % declarations as another
3106 way to specify the flags -n, -l, and -r. Also added hooks for
3107 -d, -k, -y, -v, -t, -p, -b, -o, but implementation requires
3108 major changes to files.c.
3109 (lex) Retain in the incoming stream a character following
3110 an incorrect '/'.
3111 (skip_white_space, lex): Revised most error messages
3112 and changed fatal to warn to avoid aborting.
3113 (percent_table): Added %thong declarations.
3114
3115 * src/gram.h: Comment changes.
3116
3117 * src/files.c (openfiles, open_extra_files, done):
3118 Add faction flag
3119 and actfile file. Handle noparserflag. Both for -n switch.
3120
3121 * src/conflicts.c (resolve_sr_conflict):
3122 Remove use of alloca.
3123
31241995-06-01 Jim Meyering <meyering@gnu.org>
3125
3126 * doc/bison.texinfo: *** empty log message ***
3127
31281995-05-06 Richard Stallman <rms@gnu.org>
3129
3130 * src/bison.s1: Comment change.
3131
31321995-05-06 Richard Stallman <rms@gnu.org>
3133
3134 * bison.simple: Comment change.
3135
31361995-05-03 Richard Stallman <rms@gnu.org>
3137
3138 * src/version.c: Version now 1.24.
3139
3140 * src/bison.s1: Change distribution terms.
3141
3142 * src/version.c: Version now 1.23.
3143
31441995-05-03 Richard Stallman <rms@gnu.org>
3145
3146 * doc/bison.texinfo:
3147 Rewrite "Conditions for Using Bison".
3148 Update version to 1.24.
3149
31501995-05-03 Richard Stallman <rms@gnu.org>
3151
3152 * bison.simple: Change distribution terms.
3153
31541995-02-23 Richard Stallman <rms@gnu.org>
3155
3156 * src/files.c: Test __VMS_POSIX as well as VMS.
3157
31581995-02-14 Jim Meyering <meyering@gnu.org>
3159
3160 * src/bison.s1 (__yy_memcpy):
3161 Renamed from __yy_bcopy to avoid
3162 confusion. Reverse FROM and TO arguments to be consistent with
3163 those of memcpy.
3164
31651995-02-14 Jim Meyering <meyering@gnu.org>
3166
3167 * bison.simple (__yy_memcpy):
3168 Renamed from __yy_bcopy to avoid
3169 confusion. Reverse FROM and TO arguments to be consistent with
3170 those of memcpy.
3171
31721994-11-10 David J. MacKenzie <djm@gnu.org>
3173
3174 * NEWS: reformat
3175
3176 * NEWS: New file.
3177
3178 * Makefile.in (DISTFILES): Include NEWS.
3179
3180 * Makefile.in (DISTFILES):
3181 Include install-sh, not install.sh.
3182
3183 * configure.in: Update to Autoconf v2 macro names.
3184
31851994-10-05 David J. MacKenzie <djm@gnu.org>
3186
3187 * Makefile.in: fix typo
3188
3189 * Makefile.in (prefix, exec_prefix):
3190 Let configure set them.
3191
31921994-09-28 David J. MacKenzie <djm@gnu.org>
3193
3194 * Makefile.in: Set datadir to $(prefix)/share.
3195
31961994-09-15 Richard Stallman <rms@gnu.org>
3197
3198 * src/bison.s1:
3199 Update copyright notice and GPL version.
3200
32011994-09-15 Richard Stallman <rms@gnu.org>
3202
3203 * bison.simple:
3204 Update copyright notice and GPL version.
3205
32061994-07-12 Richard Stallman <rms@gnu.org>
3207
3208 * src/reduce.c, src/reader.c:
3209 entered into RCS
3210
32111994-05-05 David J. MacKenzie <djm@gnu.org>
3212
3213 * Makefile.in: entered into RCS
3214
32151994-03-26 Richard Stallman <rms@gnu.org>
3216
3217 * src/bison.s1: entered into RCS
3218
32191994-03-26 Richard Stallman <rms@gnu.org>
3220
3221 * bison.simple: entered into RCS
3222
32231994-03-25 Richard Stallman <rms@gnu.org>
3224
3225 * src/main.c: entered into RCS
3226
32271994-03-24 Richard Stallman <rms@gnu.org>
3228
3229 * src/conflicts.c: entered into RCS
3230
32311994-01-02 Richard Stallman <rms@gnu.org>
3232
3233 * Makefile.in: *** empty log message ***
3234
32351993-11-21 Richard Stallman <rms@gnu.org>
3236
3237 * src/bison.s1: *** empty log message ***
3238
32391993-11-21 Richard Stallman <rms@gnu.org>
3240
3241 * doc/bison.texinfo: entered into RCS
3242
3243 * doc/bison.texinfo: *** empty log message ***
3244
32451993-11-21 Richard Stallman <rms@gnu.org>
3246
3247 * bison.simple: *** empty log message ***
3248
32491993-10-25 David J. MacKenzie <djm@gnu.org>
3250
3251 * doc/bison.texinfo: *** empty log message ***
3252
32531993-10-19 Richard Stallman <rms@gnu.org>
3254
3255 * src/bison.s1: *** empty log message ***
3256
32571993-10-19 Richard Stallman <rms@gnu.org>
3258
3259 * bison.simple: *** empty log message ***
3260
32611993-10-14 Richard Stallman <rms@gnu.org>
3262
3263 * src/bison.s1: *** empty log message ***
3264
32651993-10-14 Richard Stallman <rms@gnu.org>
3266
3267 * bison.simple: *** empty log message ***
3268
32691993-09-14 David J. MacKenzie <djm@gnu.org>
3270
3271 * doc/bison.texinfo: *** empty log message ***
3272
32731993-09-13 Noah Friedman <friedman@gnu.org>
3274
3275 * Makefile.in: *** empty log message ***
3276
32771993-09-10 Richard Stallman <rms@gnu.org>
3278
3279 * src/conflicts.c: *** empty log message ***
3280
3281 * src/system.h: entered into RCS
3282
32831993-09-10 Richard Stallman <rms@gnu.org>
3284
3285 * doc/bison.1: entered into RCS
3286
32871993-09-06 Noah Friedman <friedman@gnu.org>
3288
3289 * src/version.c: entered into RCS
3290
32911993-09-06 Noah Friedman <friedman@gnu.org>
3292
3293 * Makefile.in: *** empty log message ***
3294
32951993-07-30 David J. MacKenzie <djm@gnu.org>
3296
3297 * Makefile.in: *** empty log message ***
3298
32991993-07-24 Richard Stallman <rms@gnu.org>
3300
3301 * src/bison.s1: *** empty log message ***
3302
33031993-07-24 Richard Stallman <rms@gnu.org>
3304
3305 * bison.simple: *** empty log message ***
3306
33071993-07-08 David J. MacKenzie <djm@gnu.org>
3308
3309 * Makefile.in: *** empty log message ***
3310
33111993-07-04 Richard Stallman <rms@gnu.org>
3312
3313 * src/bison.s1: *** empty log message ***
3314
33151993-07-04 Richard Stallman <rms@gnu.org>
3316
3317 * bison.simple: *** empty log message ***
3318
33191993-06-26 David J. MacKenzie <djm@gnu.org>
3320
3321 * src/getargs.c: entered into RCS
3322
33231993-06-26 David J. MacKenzie <djm@gnu.org>
3324
3325 * doc/bison.texinfo: *** empty log message ***
3326
3327 * doc/bison.1: New file.
3328
33291993-06-25 Richard Stallman <rms@gnu.org>
3330
3331 * src/getargs.c: New file.
3332
33331993-06-16 Richard Stallman <rms@gnu.org>
3334
3335 * src/bison.s1: *** empty log message ***
3336
33371993-06-16 Richard Stallman <rms@gnu.org>
3338
3339 * bison.simple: *** empty log message ***
3340
33411993-06-03 Richard Stallman <rms@gnu.org>
3342
3343 * src/bison.s1: New file.
3344
33451993-06-03 Richard Stallman <rms@gnu.org>
3346
3347 * doc/bison.texinfo: *** empty log message ***
3348
33491993-06-03 Richard Stallman <rms@gnu.org>
3350
3351 * bison.simple: New file.
3352
33531993-05-19 Richard Stallman <rms@gnu.org>
3354
3355 * doc/bison.texinfo: New file.
3356
33571993-05-07 Noah Friedman <friedman@gnu.org>
3358
3359 * Makefile.in: *** empty log message ***
3360
33611993-04-28 Noah Friedman <friedman@gnu.org>
3362
3363 * src/reader.c: *** empty log message ***
3364
33651993-04-23 Noah Friedman <friedman@gnu.org>
3366
3367 * src/alloc.h: entered into RCS
3368
33691993-04-20 David J. MacKenzie <djm@gnu.org>
3370
3371 * src/version.c: *** empty log message ***
3372
3373 * src/files.c, src/allocate.c:
3374 entered into RCS
3375
3376 * src/reader.c: *** empty log message ***
3377
3378 * src/lex.c: entered into RCS
3379
3380 * src/conflicts.c: New file.
3381
3382 * src/symtab.c: entered into RCS
3383
3384 * src/alloc.h: New file.
3385
3386 * src/LR0.c: entered into RCS
3387
33881993-04-18 Noah Friedman <friedman@gnu.org>
3389
3390 * src/reader.c: New file.
3391
3392 * src/version.c: *** empty log message ***
3393
33941993-04-18 Noah Friedman <friedman@gnu.org>
3395
3396 * Makefile.in: *** empty log message ***
3397
33981993-04-17 Noah Friedman <friedman@gnu.org>
3399
3400 * Makefile.in: *** empty log message ***
3401
34021993-04-15 Richard Stallman <rms@gnu.org>
3403
3404 * src/main.c, src/files.c:
3405 New file.
3406
34071993-04-15 Noah Friedman <friedman@gnu.org>
3408
3409 * configure.in: entered into RCS
3410
3411 * configure.in: *** empty log message ***
3412
3413 * configure.in: New file.
3414
34151993-04-14 Richard Stallman <rms@gnu.org>
3416
3417 * Makefile.in: New file.
3418
34191993-04-13 Richard Stallman <rms@gnu.org>
3420
3421 * src/version.c: New file.
3422
34231993-03-25 Richard Stallman <rms@gnu.org>
3424
3425 * src/output.c: entered into RCS
3426
34271992-09-25 Richard Stallman <rms@gnu.org>
3428
3429 * configure.bat: entered into RCS
3430
34311992-06-22 Richard Stallman <rms@gnu.org>
3432
3433 * src/vmsgetargs.c: entered into RCS
3434
34351992-06-22 Richard Stallman <rms@gnu.org>
3436
3437 * doc/bison.rnh: entered into RCS
3438
34391992-04-20 David J. MacKenzie <djm@gnu.org>
3440
3441 * README: entered into RCS
3442
34431992-01-22 Richard Stallman <rms@gnu.org>
3444
3445 * src/machine.h: entered into RCS
3446
34471991-12-21 Richard Stallman <rms@gnu.org>
3448
3449 * src/lalr.c, src/closure.c:
3450 entered into RCS
3451
34521991-12-20 Richard Stallman <rms@gnu.org>
3453
3454 * src/state.h: entered into RCS
3455
34561991-12-18 Richard Stallman <rms@gnu.org>
3457
3458 * src/print.c, src/nullable.c, src/derives.c:
3459 entered into RCS
3460
34611991-11-03 David J. MacKenzie <djm@gnu.org>
3462
3463 * src/warshall.c, src/types.h, src/symtab.h, src/lex.h, src/gram.c, src/gram.h, src/files.h:
3464 entered into RCS
3465
34661988-09-09 Richard Stallman <rms@gnu.org>
3467
3468 * src/bison.hairy: entered into RCS
3469
34701987-12-16 Richard Stallman <rms@gnu.org>
3471
3472 * REFERENCES: entered into RCS