fix build errors with -DNDEBUG
Carlos O'Donell
carlos@redhat.com
Fri Jul 24 19:18:00 GMT 2015
On 07/22/2015 01:43 PM, Martin Sebor wrote:
> On 07/22/2015 11:18 AM, Joseph Myers wrote:
>> On Mon, 20 Jul 2015, Martin Sebor wrote:
>>
>>> I'm not sure what guidance to take from this discussion.
>>> Is the request to replace __attribute__ ((unused)) with
>>> __attribute_used__ in this patch or is it okay to commit
>>> as is?
>>
>> "used" and "unused" are different attributes and should not be confused.
>
> Yes, thank you. I misread the definition of __attribute_used__
> macro. Based on its definition in misc/sys/cdefs.h (copied
> below) it expands to attribute used for recent GCC and attribute
> UNused for old GCC.
>
> So changing the patch to use __attribute_used__ wouldn't make
> sense.
>
> Given that, are there any objections to the patch?
>
> /* At some point during the gcc 3.1 development the `used' attribute
> for functions was introduced. We don't want to use it unconditionally
> (although this would be possible) since it generates warnings. */
> #if __GNUC_PREREQ (3,1)
> # define __attribute_used__ __attribute__ ((__used__))
> # define __attribute_noinline__ __attribute__ ((__noinline__))
> #else
> # define __attribute_used__ __attribute__ ((__unused__))
> # define __attribute_noinline__ /* Ignore */
> #endif
Please don't check this in for 2.22.
Please restart this discussion with a new thread when 2.23 opens.
I think each of these cases you cover needs to be reviewed independently
and fixed correctly.
Cheers,
Carlos.
More information about the Libc-alpha
mailing list