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