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