This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: PR ld/13195: -ffunction-sections -Wl,--gc-sections failure with symbol versioning


On 09/29/2011 02:10 AM, Alan Modra wrote:
> On Wed, Sep 28, 2011 at 12:44:18PM -0700, H.J. Lu wrote:
>> bfd/
>>
>> 2011-09-28  H.J. Lu  <hongjiu.lu@intel.com>
>>
>> 	PR ld/13195
>> 	* elflink.c (_bfd_elf_merge_symbol): Don't set dynamic_def when
>> 	clearing def_dynamic.
>> 	(elf_link_add_object_symbols): Likewise.  Set dynamic_def when
>> 	setting def_dynamic.
>> 	(bfd_elf_gc_mark_dynamic_ref_symbol): Check if a symbol is
>> 	versioned.
>>
>> ld/testsuite/
>>
>> 2011-09-28  H.J. Lu  <hongjiu.lu@intel.com>
>>
>> 	PR ld/13195
>> 	* ld-elf/elf.exp: Add a C link testcase for PR ld/13195.
>>
>> 	* ld-elf/pr13195.c: New.
>> 	* ld-elf/pr13195.d: Likewise.
>> 	* ld-elf/pr13195.s: Likewise.
>> 	* ld-elf/pr13195.t: Likewise.
> 
> OK.
> 

please apply this on the 2.22 branch as well, the branch currently fails with:

$ cat test.c
int main() {}
$ gcc -Wl,--gc-sections test.c
/usr/bin/ld: a.out: local symbol `_dl_argv@@GLIBC_PRIVATE' in
/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 is referenced by DSO
/usr/bin/ld: final link failed: Bad value
collect2: ld returned 1 exit status


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]