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