[ARM] Fix _unlink prototype under ARM_RDI_MONITOR.

Eric Blake eblake@redhat.com
Mon Oct 1 22:18:00 GMT 2018


On 10/1/18 4:28 PM, Christophe Lyon wrote:
> Hi,
> 
> I noticed that "path" is actually used when compiling with
> ARM_RDI_MONITOR, so this small patch removes the unused attribute in
> that case.
> 
> OK?

Personally, I'd rather not take this patch.


>   int
> +#ifdef ARM_RDI_MONITOR
> +_unlink (const char *path)
> +#else
>   _unlink (const char *path __attribute__ ((unused)))
> +#endif

GCC (and thus clang when copying it) defined __attribute__((unused)) to 
merely mean "might be unused, so suppress warnings about it being unused 
even it if turns out to be used after all", and not "must be unused, so 
warn if it actually gets used".  It is specifically designed this way so 
that you DON'T have to add a bunch of #ifdefs around code to apply the 
attribute. If there is at least one path through the rest of a 
function's existing #ifdef maze where the attribute matters, then use 
the attribute unconditionally, rather than making the #ifdef maze worse.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org



More information about the Newlib mailing list