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