This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Define libc_max_align_t
- From: Florian Weimer <fweimer at redhat dot com>
- To: Andreas Schwab <schwab at linux-m68k dot org>
- Cc: GNU C Library <libc-alpha at sourceware dot org>
- Date: Thu, 02 Apr 2015 00:17:43 +0200
- Subject: Re: [PATCH] Define libc_max_align_t
- Authentication-results: sourceware.org; auth=none
- References: <551C1A60 dot 4080507 at redhat dot com> <87h9szqzi9 dot fsf at igel dot home>
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.”
<https://gcc.gnu.org/ml/gcc-patches/2011-11/msg00841.html>
--
Florian Weimer / Red Hat Product Security