This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix ICE on sprintf (p, "%s") and miscompilation of sprintf (p, "a", q++) (PR middle-end/30473)
Jakub Jelinek <jakub@redhat.com> writes:
> On Thu, Feb 01, 2007 at 02:26:14PM -0800, Ian Lance Taylor wrote:
> > > + arglist = TREE_CHAIN (TREE_CHAIN (arglist));
> >
> > Please use a new variable here, e.g., third_argument, rather than
> > reusing arglist. New variables are fairly cheap, and I think it will
> > make the rest of the patch more comprehensible.
>
> I tried to follow all other {fold,expand}_builtin_*printf* routines which
> also advance arglist (the big difference is that they usually don't
> call verify_arglist but validate it by hand).
> third_argument would be a wrong name, as 3rd argument really is
> TREE_VALUE (TREE_CHAIN (TREE_CHAIN (arglist))), but guess this can
> be called args or something similar.
Oh, OK, if the other functions do it that way, you can do it that way
too. I think it's a little bit confusing, but it would be more
confusing for different functions to do it differently.
Thanks.
Ian