https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71460
--- Comment #17 from rguenther at suse dot de <rguenther at suse dot de> --- On Thu, 9 Jun 2016, ubizjak at gmail dot com wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71460 > > --- Comment #13 from Uroš Bizjak <ubizjak at gmail dot com> --- > (In reply to Richard Biener from comment #7) > > > Oh - I hope TYPE_MODE does not affect the ABI here ;) You might want to > > double-check that (struct-layout tests plus call ABI) > The patch introduces one testsuite failure with -m32: > > FAIL: g++.dg/torture/pr67581.C > > where: > > /home/uros/gcc-svn/trunk/gcc/testsuite/g++.dg/torture/pr67581.C:2:7: error: > type transparent 'union U' cannot be made transparent because the type of the > first field has a different ABI from the class overall > > I don't know if this is c++ frontend issue, where BLKmode should be allowed. But this also hints at the ABI for void foo (union U { int x; float y; }); changing with the patch, no? Or ultimatively at the FE using a bogus check to verify ABI compatibility (just looking at TYPE_MODE).