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
Unknown Object (File)
Sun, Jul 6, 10:01 PM
Unknown Object (File)
Sat, Jul 5, 3:24 PM
Unknown Object (File)
Thu, Jul 3, 7:20 PM
Unknown Object (File)
Wed, Jun 25, 3:27 PM
Unknown Object (File)
Jun 9 2025, 10:40 PM
Unknown Object (File)
May 13 2025, 4:29 PM
Unknown Object (File)
May 6 2025, 6:31 PM
Unknown Object (File)
Mar 20 2025, 4:20 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)