This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: Avoid link error with Solaris ld and local COMDAT group signature symbols (PR gas/12181)
- From: Mark Mitchell <mark at codesourcery dot com>
- To: Rainer Orth <ro at CeBiTec dot Uni-Bielefeld dot DE>
- Cc: binutils at sourceware dot org
- Date: Wed, 10 Nov 2010 18:03:25 -0800
- Subject: Re: Avoid link error with Solaris ld and local COMDAT group signature symbols (PR gas/12181)
- References: <yddk4klfilu.fsf@manam.CeBiTec.Uni-Bielefeld.DE>
On 11/10/2010 4:50 AM, Rainer Orth wrote:
> 2010-10-23 Mark Mitchell <mark@codesourcery.com>
> broke GCC mainline bootstrap on Solaris 11 with CVS gas and Sun ld.
I've been insanely busy for the last couple of weeks, so I haven't been
paying as close attention as I should have been. I'm very sorry.
> While the Solaris linker maintainers are willing to change ld,
> unfortunately nobody cared to comment on their analysis in the PR.
> Could someone (Mark?) please to so to get some progress on the Sun ld
> side of things?
I've now commented in the PR.
> - symbol_get_obj (sy)->local = 1;
> + symbol_get_bfdsym (sy)->flags |= BSF_OBJECT | BSF_GLOBAL;
> + S_SET_OTHER (sy, STV_HIDDEN);
FWIW, this seems like a hack to me. I think the symbol really should be
local; why expose it to other systems? If we want to do this for
Solaris ld compatibility (which I agree is a valid reason), I think we
should do conditionally on Solaris.
Thank you,
--
Mark Mitchell
CodeSourcery
mark@codesourcery.com
(650) 331-3385 x713