structure packing is ignored when compiling with clang
The __attribute__ ((packed,gcc_struct))
syntax is not understood by clang. It emits this warning:
ifo_types.h:67:3: warning: unknown attribute 'gcc_struct' ignored [-Wunknown-attributes]
The __attribute__ ((packed))
syntax works, but depending on the target it might compile with GCC structure packing or MSVC structure packing.
Either both packing work and we just need to fallback to the old GCC syntax with Clang. Either only GCC packing should be used and we need to find a way to enforce it with clang on all platforms, and also make it known to library users. Incidentally that would mean the library can never be built with MSVC.