[PATCH] Define libc_max_align_t

Florian Weimer fweimer@redhat.com
Thu Apr 2 08:15:00 GMT 2015


On 04/02/2015 09:38 AM, Andreas Schwab wrote:
> Florian Weimer <fweimer@redhat.com> writes:
> 
>> On 04/02/2015 12:01 AM, Andreas Schwab wrote:
>>> Florian Weimer <fweimer@redhat.com> writes:
>>>
>>>> +/* This mirrors the C11 max_align_t type provided by GCC, but it is
>>>> +   also available in C99 mode.  */
>>>> +typedef struct {
>>>> +  long long ll __attribute__ ((__aligned__ (__alignof__ (long long))));
>>>> +  long double ld __attribute__ ((__aligned__ (__alignof__ (long double))));
>>>> +} libc_max_align_t;
>>>
>>> Why aren't the attributes no-ops?
>>
>> Quoting Joseph:
>>
>> “The attributes there are because some targets may give types lower
>> alignment inside structures and unions than outside; 32-bit x86 in
>> particular.”
> 
> This should probably be added to the comment.

Well, the GCC folks thought it wasn't necessary, but I agree that a
comment cannot hurt.

Is this okay?

-- 
Florian Weimer / Red Hat Product Security
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Define-libc_max_align_t-for-internal-use.patch
Type: text/x-patch
Size: 1405 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20150402/620af766/attachment.bin>


More information about the Libc-alpha mailing list