]> git.saurik.com Git - bison.git/log
bison.git
18 years agoActualisation of information concerning ports
Juan Manuel Guerrero [Mon, 29 May 2006 19:09:36 +0000 (19:09 +0000)] 
Actualisation of information concerning ports
required to build port and enumeration of the
tests of the testsuite that will be skipped.

18 years ago* src/getargs.c (usage): Mention GLR not just LALR(1) in --help output.
Joel E. Denny [Mon, 29 May 2006 03:39:12 +0000 (03:39 +0000)] 
* src/getargs.c (usage): Mention GLR not just LALR(1) in --help output.

18 years agoRegenerate.
Paul Eggert [Sat, 27 May 2006 00:29:38 +0000 (00:29 +0000)] 
Regenerate.

18 years ago* data/yacc.c (yy_reduce_print): Omit trailing white space in
Paul Eggert [Sat, 27 May 2006 00:28:17 +0000 (00:28 +0000)] 
* data/yacc.c (yy_reduce_print): Omit trailing white space in
generated source code.

18 years ago* Makefile.maint (gzip_rsyncable, GZIP_ENV): Compute within the
Paul Eggert [Mon, 22 May 2006 07:41:15 +0000 (07:41 +0000)] 
* Makefile.maint (gzip_rsyncable, GZIP_ENV): Compute within the
shell, not within 'make', so that 'make' by an ordinary builder
(using GNU make) does not worry about configuring gzip.  This also
works around a bug reported independently by Keith Thompson and by
Georg Schwarz, whereby gzip 1.2.4 --help would output usage on
stderr rather than stdout, messing up the build logs.

18 years ago* data/yacc.c (yyparse): Wrap the final return from yyparse inside YYID
Joel E. Denny [Sun, 21 May 2006 08:11:30 +0000 (08:11 +0000)] 
* data/yacc.c (yyparse): Wrap the final return from yyparse inside YYID
to make sure that YYID will never be unused.  This fixes a 'make
maintainer-check' failure caused by the recent changes to the 'Trivial
grammars' test case, which caused g++ 4.1.0 to complain that YYID was
not used.
* data/glr.c (yyparse): Wrap yyparse's return inside YYID just in case.

18 years agoRegenerate.
Paul Eggert [Sun, 21 May 2006 08:01:24 +0000 (08:01 +0000)] 
Regenerate.

18 years ago* data/glr.c (yyresolveLocations): Remove bogus YYASSERT that the
Joel E. Denny [Sun, 21 May 2006 06:22:36 +0000 (06:22 +0000)] 
* data/glr.c (yyresolveLocations): Remove bogus YYASSERT that the
state before an empty RHS is always resolved here.  Only the location
of that state is guaranteed to be resolved, and that's enough.  This
fixes the remaining bug reported by Derek M. Jones in
<http://lists.gnu.org/archive/html/bug-bison/2006-05/msg00027.html>.
* tests/glr-regression.at (Uninitialized location when reporting
ambiguity): Test the above case.
Also, the embedded comments in this test case claim it checks the case
of an empty RHS that has inherited the initial location.  However, the
corresponding LHS was already resolved, so yyresolveLocations didn't
actually have reason to modify it.  Fix this by forcing
nondeterministic operation at the beginning of the parse.

18 years ago* data/c.m4 (b4_yy_symbol_print_generate):
Paul Eggert [Sun, 21 May 2006 04:48:47 +0000 (04:48 +0000)] 
* data/c.m4 (b4_yy_symbol_print_generate):
(b4_yy_symbol_print_generate): Use 'YYSTYPE const' rather than
'const YYSTYPE', and similarly for YYLTYPE.  This fixes one
of the bugs reported today by Derek M Jones in
<http://lists.gnu.org/archive/html/bug-bison/2006-05/msg00027.html>.
* doc/bison.texinfo (Value Type): Document that YYSTYPE must be
defined to be a type name without parens or brackets.
(Location Type): Similarly for YYLTYPE.
* tests/regression.at (Trivial grammars): Put in a test for this
bug that will be caught by 'make maintainer-check' (though not,
alas, by 'make check' unless your compiler is picky).

18 years agoUpdate version number to 2.2a.
Paul Eggert [Fri, 19 May 2006 23:19:04 +0000 (23:19 +0000)] 
Update version number to 2.2a.

18 years agoRegenerate.
Paul Eggert [Fri, 19 May 2006 21:46:46 +0000 (21:46 +0000)] 
Regenerate.

18 years agoWhoops, I meant version 2.2.
Paul Eggert [Fri, 19 May 2006 21:46:32 +0000 (21:46 +0000)] 
Whoops, I meant version 2.2.

18 years agoVersion 2.1.
Paul Eggert [Fri, 19 May 2006 21:46:07 +0000 (21:46 +0000)] 
Version 2.1.

18 years ago* data/glr.c (yyreportTree): Make room in yystates for the state
Joel E. Denny [Wed, 17 May 2006 16:39:40 +0000 (16:39 +0000)] 
* data/glr.c (yyreportTree): Make room in yystates for the state
preceding the RHS.  This fixes the segmentation fault reported by Derek
M. Jones in
<http://lists.gnu.org/archive/html/help-bison/2006-05/msg00035.html>.
(yyreportTree, yypdumpstack): Subtract 1 from yyrule before printing
to the user.  Reported for yyreportTree by Derek M. Jones later in the
same thread.
* THANKS: Add Derek M. Jones.
Update my email address.
Fix typo in Steve Murphy's name.

18 years ago* data/glr.c (yyreportSyntaxError): Fix off-by-one error in
Paul Eggert [Mon, 15 May 2006 06:13:53 +0000 (06:13 +0000)] 
* data/glr.c (yyreportSyntaxError): Fix off-by-one error in
checking against YYLAST that caused the parser to miss a potential
alternative in its diagnostic.
Problem reported by Maria Jose Moron Fernandez in
<http://lists.gnu.org/archive/html/bug-bison/2006-05/msg00024.html>.
* data/lalr1.cc (yysyntax_error_): Likewise.
* data/yacc.c (yysyntax_error): Likewise.
* tests/regression.at (_AT_DATA_DANCER_Y): Use static array for
tokens, in case we run into an older C compiler.
(_AT_DATA_EXPECT2_Y, AT_CHECK_EXPECT2): New macros.
Use them to check for the off-by-one error fixed above.

18 years ago* data/yacc.c (yytnamerr): Fix typo: local var should be of type
Paul Eggert [Mon, 15 May 2006 05:10:06 +0000 (05:10 +0000)] 
* data/yacc.c (yytnamerr): Fix typo: local var should be of type
YYSIZE_T, not size_t.
* tests/regression.at (Trivial grammars): New test, to catch
the error fixed by the above patch.

18 years ago* doc/bison.texinfo (C++ Bison Interface): Clarify the naming
Akim Demaille [Sun, 14 May 2006 21:00:37 +0000 (21:00 +0000)] 
* doc/bison.texinfo (C++ Bison Interface): Clarify the naming
scheme.
Reported by Steve Murphy.

18 years ago* data/glr.cc, data/lalr1.cc: Using %defines is mandatory.
Akim Demaille [Sun, 14 May 2006 20:48:24 +0000 (20:48 +0000)] 
* data/glr.cc, data/lalr1.cc: Using %defines is mandatory.
* data/glr.cc: b4_location_flag is now b4_locations_flag.

18 years agoImplement --trace=m4.
Akim Demaille [Sun, 14 May 2006 20:40:35 +0000 (20:40 +0000)] 
Implement --trace=m4.
* src/getargs.c (trace_types, trace_args): Accept trace_m4.
* src/output.c (output_skeleton): When set, pass -dV to m4.
Factor the handling of flags in m4.
* src/output.c (prepare): Rename the muscle names debug, defines,
error_verbose to debug_flag, defines_flag, error_verbose_flag.
* data/c.m4: Adjust.
(_b4_define_flag_if, b4_define_flag_if, b4_defines_if): New.
Use b4_define_flag_if to define other b4_FLAG_if macros.
(b4_location_if): As a consequence, rename as...
(b4_locations_if): this, for consistency.
Adjust all the skeletons.

18 years ago* etc/bench.pm: Shorten bench names.
Akim Demaille [Sun, 14 May 2006 20:39:18 +0000 (20:39 +0000)] 
* etc/bench.pm: Shorten bench names.

18 years ago* src/output.h, src/output.c (error_verbose): Move to...
Akim Demaille [Sun, 14 May 2006 19:14:10 +0000 (19:14 +0000)] 
* src/output.h, src/output.c (error_verbose): Move to...
* src/getargs.h, src/getargs.c: here.
Sort the flags.
Adjust dependencies.

18 years agoFix.
Akim Demaille [Sun, 14 May 2006 07:23:21 +0000 (07:23 +0000)] 
Fix.

18 years agoGive credit to Akim for suggestion.
Paul Eggert [Sun, 14 May 2006 07:04:09 +0000 (07:04 +0000)] 
Give credit to Akim for suggestion.

18 years agoRegenerate.
Paul Eggert [Sun, 14 May 2006 07:01:49 +0000 (07:01 +0000)] 
Regenerate.

18 years ago* data/c.m4 (b4_copyright): Put the special exception for Bison
Paul Eggert [Sun, 14 May 2006 07:00:18 +0000 (07:00 +0000)] 
* data/c.m4 (b4_copyright): Put the special exception for Bison
skeletons here, so we don't have to put it in each skeleton.  All
uses changed.  Wrap the copyright notice, in case it is longer
than 80 columns.  Replace comma by newline after title.

18 years ago* doc/bison.texinfo (Calc++ Scanner): The flex behavior is an
Paul Eggert [Thu, 11 May 2006 16:54:01 +0000 (16:54 +0000)] 
* doc/bison.texinfo (Calc++ Scanner): The flex behavior is an
incompatibility, not a bug.  Mention that it wasn't fixed as of
flex 2.5.33.

18 years ago* examples/extexi: Enforce the precedence of concatenation over
Akim Demaille [Thu, 11 May 2006 11:35:13 +0000 (11:35 +0000)] 
* examples/extexi: Enforce the precedence of concatenation over
>>.
Reported by   tommy.nordgren@chello.se

18 years agoComplete ChangeLog.
Akim Demaille [Thu, 11 May 2006 06:21:18 +0000 (06:21 +0000)] 
Complete ChangeLog.

18 years ago* data/lalr1.cc (yytranslate_): Rename token as t to avoid clashes
Akim Demaille [Thu, 11 May 2006 06:18:34 +0000 (06:18 +0000)] 
* data/lalr1.cc (yytranslate_): Rename token as t to avoid clashes
with the member "token".

18 years ago* data/glr.c: Switch to Bison 2.2 special-exception language in
Paul Eggert [Tue, 9 May 2006 06:40:13 +0000 (06:40 +0000)] 
* data/glr.c: Switch to Bison 2.2 special-exception language in
the copyright notice.  Use more-regular format for titles and
copyright notices.
* data/glr.cc: Likewise.
* data/location.cc: Likewise.
* data/yacc.cc: Likewise.
* doc/bison.texinfo (Conditions): Document this.
* NEWS: likewise.  Upgrade version to 2.2.

18 years agoAdd sane defaults for grep, egrep, fgrep and sed.
Juan Manuel Guerrero [Mon, 1 May 2006 14:35:33 +0000 (14:35 +0000)] 
Add sane defaults for grep, egrep, fgrep and sed.

18 years agoAdd information about what autoconf version configuration script
Juan Manuel Guerrero [Sun, 30 Apr 2006 17:02:24 +0000 (17:02 +0000)] 
Add information about what autoconf version configuration script
can be modified by this particular sed script.

18 years agoUse a more general search string in ac_abs_builddir, ac_abs_top_builddir, etc.
Juan Manuel Guerrero [Sun, 30 Apr 2006 16:30:49 +0000 (16:30 +0000)] 
Use a more general search string in ac_abs_builddir, ac_abs_top_builddir, etc.

18 years agoAdd more possible file name variations of Makefile.in.in
Juan Manuel Guerrero [Sun, 30 Apr 2006 16:30:36 +0000 (16:30 +0000)] 
Add more possible file name variations of Makefile.in.in
that must be checked for and renamed to the valid 8+3
file name Makefile.in-in

18 years ago* data/glr.cc: Remove dead code.
Akim Demaille [Thu, 27 Apr 2006 10:43:02 +0000 (10:43 +0000)] 
* data/glr.cc: Remove dead code.

18 years ago* bootstrap: Comment out the AM_CPPFLAGS line, since we don't use
Paul Eggert [Tue, 25 Apr 2006 21:02:36 +0000 (21:02 +0000)] 
* bootstrap: Comment out the AM_CPPFLAGS line, since we don't use
that variable and the line breaks the bootstrap.

18 years ago* doc/bison.texinfo (Multiple start-symbols): New.
Akim Demaille [Mon, 24 Apr 2006 09:45:57 +0000 (09:45 +0000)] 
* doc/bison.texinfo (Multiple start-symbols): New.

18 years ago* etc/README, etc/bench.pl: New.
Akim Demaille [Mon, 24 Apr 2006 08:35:44 +0000 (08:35 +0000)] 
* etc/README, etc/bench.pl: New.

18 years ago* src/scan-gram.l: Be robust to BRACED_CODE appearing before any
Akim Demaille [Mon, 3 Apr 2006 13:50:10 +0000 (13:50 +0000)] 
* src/scan-gram.l: Be robust to BRACED_CODE appearing before any
rule.
Reported by Mickael Labau.
* tests/input.at (Torturing the Scanner): Test it.

18 years ago* doc/bison.texinfo (Decl Summary): Don't mention yylloc twice.
Paul Eggert [Fri, 17 Mar 2006 07:59:20 +0000 (07:59 +0000)] 
* doc/bison.texinfo (Decl Summary): Don't mention yylloc twice.

18 years ago* Delete all environment variables after use to avoid that
Juan Manuel Guerrero [Tue, 14 Mar 2006 23:10:09 +0000 (23:10 +0000)] 
* Delete all environment variables after use to avoid that
  the environment space becomes exhausted.

18 years agoRemove @shorttitlepage stuff; it wasn't used
Paul Eggert [Mon, 13 Mar 2006 23:21:29 +0000 (23:21 +0000)] 
Remove @shorttitlepage stuff; it wasn't used
and didn't really work.
For the index, use @ifnotinfo, not @iftex.
Minor cleanups of spacing and terminology.

18 years ago* tests/local.at (_AT_BISON_OPTION_PUSHDEFS): Fix the definition
Akim Demaille [Sun, 12 Mar 2006 15:26:05 +0000 (15:26 +0000)] 
* tests/local.at (_AT_BISON_OPTION_PUSHDEFS): Fix the definition
of AT_NAME_PREFIX when %name-prefix is not used.

18 years agoApply --prefix to C++ skeletons too: they change the namespace.
Akim Demaille [Sun, 12 Mar 2006 14:45:27 +0000 (14:45 +0000)] 
Apply --prefix to C++ skeletons too: they change the namespace.
The test suite already exercize these cases.
* data/c++.m4 (b4_namespace): New.
* data/lalr1.cc, data/glr.cc, data/location.cc: Use it instead of `yy'.
* data/lalr1.cc (yytnameerr_): Move its definition into the namespace.
* data/yacc.c, data/glr.c: Remove a useless `[]'.
* doc/bison.texinfo: Document it.
(Option Cross Key): Use @multitable in all formats.  It looks
nicer, even in TeX outputs.
(Rules): Use the same code whatever the output type is.
* tests/local.at (_AT_BISON_OPTION_PUSHDEFS)
(_AT_BISON_OPTION_POPDEFS): Support AT_NAME_PREFIX.
* tests/calc.at: Use it, instead of hard coding `yy'.

18 years ago* TODO: Remove dead items.
Akim Demaille [Fri, 10 Mar 2006 13:56:47 +0000 (13:56 +0000)] 
* TODO: Remove dead items.

18 years agoFix ChangeLog.
Akim Demaille [Fri, 10 Mar 2006 13:53:48 +0000 (13:53 +0000)] 
Fix ChangeLog.

18 years ago* doc/FAQ: Remove, merged into...
Akim Demaille [Fri, 10 Mar 2006 13:45:03 +0000 (13:45 +0000)] 
* doc/FAQ: Remove, merged into...
* doc/bison.texinfo (FAQ): this.
* doc/Makefile.am (EXTRA_DIST): Adjust.

18 years ago* data/c.m4 (b4_token_enum): Always define the enum of tokens,
Akim Demaille [Fri, 10 Mar 2006 13:30:19 +0000 (13:30 +0000)] 
* data/c.m4 (b4_token_enum): Always define the enum of tokens,
even if empty.
* data/lalrl1.cc, data/glr.cc (parser::token_type): New.
* doc/bison.texinfo (Calc++ Scanner): Use it.

18 years agoFix two nits reported by twlevo, plus one more that I discovered.
Paul Eggert [Thu, 9 Mar 2006 23:23:11 +0000 (23:23 +0000)] 
Fix two nits reported by twlevo, plus one more that I discovered.

* src/assoc.h (assoc_to_string): Give a name to the arg, as
this is the usual Bison style.
* src/location.h (location_print): Likewise.

* src/reader.h (token_name): Likewise.

18 years agoFix some nits reported by twlevo.
Paul Eggert [Wed, 8 Mar 2006 19:45:10 +0000 (19:45 +0000)] 
Fix some nits reported by twlevo.
* doc/FAQ: Remove ancient Y2K FAQ, replacing it with "secure"
and "POSIX".  Use more-modern syntax for URLs.  Mention C++
and ask for Java.  Don't hardwire OS version numbers.  Add
copyright notice.
* m4/.cvsignore: Add unistd_h.m4, for latest gnulib.
* src/conflicts.c (solved_conflicts_obstack): Now static.

18 years ago* doc/bison.texinfo (Introduction): Mention GLR and C++ as on the web
Joel E. Denny [Wed, 8 Mar 2006 19:34:56 +0000 (19:34 +0000)] 
* doc/bison.texinfo (Introduction): Mention GLR and C++ as on the web
page.  Say "you can use it" not "you may use it" as on the web page;
we're describing capabilities not granting permission.

18 years ago* data/glr.c (yyresolveLocations): Rename local variables to avoid
Paul Eggert [Tue, 7 Mar 2006 06:42:23 +0000 (06:42 +0000)] 
* data/glr.c (yyresolveLocations): Rename local variables to avoid
shadowing warnings.  Use usual patter for iterating through RHS.
* tests/glr-regression.at
(Uninitialized location when reporting ambiguity):
Modify yylex so that it uses its argument, rather than trying
to rely on ARGSUSED (which doesn't work for gcc with warnings).
const char -> char const.

18 years ago* tests/Makefile.am ($(srcdir)/package.m4, maintainer-check-valgrind):
Paul Eggert [Mon, 6 Mar 2006 08:29:22 +0000 (08:29 +0000)] 
* tests/Makefile.am ($(srcdir)/package.m4, maintainer-check-valgrind):
Don't use tabs inside commands; it messes up 'ps'.

18 years ago* tests/glr-regression.at (Uninitialized location when reporting
Joel E. Denny [Mon, 6 Mar 2006 07:39:11 +0000 (07:39 +0000)] 
* tests/glr-regression.at (Uninitialized location when reporting
ambiguity): New test case.
* data/glr.c (yyresolveLocations): New function, which uses
YYLLOC_DEFAULT.
(yyresolveValue): Invoke yyresolveLocations before reporting an
ambiguity.
* doc/bison.texinfo (Default Action for Locations): Note
YYLLOC_DEFAULT's usage for ambiguity locations.
(GLR Semantic Actions): Cross-reference those notes.

18 years ago* tests/glr-regression.at (Leaked semantic values when reporting
Joel E. Denny [Sat, 4 Mar 2006 03:29:03 +0000 (03:29 +0000)] 
* tests/glr-regression.at (Leaked semantic values when reporting
ambiguity): Remove unnecessary union and type declarations.
(Leaked lookahead after nondeterministic parse syntax error): New test
case.
* data/glr.c (yyparse): Check for zero stacks remaining before
attempting to shift the lookahead so that you don't lose it.

18 years agoAvoid memory leaks by not invoking longjmp in yyreportAmbiguity.
Joel E. Denny [Thu, 2 Mar 2006 06:18:09 +0000 (06:18 +0000)] 
Avoid memory leaks by not invoking longjmp in yyreportAmbiguity.
* tests/glr-regression.at (Leaked semantic values when reporting
ambiguity): New test case.
* data/glr.c (yyreportAmbiguity): Invoke yyyerror directly and return
yyabort rather than invoking yyFail, which invokes longjmp.  Remove the
now unnecessary yystackp parameter.
(yyresolveValue): Return yyreportAmbiguity's result.  Now the necessary
destructors can be called.

* tests/glr-regression.at: Don't invoke bison with `-t' unnecessarily
in existing testcases.

18 years agoDon't leak semantic values for parent RHS when a user action cuts the
Joel E. Denny [Thu, 2 Mar 2006 01:35:15 +0000 (01:35 +0000)] 
Don't leak semantic values for parent RHS when a user action cuts the
parser, and clean up related code a bit.
* tests/glr-regression.at (Leaked merged semantic value if user action
cuts parse) Rename to...
(Leaked semantic values if user action cuts parse) ... this.  Add check
for leaked parent RHS values.
* data/glr.c (yydestroyGLRState): In debugging output, distinguish
between an unresolved state (non-empty chain of semantic options) and
an incomplete one (signaled by an empty chain).
(yyresolveStates): Document the interface.  Move all manipulation of an
successfully or unsuccessfully resolved yyGLRState to...
(yyresolveValue): ... here so that yyresolveValue always leaves a
yyGLRState with consistent data and thus is easier to understand.
Remove the yyvalp and yylocp parameters since they are always just
taken from the yys parameter.  When reporting a discarded merged value
in debugging output, note that it is incompletely merged.  Document the
interface.
(yyresolveAction): If resolving any of the RHS states fails, destroy
them all rather than leaking them.  Thus, as long as user actions are
written to clean up the RHS correctly, yyresolveAction always cleans up
the RHS of a semantic option.  Document the interface.

18 years ago* data/glr.c (yyexpandGLRStack): Catch an off-by-one error that
Paul Eggert [Mon, 27 Feb 2006 19:50:59 +0000 (19:50 +0000)] 
* data/glr.c (yyexpandGLRStack): Catch an off-by-one error that
led to a segmentation fault in GNU Pascal.  Problem reported
by Waldek Hebisch.

18 years ago* doc/bison.texinfo (Mid-Rule Actions): Explain how to bury a
Joel E. Denny [Tue, 21 Feb 2006 21:01:57 +0000 (21:01 +0000)] 
* doc/bison.texinfo (Mid-Rule Actions): Explain how to bury a
mid-rule action inside a nonterminal symbol in order to declare a
destructor for its semantic value.

18 years agoAdd "2.1b".
Paul Eggert [Sat, 18 Feb 2006 07:15:32 +0000 (07:15 +0000)] 
Add "2.1b".

18 years agoRegenerate.
Paul Eggert [Fri, 17 Feb 2006 00:23:08 +0000 (00:23 +0000)] 
Regenerate.

18 years ago* data/yacc.c [(! defined yyoverflow || YYERROR_VERBOSE) && !
Paul Eggert [Fri, 17 Feb 2006 00:08:17 +0000 (00:08 +0000)] 
* data/yacc.c [(! defined yyoverflow || YYERROR_VERBOSE) && !
YYSTACK_USE_ALLOCA && ! defined YYSTACK_ALLOC && defined
__cplusplus && ! defined _STDLIB_H && !
((defined YYMALLOC || defined malloc) && (defined YYFREE ||
defined free))]: Include <stdlib.h> rather than rolling our own
declarations of malloc and free, to avoid problems with
incompatible declarations (using 'throw') C++'s stdlib.h.  This
should fix Debian bug 340012
<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=340012>,
reported by Guillaume Melquiond.

18 years ago* NEWS: Clarify symbols versus types in unused-value warnings.
Paul Eggert [Tue, 14 Feb 2006 00:26:58 +0000 (00:26 +0000)] 
* NEWS: Clarify symbols versus types in unused-value warnings.

18 years agoBump version number.
Paul Eggert [Mon, 13 Feb 2006 19:23:26 +0000 (19:23 +0000)] 
Bump version number.

18 years ago* NEWS: Version 2.1a.
Paul Eggert [Mon, 13 Feb 2006 19:07:04 +0000 (19:07 +0000)] 
* NEWS: Version 2.1a.
* tests/headers.at (AT_TEST_CPP_GUARD_H): Declare yyerror and yylex,
since C99 requires this.

18 years ago* m4/c-working.m4: New file.
Paul Eggert [Sun, 12 Feb 2006 02:14:38 +0000 (02:14 +0000)] 
* m4/c-working.m4: New file.
* configure.ac (BISON_TEST_FOR_WORKING_C_COMPILER): Use it.

18 years ago* Makefile.maint: Merge from coreutils.
Paul Eggert [Sat, 11 Feb 2006 00:42:27 +0000 (00:42 +0000)] 
* Makefile.maint: Merge from coreutils.

18 years ago* m4/cxx.m4 (BISON_TEST_FOR_WORKING_CXX_COMPILER): Catch a
Paul Eggert [Fri, 10 Feb 2006 08:00:30 +0000 (08:00 +0000)] 
* m4/cxx.m4 (BISON_TEST_FOR_WORKING_CXX_COMPILER): Catch a
configuration screwup "./configure CC=/opt/SUNWspro/bin/c89
CFLAGS="-xarch=generic64" CXX=/opt/SUNWspro/bin/CC
LDFLAGS="-xarch=generic64" with Sun C 5.7 on Solaris 10; this
messes up because C++ code is compiled in 32-bit mode but linked
in 64-bit mode.

18 years agoUpdate copyright.
Paul Eggert [Thu, 9 Feb 2006 08:18:57 +0000 (08:18 +0000)] 
Update copyright.

18 years ago* doc/bison.texinfo (Calc++ Scanner): Work around a bug in flex
Paul Eggert [Wed, 8 Feb 2006 19:25:38 +0000 (19:25 +0000)] 
* doc/bison.texinfo (Calc++ Scanner): Work around a bug in flex
2.5.31.  This resembles the 2005-10-10 patch to src/scan-skel.l.

18 years ago* examples/calc++/Makefile.am (check_PROGRAMS): Renamed from
Paul Eggert [Wed, 8 Feb 2006 18:56:01 +0000 (18:56 +0000)] 
* examples/calc++/Makefile.am (check_PROGRAMS): Renamed from
nodist_PROGRAMS, since we don't need to actually compile the
example if we're just doing a plain 'make'.  This avoids bothering
the installer unnecessarily about problems due to weird C++
compilers.

18 years ago* Add a sane default for awk.
Juan Manuel Guerrero [Tue, 7 Feb 2006 00:23:43 +0000 (00:23 +0000)] 
* Add a sane default for awk.

18 years ago* tests/headers.at (AT_TEST_CPP_GUARD_H): Use #include <...> rather
Paul Eggert [Mon, 6 Feb 2006 23:49:52 +0000 (23:49 +0000)] 
* tests/headers.at (AT_TEST_CPP_GUARD_H): Use #include <...> rather
than #include "...", and compile with -I'.'.

18 years agoVarious DJGGP specific issues in /djgpp.
Juan Manuel Guerrero [Mon, 6 Feb 2006 22:34:51 +0000 (22:34 +0000)] 
Various DJGGP specific issues in /djgpp.

18 years ago* Comment fixes.
Juan Manuel Guerrero [Mon, 6 Feb 2006 22:08:13 +0000 (22:08 +0000)] 
* Comment fixes.

18 years ago* Minor documentation fixes.
Juan Manuel Guerrero [Mon, 6 Feb 2006 21:39:39 +0000 (21:39 +0000)] 
* Minor documentation fixes.

18 years ago* Fix data/glr.cc to reflect the renaming of c++.m4 into cxx.m4.
Juan Manuel Guerrero [Mon, 6 Feb 2006 20:51:28 +0000 (20:51 +0000)] 
* Fix data/glr.cc to reflect the renaming of c++.m4 into cxx.m4.

18 years ago* Use colon instead of semicolon as path separator in PATH.
Juan Manuel Guerrero [Mon, 6 Feb 2006 20:44:29 +0000 (20:44 +0000)] 
* Use colon instead of semicolon as path separator in PATH.

18 years ago* m4/cxx.m4 (BISON_TEST_FOR_WORKING_CXX_COMPILER): Check that
Paul Eggert [Thu, 2 Feb 2006 23:53:07 +0000 (23:53 +0000)] 
* m4/cxx.m4 (BISON_TEST_FOR_WORKING_CXX_COMPILER): Check that
'#include <map>' works and that you can apply ++ to iterators.

18 years ago* m4/cxx.m4 (BISON_TEST_FOR_WORKING_CXX_COMPILER): Check
Paul Eggert [Thu, 2 Feb 2006 07:33:13 +0000 (07:33 +0000)] 
* m4/cxx.m4 (BISON_TEST_FOR_WORKING_CXX_COMPILER): Check
that '#include <string>' works.

18 years ago* data/lalr1.cc (yytranslate_): No longer inline.
Paul Eggert [Thu, 2 Feb 2006 05:27:35 +0000 (05:27 +0000)] 
* data/lalr1.cc (yytranslate_): No longer inline.

18 years ago* lib/bbitset.h (struct bitset_vtable): Rename members not, and,
Paul Eggert [Wed, 1 Feb 2006 09:08:00 +0000 (09:08 +0000)] 
* lib/bbitset.h (struct bitset_vtable): Rename members not, and,
or, xor to not_, and_, or_, and xor_, respectively.

18 years ago* tests/headers.at (AT_TEST_CPP_GUARD_H): Don't assume that "$CC
Paul Eggert [Wed, 1 Feb 2006 08:40:45 +0000 (08:40 +0000)] 
* tests/headers.at (AT_TEST_CPP_GUARD_H): Don't assume that "$CC
-E" works; it apparently doesn't work with PathScale EKO Compiler
Suite Version 2.0.

18 years agoDuring deterministic GLR operation, user actions should be able to
Joel E. Denny [Mon, 30 Jan 2006 11:15:15 +0000 (11:15 +0000)] 
During deterministic GLR operation, user actions should be able to
influence the parse by changing yychar.  To make this easier to fix and
to make glr.c easier to evolve in general, don't maintain yytoken in
parallel with yychar; just compute yytoken when needed.
* tests/glr-regression.at (Incorrect lookahead during deterministic
GLR): Check that setting yychar in a user action has the intended
effect.
* data/glr.c (yyGLRStack): Remove yytokenp member.
(yyclearin): Don't set *yytokenp.
(yyprocessOneStack, yyreportSyntaxError, yyrecoverSyntaxError): Examine
yychar rather than *yytokenp to determine the current lookahead.
Compute yytoken locally when needed.
(yyparse): Likewise.  Remove the local yytoken that yytokenp used to
point to.

* doc/bison.texinfo (Bison Options): Remove stray sentence fragment
after `--report' documentation.

18 years ago* src/parse-gram.y (grammar_declaration): Location of printer
Paul Eggert [Mon, 30 Jan 2006 09:00:40 +0000 (09:00 +0000)] 
* src/parse-gram.y (grammar_declaration): Location of printer
symbol is @1, not list->location.
* tests/input.at (Incompatible Aliases): Adjust to above change.

18 years agoRegenerate.
Paul Eggert [Mon, 30 Jan 2006 08:52:20 +0000 (08:52 +0000)] 
Regenerate.

18 years ago* tests/input.at (AT_CHECK_UNUSED_VALUES): Remove. Instead, do
Paul Eggert [Mon, 30 Jan 2006 07:51:58 +0000 (07:51 +0000)] 
* tests/input.at (AT_CHECK_UNUSED_VALUES): Remove.  Instead, do
all the test at once.  This makes the output easier to read in the
normal case.

18 years agoFix a longstanding bug uncovered by bro-0.9a9/src/parse.y, which I
Paul Eggert [Mon, 30 Jan 2006 07:26:00 +0000 (07:26 +0000)] 
Fix a longstanding bug uncovered by bro-0.9a9/src/parse.y, which I
got from <http://bro-ids.org/download.html>.  The bug is that
when two actions appeared in succession, the second one was
scanned before the first one was added to the grammar rule
as a midrule action.  Bison then output the incorrect warning
"parse.y:905.17-906.36: warning: unused value: $3".
* src/parse-gram.y (BRACED_CODE, action): These are no longer
associated with a value.
(rhs): Don't invoke grammar_current_rule_action_append.
(action): Invoke it here instead.
* src/reader.c (grammar_midrule_action): Now extern.
(grammar_current_rule_action_append): Don't invoke
grammar_midrule_action; that is now the scanner's job.
* src/reader.h (last_string, last_braced_code_loc):
(grammar_midrule_action): New decls.
* src/scan-gram.l (last_string): Now extern, sigh.
(last_braced_code_loc): New extern variable.
(<INITIAL>"{"): Invoke grammar_midrule_action if the current
rule already has an action.
(<SC_BRACED_CODE>"}"): Set last_braced_code_loc before returning.
* tests/input.at (AT_CHECK_UNUSED_VALUES):
Add some tests to check that the above changes fixed the bug.

18 years ago* src/reader.c (symbol_should_be_used): Renamed from symbol_typed_p.
Paul Eggert [Fri, 27 Jan 2006 22:51:00 +0000 (22:51 +0000)] 
* src/reader.c (symbol_should_be_used): Renamed from symbol_typed_p.
All used changed.  Check whether the symbol has a destructor,
not whether it is typed.
* tests/input.at (AT_CHECK_UNUSED_VALUES): Add a destructor, so
that the values are still reported as unused.  All line numbers
adjusted.

18 years agoRegenerate.
Paul Eggert [Mon, 23 Jan 2006 08:42:45 +0000 (08:42 +0000)] 
Regenerate.

18 years agoWork around a bug in bro 0.8, which underparenthesizes its
Paul Eggert [Mon, 23 Jan 2006 08:39:52 +0000 (08:39 +0000)] 
Work around a bug in bro 0.8, which underparenthesizes its
definition of YYLLOC_DEFAULT.
* data/glr.c: Change all uses of YYLLOC_DEFAULT to parenthesize
their arguments.
* data/lalr1.cc: Likewise.
* data/yacc.cc: Likewise.

18 years ago* data/yacc.c (b4_int_type): Use yytype_uint8, etc., so that the
Paul Eggert [Mon, 23 Jan 2006 07:59:42 +0000 (07:59 +0000)] 
* data/yacc.c (b4_int_type): Use yytype_uint8, etc., so that the
user can override the types.
(short): #undef, to work around a bug in Pike 7.0.
(yytype_uint8, yytype_int8, yytype_uint16, yytype_int16): New types.
(union yyalloc.yyss): Use yytype_int16 rather than short.
All uses changed.
(yysigned_char): Remove.
* src/parse-gram.y (YYTYPE_UINT8, YYTYPE_INT8, YYTYPE_UINT16):
(YYTYPE_INT16): New macros, to test the new facility in yacc.c.
* tests/regression.at (Web2c Actions): Adjust to above changes.

18 years ago(check_and_convert_grammar): New function.
Paul Eggert [Mon, 23 Jan 2006 04:37:09 +0000 (04:37 +0000)] 
(check_and_convert_grammar): New function.
(reader): Close the input file even if something went wrong during
parsing.  Minor file descriptor leak reported by twlevo.

18 years ago* src/assoc.c (assoc_to_string): Use a default: abort (); case
Paul Eggert [Sun, 22 Jan 2006 08:17:18 +0000 (08:17 +0000)] 
* src/assoc.c (assoc_to_string): Use a default: abort (); case
to pacify gcc -Wswitch-default.
* src/scan-gram.l (adjust_location): Use a default: break; case
to pacify gcc -Wswitch-default.
* src/scan-skel.h (skel_get_lineno, skel_get_in, skel_get_out):
(skel_get_leng, skel_get_text, skel_set_lineno, skel_set_in):
(skel_set_out, skel_get_debug, skel_set_debug, skel_lex_destroy):
Move these decls to scan-skel.l, since they don't need to be
visible elsewhere.
* src/scan-skel.l: Accept the above decls.
(skel_lex): New decl, to pacify GCC when unpatched flex 2.5.31
is used.

18 years agoFix white space glitches.
Paul Eggert [Sun, 22 Jan 2006 08:02:47 +0000 (08:02 +0000)] 
Fix white space glitches.

18 years agoInitial version
Paul Eggert [Sun, 22 Jan 2006 07:59:51 +0000 (07:59 +0000)] 
Initial version

18 years ago* Makefile.cfg (local-checks-to-skip): Add changelog-check,
Paul Eggert [Sun, 22 Jan 2006 07:38:49 +0000 (07:38 +0000)] 
* Makefile.cfg (local-checks-to-skip): Add changelog-check,
since we don't want to insist on a version number at the start
of the changelog every time.
* Makefile.maint: Sync from coreutils a bit better.
(sc_trailing_blank): Renamed from sc_trailing_space.
All uses changed.
(sc_no_if_have_config_h, sc_require_config_h):
(sc_prohibit_assert_without_use): New rules.
(sc_obsolete_symbols): Don't catch Makefile.maint itself.
(sc_dd_max_sym_length): Fix leading spaces in rule.
(sc_system_h_headers): Prefix with @.
(sc_useless_cpp_parens, m4-check): Output line numbers.
(changelog-check): Allow version only in head.
* data/c.m4: Use "defined FOO" instead of "defined (FOO)", to
satisfy new Makefile.maint rule.
* data/glr.c: Likewise.
* data/glr.cc: Likewise.
* data/lalr1.cc: Likewise.
* data/yacc.c: Likewise.
* lib/ebitsetv.c: Likewise.
* lib/lbitset.c: Likewise.
* lib/subpipe.c: Likewise.
* lib/timevar.c: Likewise.
* src/system.h: Likewise.
* data/yacc.c (YYSTYPE): Don't generate trailing spaces in output.
* djgpp/Makefile.maint: Add copyright notice.
* djgpp/README.in: Likewise.
* djgpp/config.bat: Likewise.
* djgpp/config.site: Likewise.
* djgpp/config_h.sed: Likewise.
* djgpp/djunpack.bat: Likewise.
* djgpp/config.sed: Fix copyright notice to match standard format.
* djgpp/subpipe.h: Likewise.
* lib/bitsetv-print.c: Likewise.
* lib/bitsetv.c: Likewise.
* lib/subpipe.h: Likewise.
* lib/timevar.c: Likewise.
* lib/timevar.h: Likewise.
* djgpp/subpipe.c: Use standard recipe for config.h.
* lib/abitset.c: Likewise.
* lib/bitset.c: Likewise.
* lib/bitset_stats.c: Likewise.
* lib/bitsetv-print.c: Likewise.
* lib/bitsetv.c: Likewise.
* lib/ebitsetv.c: Likewise.
* lib/get-errno.c: Likewise.
* lib/lbitset.c: Likewise.
* lib/subpipe.c: Likewise.
* lib/timevar.c: Likewise.
* lib/vbitset.c: Likewise.
* tests/local.at: Likewise.
* src/scan-gram.l: Don't include verify.h, since system.h does
that for us.
* .x-sc_require_config_h: New file.
* .x-sc_unmarked_diagnostics: New file.

18 years agoBe a bit more systematic about using 'abort'.
Paul Eggert [Sat, 21 Jan 2006 04:35:09 +0000 (04:35 +0000)] 
Be a bit more systematic about using 'abort'.
* lib/abitset.c (abitset_test): Remove ATTRIBUTE_UNUSED; not needed.
* lib/bitset.c (bitset_bytes, bitset_init, bitset_op4_cmp):
Put 'default: abort ();' before some other case, to satisfy older
pedantic compilers.
* lib/bitset_stats.c (bitset_stats_init): Likewise.
* lib/ebitset.c (ebitset_elt_find, ebitset_op3_cmp): Likewise.
* lib/lbitset.c (lbitset_elt_find, lbitset_op3_cmp): Likewise.
* src/conflicts.c (resolve_sr_conflict): Likewise.
* src/vcg.c (get_color_str, get_textmode_str, get_shape_str):
(get_decision_str, get_orientation_str, get_node_alignment_str):
(get_arrow_mode_str, get_crossing_type_str, get_view_str):
(get_linestyle_str, get_arrowstyle_str): Likewise.
* src/conflicts.c (resolve_sr_conflict):
Use a default case rather than one for the one remaining enum
value, to catch invalid enum values as well.
* src/lalr.c (set_goto_map, map_goto):
Prefer "assert (FOO);" to "if (!FOO) abort ();".
* src/nullable.c (nullable_compute, token_definitions_output):
Likewise.
* src/reader.c (packgram, reader): Likewise.
* src/state.c (transitions_to, state_new, state_reduction_find):
Likewise.
* src/symtab.c (symbol_user_token_number_set, symbol_make_alias):
(symbol_pack): Likewise.
* src/tables.c (conflict_row, pack_vector): Likewise.
* src/scan-skel.l (QPUTS): Remove unnecessary parens.
(BASE_QPUTS, "@output ".*\n): Remove unnecessary asserts.
* src/system.h: Don't include <assert.h>.
(assert): New macro.

18 years ago* doc/bison.texinfo (Prologue, Rules, Actions, Union Decl, Action Decl):
Paul Eggert [Fri, 20 Jan 2006 22:23:44 +0000 (22:23 +0000)] 
* doc/bison.texinfo (Prologue, Rules, Actions, Union Decl, Action Decl):
(Destructor Decl, Parser Function, Pure Calling):
Describe rules for braces inside C code more carefully.

18 years agoFix some porting glitches found by Nelson H. F. Beebe.
Paul Eggert [Fri, 20 Jan 2006 01:59:30 +0000 (01:59 +0000)] 
Fix some porting glitches found by Nelson H. F. Beebe.
* lib/abitset.c (abitset_resize): Rewrite to avoid warnings from
compilers that don't understand that abort () does not return.
* src/state.c (transitions_to): Likewise.
* m4/cxx.m4 (BISON_TEST_FOR_WORKING_CXX_COMPILER): Check
that '#include <cstdlib>' works.
* src/system.h (INT8_MIN, INT16_MIN, INT32_MIN, INT8_MAX):
(INT16_MAX, UINT8_MAX, INT32_MAX, UINT16_MAX, UINT32_MAX):
#undef if ! defined __STDC_VERSION__ || __STDC_VERSION__ < 199901,
for the benefit of some pre-C99 compilers.