https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65709
--- Comment #3 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- BTW clang's output is more informative: test.c:285:29: runtime error: load of misaligned address 0x7fe669eee001 for type 'U64' (aka 'unsigned long'), which requires 8 byte alignment 0x7fe669eee001: note: pointer points here <memory cannot be printed> test.c:200:16: runtime error: load of misaligned address 0x7fe669eee009 for type 'U16' (aka 'unsigned short'), which requires 2 byte alignment 0x7fe669eee009: note: pointer points here 01 02 01 00 01 00 f1 04 02 00 02 00 00 00 01 00 01 0b 98 00 00 00 34 00 00 91 50 1c 00 f1 00 34 ^ test.c:285:13: runtime error: store to misaligned address 0x000002020021 for type 'U64' (aka 'unsigned long'), which requires 8 byte alignment 0x000002020021: note: pointer points here 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ^ test.c:273:25: runtime error: load of misaligned address 0x000002020052 for type 'U32' (aka 'unsigned int'), which requires 4 byte alignment 0x000002020052: note: pointer points here 00 34 00 00 00 00 00 00 04 00 11 05 00 20 00 05 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ^ test.c:273:9: runtime error: store to misaligned address 0x000002020056 for type 'U32' (aka 'unsigned int'), which requires 4 byte alignment 0x000002020056: note: pointer points here 00 00 00 00 04 00 11 05 00 20 00 05 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ^ e.g. "type 'const void'" vs. "type 'U32' (aka 'unsigned int')"