This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC 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]

[Bug target/52023] _Alignof (double) yields wrong value on x86


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023

--- Comment #9 from bruno at clisp dot org 2012-01-27 22:39:01 UTC ---
(In reply to comment #7)
> What happens if you have the attribute packed on the structure?

Attribute 'packed' is outside the scope of ISO C11. We're discussing ISO C11
compliant programs here.

ISO C11 has the _Alignas keyword, with which a stricter alignment can be
requested (ISO C11 6.2.8.(1), 6.7.5.(4)), but not a less strict alignment.

GCC's __alignof__ that returns the *preferred* alignment of an object of the
given type has its uses (in memory allocators for example). But the semantics
imposed by ISO C11 on the 'alignof' and '_Alignof' operators defined through
<stdalign.h> is address boundary requirement for all "objects" of that type,
not the preferred alignment.


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