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