[patch ld]: Avoid duplicates in internal import/export element lists
NightStrike
nightstrike@gmail.com
Tue Apr 19 16:49:00 GMT 2011
On Wed, Apr 13, 2011 at 6:11 AM, Kai Tietz <ktietz70@googlemail.com> wrote:
> 2011/4/13 Kai Tietz <ktietz70@googlemail.com>:
>> Hello,
>>
>> by investigating for the issue about inlines in combination with
>> dllexport attribute I found
>> issues in ld's def-file handling of import and export list. This
>> attached patch might fix
>> also PR binutils/12658 issue.
>>
>> ChangeLog ld/
>>
>> 2011-04-13 Kai Tietz
>>
>> PR binutils/12658
>> * deffile.h (def_file_add_export): Add is_dup argument.
>> (def_file_add_import): Likewise.
>> * deffilep.y (are_names_equal): New helper.
>> (cmp_export_elem): New helper.
>> (find_export_in_list): Add search routine for exports.
>> (def_file_add_export): Check for duplicates.
>> (cmp_import_elem): New helper.
>> (find_import_in_list): Add search routine for imports.
>> (def_file_add_import): Check for duplicates.
>> (def_exports): Handle duplicates.
>> (def_imports): Likewise.
>> * pe-dll.c (process_def_file_and_drectve): Likewise.
>> (pe_implied_import_dll): Likewise.
>>
>> Tested for x86_64-w64-mingw32 and i686-w64-mingw32. Ok for apply?
>
> I noticed that for imports I wasn't sorting and checking for ordinals.
> The attached patch fixes that.
>
> Regards,
> Kai
>
Applied?
More information about the Binutils
mailing list