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