Page MenuHomeFreeBSD

Define max_align_t for in-kernel use
Needs ReviewPublic

Authored by landonf on Jan 20 2017, 9:08 PM.
Tags
None
Referenced Files
F166702357: D9266.id24250.diff
Sat, Aug 15, 6:23 PM
Unknown Object (File)
Tue, Aug 11, 11:31 PM
Unknown Object (File)
Tue, Aug 4, 4:28 AM
Unknown Object (File)
Mon, Aug 3, 7:24 AM
Unknown Object (File)
Jun 11 2026, 1:13 AM
Unknown Object (File)
Jun 1 2026, 5:20 PM
Unknown Object (File)
Jun 1 2026, 2:00 AM
Unknown Object (File)
May 30 2026, 4:45 AM
Subscribers
None

Details

Reviewers
adrian
Summary

Define max_align_t (using __max_align_t) in <sys/stddef.h>, add a common _MAX_ALIGN_T_DECLARED guard to <stddef.h> and <sys/stddef.h>

clang/gcc (<= 4.2) usage:

_Alignas(_Alignof(max_align_t))	uint8_t ivars[];

clang/gcc (>= 4.7) usage:

_Alignas(max_align_t)		uint8_t ivars[];
Test Plan
  • clang++ -std=c++11 -xc++ -c test.c
  • clang -std=c11 -c test.c
  • g++ -std=c++11 -xc++ -c test.c
  • gcc -std=c11 -c test.c

test.c:

#ifdef __cplusplus
#include <cstddef>
#else
#include <stddef.h>
#endif

struct foo {
    	_Alignas(_Alignof(max_align_t)) unsigned char ivars[32];
};

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 6912
Build 7100: arc lint + arc unit

Event Timeline

landonf retitled this revision from to Define max_align_t for in-kernel use.
landonf updated this object.
landonf edited the test plan for this revision. (Show Details)
landonf added a reviewer: adrian.
landonf edited the test plan for this revision. (Show Details)