X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/23f2d9dc0f8f52ebfafba88e2666d14e0d168e80..464c692789eba089bb21ebd3983ebeaa4a8d3312:/ChangeLog diff --git a/ChangeLog b/ChangeLog index e7d623cf..92dab99c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,160 @@ +2003-01-04 Paul Eggert <eggert@twinsun.com> + + * data/yacc.c (yyerrlab1): Omit attribute if __cplusplus is defined, + since GNU C++ (as of 3.2.1) does not allow attributes on labels. + Problem reported by Nelson H. F. Beebe. + +2003-01-03 Paul Eggert <eggert@twinsun.com> + + * lib/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to + (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5 + when compiling Bison 1.875's `bitset bset = obstack_alloc + (bobstack, bytes);'. Problem reported by Nelson H. F. Beebe. + + * src/scan-skel.l (QPUTS): Omit redundant `;' from macro definition. + ([^@\n]): Renamed from [^@\n]+ so that the token buffer does not + grow to a huge size with typical invocation. + + * lib/hash.c (_Bool, bool, false, true, __bool_true_false_are_defined): + Use the pattern recommended by Autoconf 2.57, except also protect + against double-definition. + * src/system.h: Likewise. + Portability issues reported by Nelson H. F. Beebe. + + * data/glr.c (yybool): Renamed from bool, to avoid collisions in C. + All uses changed. Provide a definition in both C and C++. + (yytrue, yyfalse): Define even if defined (__cplusplus). + + * lib/bitset_stats.c (bitset_stats_list): Remove unused var. + Reported by Nelson H. F. Beebe. + + * src/scan-skel.l ("@oline@"): Output lineno+1, not lineno. + +2003-01-02 Paul Eggert <eggert@twinsun.com> + + * data/yacc.c (yyerrlab1): Append `;' after attribute, to + pacify the buggy "smart preprocessor" in MacOS 10.2.3. + Bug reported by Nelson H. F. Beebe. + +2003-01-01 Paul Eggert <eggert@twinsun.com> + + * Version 1.875. + +2002-12-30 Paul Eggert <eggert@twinsun.com> + + * src/scan-gram.l (<INITIAL,SC_AFTER_IDENTIFIER,SC_PRE_CODE>","): + Moved here from... + (<INITIAL>","): Here. This causes stray "," to be treated + more uniformly. + + * src/scan-gram.l (<SC_BRACED_CODE>"}"): Output ";" before the + last brace in braced code when not in Yacc mode, for compatibility + with Bison 1.35. This resurrects the 2001-12-15 patch to + src/reader.c. + + * src/reader.h (YYDECL): Use YYSTYPE, not its deprecated alias + yystype. This follows up the 2002-12-24 YYSTYPE bug fix. + +2002-12-28 Paul Eggert <eggert@twinsun.com> + + * src/symtab.c (symbol_make_alias): Set type of SYMVAL to be + that of SYM's type. This fixes Debian bug 168069, reported by + Thomas Olsson. + +2002-12-28 Paul Eggert <eggert@twinsun.com> + + Version 1.75f. + + Switch back to the Yacc style of conflict reports, undoing some + of the 2002-07-30 change. + * doc/bison.texinfo (Understanding): Use Yacc style for + conflict reports. Also, use new way of locating rules. + * src/conflicts.c (conflict_report): + Renamed from conflict_report_yacc, removing the old + 'conflict_report'. Translate the entire conflict report at once, + so that we don't assume that "," has the same interpretation in + all languages. + (conflicts_output): Use Yacc-style conflict report for each state, + instead of our more-complicated style. + (conflicts_print): Use Yacc-style conflict report, except print + the input file name when not emulating Yacc. + * tests/conflicts.at (Unresolved SR Conflicts, Defaulted + Conflicted Reduction, %expect not enough, %expect too much, + %expect with reduce conflicts): Switch to Yacc-style conflict reports. + * tests/existing.at (GNU Cim Grammar): Likewise. + * tests/glr-regr1.at (Badly Collapsed GLR States): Likewise. + + * src/complain.c (warn_at, warn, complain_at, complain, fatal_at, + fatal): Don't invoke fflush; it's not needed and it might even be + harmful for stdout, as stdout might not be open. + * src/reduce.c (reduce_print): Likewise. + +2002-12-27 Paul Eggert <eggert@twinsun.com> + + Fix a bug where error locations were not being recorded correctly. + This problem was originally reported by Paul Hilfinger in + <http://mail.gnu.org/pipermail/bug-bison/2002-November/001901.html>. + + * data/yacc.c (yyparse): New local var yylerrsp, to record the + top of the location stack's error locations. + (yyerrlab): Set it. When discarding a token, push its location + onto yylerrsp so that we don't lose track of the error's end. + (yyerrlab1): Now is only the target of YYERROR, so that we can + properly record the location of the action that failed. For GCC + 2.93 and later, insert an __attribute__ ((__unused__)) to avoid + GCC warning about yyerrlab1 being unused if YYERROR is unused. + (yyerrlab2): New label, which yyerrlab now falls through to. + Compute the error's location by applying YYLLOC_DEFAULT to + the locations of all the symbols that went into the error. + * doc/bison.texinfo (Location Default Action): Mention that + YYLLOC_DEFAULT is also invoked for syntax errors. + * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): + Error locations include the locations of all the tokens that were + discarded, not just the last token. + +2002-12-26 Paul Eggert <eggert@twinsun.com> + + * src/files.c: Include quote.h. + (compute_output_file_names): Warn if we detect conflicting + outputs to the same file. This should catch the misunderstanding + exemplified by Debian Bug 165349, reported by Bruce Stephens.. + + * src/conflicts.c (conflicts_print): If the user specifies + "%expect N", report an error if there are any reduce/reduce + conflicts. This is what the manual says should happen. + This fixes Debian bug 130890, reported by Anthony DeRobertis. + * tests/conflicts.at (%expect with reduce conflicts): New test. + + Don't use m4_include on relative file names, as it doesn't work as + desired if there happens to be a file with that name under ".". + + * m4sugar/version.m4: Remove; it was included but it wasn't used. + * data/Makefile.am (dist_m4sugar_DATA): Remove m4sugar/version.m4. + * data/m4sugar/m4sugar.m4: Don't include m4sugar/version.m4. + * data/glr.c, data/lalr1.cc, data/yacc.c: Don't include c.m4. + * src/output.c (output_skeleton): Use full path names when + specifying a file to include; don't rely on include path, as + it's unreliable when the working file contains a file with + that name. + +2002-12-25 Paul Eggert <eggert@twinsun.com> + + Remove obsolete references to bison.simple and bison.hairy. + Problem mentioned by Aubin Mahe in + <http://mail.gnu.org/pipermail/help-bison/2002-December/001765.html>. + * data/glr.c: Comment fix. + * doc/bison.1: Remove references. Also, mention "yacc". + + * src/getargs.c (getargs) [MSDOS]: Don't assume optarg != NULL + with -g option. + + * src/parse-gram.y (declaration): Use enum "report_states" rather + than its numeric value 1. + + * src/scan-skel.l ("@output ".*\n): Close any old yyout before + opening a new one. This fixes Debian bug 165349, reported by + Bruce Stephens. + 2002-12-24 Paul Eggert <eggert@twinsun.com> Version 1.75e. @@ -59,7 +216,7 @@ (token_type): New local var, to keep track of which token type to return when scanning braced code. (<INITIAL>"%destructor", <INITIAL>"%lex-param", - <INITIAL>"%parse-param", <INITIAL>"%printer, + <INITIAL>"%parse-param", <INITIAL>"%printer", <INITIAL>"%union"): Set token type and BEGIN SC_PRE_CODE instead of returning a token type immediately. (<INITIAL>"{"): Set token type. @@ -84,9 +241,8 @@ Undo most of the 2002-11-12 yychar -> yytoken patch, as it broke GCC 3.2.1 (which depends on yychar == YYEMPTY when there is no lookahead symbol, and which sets yychar in parser actions) and it - disagreed with the Bison documentation. This should fix the bug - reported by Andrew Walrond in - <http://mail.gnu.org/pipermail/bug-bison/2002-December/001949.html>. + disagreed with the Bison documentation. Bug + reported by Andrew Walrond. * data/yacc.c (YYTRANSLATE): Don't check for negative argument, as the caller now does that. @@ -840,7 +996,7 @@ * data/glr.c (yydoAction): Return YYRESULTTAG, not int. (yyglrReduce): Return yyok, not 0. This should avoid the enumerated-type warnings reported - by Nelson H.F. Beebe in + by Nelson H. F. Beebe in <http://mail.gnu.org/pipermail/bug-bison/2002-November/001872.html>. * lib/bbitset.h (BITSET_INLINE): Remove. @@ -850,7 +1006,7 @@ * data/glr.c (inline): Remove #define. It's the user's responsibility to #define it away, just like 'const'. - This fixes one of the bugs reported by Nelson H.F. Beebe in + This fixes one of the bugs reported by Nelson H. F. Beebe in <http://mail.gnu.org/pipermail/bug-bison/2002-November/001873.html>. * Makefile.maint (po-check): Scan .l and .y files instead of the @@ -10493,10 +10649,11 @@ 1987-12-16 Richard Stallman <rms@gnu.org> * REFERENCES: entered into RCS + ----- Copyright (C) 1987, 1988, 1991, 1992, 1993, 1994, 1995, 1996, 1997, -1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. +1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler.