[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 'lint' fixes for Bison-generated parsers
From: |
Akim Demaille |
Subject: |
Re: 'lint' fixes for Bison-generated parsers |
Date: |
Mon, 12 Dec 2005 09:35:44 +0100 |
User-agent: |
Gnus/5.110004 (No Gnus v0.4) Emacs/21.4 (gnu/linux) |
>>> "Paul" == Paul Eggert <address@hidden> writes:
> I installed the following patch, which I hope fixes the YYUSE problems
> discussed in the "%destructor feedback" thread.
> 2005-12-09 Paul Eggert <address@hidden>
> Cleanups so that Bison-generated parsers have less lint.
> * data/c.m4 (b4_yydestruct_generate, b4_yysymprint_generate):
> Prepend /*ARGSUSED*/, for lint's sake.
> * data/glr.c (YYUSE): Properly parenthesize, and use an alternate
> definition if 'lint' is defined.
> (YYID): New macro (or function, if lint).
> All uses of /*CONSTCOND*/0 replaced by YYID(0).
> * data/yacc.c: Likewise.
> * data/glr.c (yyuserAction, yyuserMerge, yy_reduce_print):
> (yyrecoverSyntaxError): Prepend /*ARGSUSED*/.
> * data/glr.cc (YYLLOC_DEFAULT): Omit /*CONSTCOND*/ since this code
> is C++ only.
> * data/lalr1.cc (YYUSE): Just use a cast, since this code is C++ only.
> * data/yacc.c (YYSTACK_FREE) [defined YYSTACK_ALLOC]:
> Use YYID(0) rather than 0, for lint.
> (yystrlen): Rewrite to avoid lint warning about ptrdiff_t overflow.
> (yysyntax_error): Rewrite to avoid lint warnings about parenthesization.
Congratulations! That one was quite tricky... Dare I suggest that
you might want to report this knowledge somewhere, e.g., autoconf.texi?
$0.02 from someone-who-did-nothing-but-suggests-others-to-do-more.
> @@ -894,7 +906,7 @@ yysyntax_error (char *yyresult, int yyst
> }
> yyarg[yycount++] = yytname[yyx];
> yysize1 = yysize + yytnamerr (0, yytname[yyx]);
> - yysize_overflow |= yysize1 < yysize;
> + yysize_overflow |= (yysize1 < yysize);
> yysize = yysize1;
> yyfmt = yystpcpy (yyfmt, yyprefix);
> yyprefix = yyor;
I don't get that one.
- Re: %destructor feedback, (continued)
- Re: %destructor feedback, Joel E. Denny, 2005/12/06
- Re: %destructor feedback, Paul Eggert, 2005/12/07
- Re: %destructor feedback, Joel E. Denny, 2005/12/07
- Re: %destructor feedback, Paul Eggert, 2005/12/07
- Re: %destructor feedback, Joel E. Denny, 2005/12/07
- Re: %destructor feedback, Tzvetan Mikov, 2005/12/08
- Re: %destructor feedback, Joel E. Denny, 2005/12/08
- Re: %destructor feedback, Paul Eggert, 2005/12/08
- Re: %destructor feedback, Joel E. Denny, 2005/12/08
- 'lint' fixes for Bison-generated parsers, Paul Eggert, 2005/12/09
- Re: 'lint' fixes for Bison-generated parsers,
Akim Demaille <=
- Re: 'lint' fixes for Bison-generated parsers, Paul Eggert, 2005/12/12
- Re: %destructor feedback, Akim Demaille, 2005/12/07
- Re: %destructor feedback, Joel E. Denny, 2005/12/07
- Re: %destructor feedback, Akim Demaille, 2005/12/07
- Re: %destructor feedback, Joel E. Denny, 2005/12/07
- Re: %destructor feedback, Akim Demaille, 2005/12/19
- Re: %destructor feedback, Joel E. Denny, 2005/12/19
- Re: %destructor feedback, Frank Heckenbach, 2005/12/06
- Re: %destructor feedback, Joel E. Denny, 2005/12/06
- Re: %destructor feedback, Frank Heckenbach, 2005/12/06