Re: [PATCH] sparse: Fix BUILD_BUG_ON_{ZERO,NULL} definitions

From: Ben Hutchings
Date: Fri Jun 24 2011 - 18:48:55 EST


On Fri, 2011-06-24 at 15:28 -0700, Randy Dunlap wrote:
> On Fri, 24 Jun 2011 22:45:12 +0100 Ben Hutchings wrote:
>
> > Commit 903c0c7cdc21f2ccb7562a7bbc70289c0c2b16ad ('sparse: define dummy
> > BUILD_BUG_ON definition for sparse') left these two broken. The ZERO
> > or NULL suffix specifies what the macro should expand to, not the
> > value that would indicate a bug.
> >
> > Signed-off-by: Ben Hutchings <bhutchings@xxxxxxxxxxxxxx>
> > ---
> > sparse currently reports a syntax error and no useful warnings for any
> > source file which uses one of these macros. Since module_param() uses
> > BUILD_BUG_ON_ZERO(), that's a lot of source files.
> >
> > Ben.
>
> This patch from 2011-MAY-30 also fixes these warnings, but the typecasting
> in yours is probably better. :)
>
> http://marc.info/?l=linux-kernel&m=130677145629121&w=2
>
> Wait, 3.0-rc4 already has the above patch. Is yours still needed?
[...]

Sorry, my baseline was a little out of date.

I'm not sure whether the type of BUILD_BUG_ON_ZERO() should be size_t;
that's just what the non-sparse definition works out as. In some cases
it could make a difference whether it's signed or not.

Ben.

--
Ben Hutchings, Senior Software Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/