Re: [PATCH] Cast removal

From: Muli Ben-Yehuda
Date: Fri Oct 06 2006 - 16:31:33 EST


On Fri, Oct 06, 2006 at 10:18:57PM +0200, Jan Engelhardt wrote:

> >IMHO there's another reason to do this which is much more relevant: it
> >tells the reader that whoever wrote it knows that it returns a value
> >and ignores it on purpose.
>
> And GCC does not care about that, i.e. it still prints foritfy warnings,
> as in:
>
> $ svn co https://svn.sourceforge.net/svnroot/ttyrpld/trunk a && cd a
> $ make user/rpld.o EXT_CFLAGS="-D_FORTIFY_SOURCE=2"
> user/rpld.c:425: warning: ignoring return value of âwriteâ, declared
> with attribute warn_unused_result

Sure, if an interface is decalred with warn_unused_result gcc should
warn, even if the caller casts it to void. But in the normal case,
casting the result of the function to void tells the reader that you
know that it returns something, and you don't care.

Cheers,
Muli


-
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/