Page MenuHomeFreeBSD

Define max_align_t for C11.
ClosedPublic

Authored by jhb on Oct 8 2016, 6:26 AM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, May 7, 10:26 AM
Unknown Object (File)
Sun, May 5, 7:21 AM
Unknown Object (File)
Wed, May 1, 7:38 AM
Unknown Object (File)
Wed, May 1, 3:10 AM
Unknown Object (File)
Tue, Apr 30, 8:28 PM
Unknown Object (File)
Tue, Apr 30, 7:00 PM
Unknown Object (File)
Mon, Apr 29, 10:16 AM
Unknown Object (File)
Sun, Apr 28, 9:28 PM
Subscribers

Details

Summary

Define max_align_t for C11.

libc++'s stddef.h includes an existing definition of max_align_t for
C++11, but it is only defined for C++, not for C. In addition, GCC and
clang both define an alternate version of max_align_t that uses a
union of multiple types rather than a plain long double as in libc++.
This adds a __max_align_t to <sys/_types.h> that matches the GCC and
clang definition that is mapped to max_align_t in <stddef.h>.

PR: 210890

Test Plan
  • universe and an exp-run. One port failed during the exp-run which I still haven't fixed.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

jhb retitled this revision from to Define max_align_t for C11..
jhb updated this object.
jhb edited the test plan for this revision. (Show Details)
jhb added a reviewer: dim.
  • Fix name of GCC macro used to note that max_align_t is defined.
dim edited edge metadata.

LGTM.

This revision is now accepted and ready to land.Oct 20 2016, 6:50 PM
This revision was automatically updated to reflect the committed changes.