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