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