--- Comment #79 from rguenther at suse dot de <rguenther at suse dot de> ---
On Thu, 12 Apr 2018, ro at CeBiTec dot Uni-Bielefeld.DE wrote:
> --- Comment #77 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot
> Uni-Bielefeld.DE> ---
> > --- Comment #62 from Richard Biener <rguenth at gcc dot gnu.org> ---
> > Waiting for Solaris engineer input... (or a machine to be able to debug
> > this
> > directly - is there one on the CF?).
> We're finally getting to the bottom of this:
> * The original analysis of the objects rewritten by lto-wrapper and
> passed to ld -r (which cause the relocation error) pointed out that
> they were in violation of the ELF gABI access rules for COMDAT
> (the first bullet point).
> * However, while checking the input objects passed to lto-wrapper, I
> determined they have the same problem, but don't trigger the error.
> * It turned out that this happened because Solaris ld has heuristics to
> implicitly relax that check for gcc objects, as can be done explicitly
> with -z relax=comdat/-z relaxreloc. It checks for a .comment section
> containing the string "GCC: (GNU)". However, unlike the input
> objects, that section isn't copied by simple_object_copy_lto_debug_sections.
> Since trying to fix the initial issue is out of scope for GCC 8, there
> are two possible fixes:
> * Just copy the .comment section as well. Turns out to be trivial, and
> the attached patch does just that.
Sounds good - I suppose identical .comment sections are merged in the