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