https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116785
--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #5) > Note I think this code has undefined code in it. > > > > double sm0[max_DQ*max_DQ*max_DQ]; > double (*u)[max_D1D][max_D1D] = (double (*)[max_D1D][max_D1D]) sm0; > > That seems questionable. That looks good, we specifically mangle TBAA (in particular) to allow this.