[RFC]: (void)0 instead of empty defines
Sam Leffler
sam at freebsd.org
Mon Jun 15 18:38:35 UTC 2009
Roman Divacky wrote:
> hi
>
> in many places we do something like
>
> #ifdef SOMETHING
> #define FOO some_code
> #else
> #define FOO
> #endif
>
>
> I propose to change the second FOO to (void)0 in many places to
>
> 1) let this compile cleanly with clang. Clang warns in many places
> about
> if (cond)
> FOO;
>
> which has empty if body
>
> 2) enforces ; at the end of the expression
>
> this does not cost us nothing so I hope this change is ok.
>
> patch at: http://www.vlakno.cz/~rdivacky/void-zero.patch
>
> what do you think?
>
> roman
>
> p.s. there's also ACPI_DEBUG_PRINT in contrib/acpica which I hope
> jkim might handle
>
Are you saying that:
if (cond)
;
is considered worthy of a warning by the compiler? Is it just "if" or
all conditional control constructs (e.g. while)?
I can image many instances of this construct arising from debugging
facilities. This sounds like a stupid restriction and I would argue we
should just disable the warning.
Sam
More information about the freebsd-current
mailing list