Add the sizeof_field() macro which returns the size of a struct field. This is used by Linux kernel code including ext4. Co-developed-by: Claude Opus 4.5 <noreply@anthropic.com> Signed-off-by: Simon Glass <simon.glass@canonical.com>
29 lines
553 B
C
29 lines
553 B
C
#ifndef _LINUX_STDDEF_H
|
|
#define _LINUX_STDDEF_H
|
|
|
|
#include <linux/compiler_types.h>
|
|
|
|
#undef NULL
|
|
#if defined(__cplusplus)
|
|
#define NULL 0
|
|
#else
|
|
#define NULL ((void *)0)
|
|
#endif
|
|
|
|
#ifndef _SIZE_T
|
|
#include <linux/types.h>
|
|
#endif
|
|
|
|
#undef offsetof
|
|
#define offsetof(TYPE, MEMBER) __builtin_offsetof(TYPE, MEMBER)
|
|
|
|
/**
|
|
* sizeof_field() - Report the size of a struct field in bytes
|
|
*
|
|
* @TYPE: The structure containing the field of interest
|
|
* @MEMBER: The field to return the size of
|
|
*/
|
|
#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
|
|
|
|
#endif
|