__builtin_offsetof
#define OFFSET_OF(TYPE, Field) ((UINTN) __builtin_offsetof(TYPE, Field))
IDENT_RESERVED(__builtin_offsetof);
[__builtin_offsetof(struct A, a[0])] = 0, // OK
[__builtin_offsetof(struct A, a[0*0])] = 0, // OK
[__builtin_offsetof(struct A, a[c])] = 0 // KO
[__builtin_offsetof(struct A, b)] = 0, // OK
#if __has_builtin(__builtin_offsetof) \
static int (__builtin_offsetof);
#define PATH1_NVM_OFFSET(f) (sizeof(nvm_image_t) + __builtin_offsetof(path1_nvm_image_t, f))
#define STRUCT_OFFSET(f) (STATIC_INIT_BASE + __builtin_offsetof(struct static_init, f))
#define offsetof(s, m) __builtin_offsetof(s, m)