use offsetof() instead of rolling our own
src/common/util.h
defines a STRUCT_OFFSET()
macro that effectively duplicates offsetof()
, which has been available in stddef.h
since C89. The non-GCC version of STRUCT_OFFSET()
does pointer arithmetic on null pointers, which is undefined behavior.
We should use the standard offsetof()
macro instead, unless there's some reason we still need to support platforms that lack it.