http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55525
--- Comment #7 from rguenther at suse dot de <rguenther at suse dot de> 2013-01-07 14:55:31 UTC --- On Mon, 7 Jan 2013, ro at gcc dot gnu.org wrote: > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55525 > > Rainer Orth <ro at gcc dot gnu.org> changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > CC| |ro at gcc dot gnu.org > > --- Comment #6 from Rainer Orth <ro at gcc dot gnu.org> 2013-01-07 14:47:53 > UTC --- > Unfortunately, the testcase fails for 32-bit on Solaris with Sun ld: > > ld: fatal: symbol 's' has differing sizes: > (file c_lto_pr55525_0.o value=0x8; file c_lto_pr55525_1.o value=0x4); > tentative symbol cannot override defined symbol of smaller size > ld: fatal: file processing errors. No output written to > gcc-dg-lto-pr55525-01.ex > e > collect2: error: ld returned 1 exit status Does it work with replacing char s[8] with char s[sizeof (char *)]? If so, patch is ok. Richard.