This is the mail archive of the mailing list for the libc-ports project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Usage of __attribute__used__ in (system) headers?

On Mon, Feb 18, 2013 at 2:21 PM, Richard Henderson <> wrote:
> On 02/18/2013 11:00 AM, Carlos O'Donell wrote:
>>> >  static union { unsigned char __c[4]; float __d; } __nan_union
>>> > -    __attribute_used__ = { __nan_bytes };
>>> > +  = { __nan_bytes };
>>> >  # define NAN   (__nan_union.__d)
>>> >
>>> >  #endif /* GCC.  */
>> I disagree, it's useful to mark the non-GCC version with
>> an __attribute_used__ such that in the future we might
>> use another compiler without problems.
> The annotation should not be attribute used at all, but rather unused.
> Used says that the object is referenced in some non-visible way by
> assembly, and thus cannot be elided.  Unused says that we understand the
> variable may not be referenced, and don't warn; but do, in particular,
> remove it if it is unused.

Yes, thanks for catching that, honestly I forget that it's a "possibly
unused" in that case.

glibc doesn't have an __attribute_unused__.

I'd be happy to review a patch that adds it and fixes up the 8
references to the bare attribute.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]