https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102162
--- Comment #22 from Andrew Pinski <pinskia at gcc dot gnu.org> --- The problem is in emit-rtl.c in set_mem_attributes_minus_bitpos: /* We can set the alignment from the type if we are making an object or if this is an INDIRECT_REF. */ if (objectp || TREE_CODE (t) == INDIRECT_REF) attrs.align = MAX (attrs.align, TYPE_ALIGN (type)); The type here is not the correct thing to do.