Messages in this thread | | | Date | Sun, 5 Oct 2008 17:28:19 +0300 | From | Adrian Bunk <> | Subject | Re: [PATCH] sdhci: 'scratch' may be used uninitialized |
| |
On Wed, Oct 01, 2008 at 01:50:25AM -0700, Steven Noonan wrote: > The variable 'scratch' is always initialized before it's used. The > conditional which is responsible for initialization of 'scratch' will > always evaluate 'true' when the first loop iteration occurs, and thus, > it's properly initialized. GCC doesn't see this, of course, so using > the uninitialized_var() macro seems to work for silencing this case. > > Signed-off-by: Steven Noonan <steven@uplinklabs.net> > --- > drivers/mmc/host/sdhci.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c > index e3a8133..6257677 100644 > --- a/drivers/mmc/host/sdhci.c > +++ b/drivers/mmc/host/sdhci.c > @@ -177,7 +177,7 @@ static void sdhci_read_block_pio(struct sdhci_host *host) > { > unsigned long flags; > size_t blksize, len, chunk; > - u32 scratch; > + u32 uninitialized_var(scratch); >...
With which gcc version?
I'm not getting this warning with gcc 4.3, and IMHO it doesn't make sense to clutter the source code with such workarounds for older gcc versions (we officially support 6 years old compilers, and warning-free compilations with all of them are not reasonably possible).
cu Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed
| |