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