Hi Paul.

> Date: Wed, 15 Feb 2012 15:57:09 -0800
> From: Paul Eggert <[email protected]>
> To: Aharon Robbins <[email protected]>
> CC: [email protected]
> Subject: Re: avoid gcc 4.6.2 'may be used before set' warnings in dfa.c
>
> On 02/15/2012 10:54 AM, Aharon Robbins wrote:
> > -  int c, c1, c2;
> > +  int c = 0, c1 = 0, c2 = 0;
>
> Sorry, I don't see why this patch (and the other) is needed.
> grep's copy of src/dfa.h says this:
>
> extern void dfaerror (const char *) __attribute__ ((noreturn));

This would seem to be the difference. I don't have the __attribute__
in my copy of dfa.h.  I don't remember the details, just that it caused
some compilation problems on non-GCC compilers, so I removed it.

> and all paths to the first use of c or wc lead
> through either an initialization of them, or a call
> to dfaerror.
>
> Also, all def-use paths for c1, c2, wc1, and wc2
> seem sound, at least in grep's copy of dfa.c, so why
> do they need to be initialized?

The initializations don't hurt anything, either, and it's good practice
to initialize one's variables.

So, this falls into the nice-to-have category, but if y'all decide
not to apply it I won't make a fuss, either.

Thanks,

Arnold

Reply via email to