https://bugs.openldap.org/show_bug.cgi?id=9916
--- Comment #16 from Sam James sam@gentoo.org --- (In reply to Howard Chu from comment #15)
The C spec only requires that the alignment of a pointer match the object being referenced. The object being referenced here is a 2-byte integer. GCC is broken.
The GCC developers disagree: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107498#c9.