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