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