On 11/27/2013 09:53 AM, Joerg Schilling wrote: >> The C standard does not document that '(void) write(...)' is required to >> avoid diagnostics, so I don't see the gcc behavior as a bug (yes, it's >> annoying behavior, but that doesn't make it incorrect behavior). > > Well, there is a more than 30 year history of lint that causes > '(void) write(...)' to be accepted without a warning. So? Lint is not gcc, and gcc is not lint. Different compilers have different capabilities at producing warnings, and you cannot expect that something that works warning-free on one compiler will remain warning-free on other compilers (even later versions of the same compiler). Warnings are an art form, and not an exact science, precisely because the C standard does not (rather, cannot) specify them. -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org