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