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 ld]: Testsuite fix of vers-script-3 and vers-script-4 tests


2011/2/15 Dave Korn <dave.korn.cygwin@gmail.com>:
> On 15/02/2011 15:30, Kai Tietz wrote:
>
>> Ok, I withdraw recent patch. It is just fixing the symptoms but not
>> the underlying issue.
>> For 32-bit COFF the real issue is in pe-dll.c file in function
>> process_def_file_and_drectve. Here the underscore of a symbol is
>> stripped, and the same time it is done in bfd_demangle, which is used
>> by bfd_find_version_for_sym. By this in 32-bit case with leading
>> underscores, they were stripped twice.
>>
>> ChangeLog
>>
>> 2011-02-15 ?Kai Tietz
>>
>> ? ? ? ? ? * pe-dll.c (process_def_file_and_drectve): Don't strip
>> ? ? ? ? ? leading underscore from symbol by calling bfd_find_version_for_sym.
>>
>> Tested for x86_64-w64-mingw32, i686-pc-cygwin, and i686-w64-mingw32.
>> Ok for apply?
>
> ?Nope. ?This causes two regressions on i686-pc-cygwin:
>
>> FAIL: vers-script-3
>> FAIL: vers-script-4
>
> ?They pass currently. ?They fail with your patch. ?I'm reasonably sure that I
> only added that underscore-stripping code when I discovered it to be
> necessary, but I may not have tested it on a non-prefixing host.
>
> ?I don't understand why you want to remove the underscore stripping code to
> solve a problem on w64, where it should never be active in any case?
>
> ? ?cheers,
> ? ? ?DaveK
>
>

Well, for none-underscored code I see no regressions. I see it for
32-bit mingw and cygwin. Have you updated your tree? I assume it is
related to some indirect changes.

For me the vers-script-3 and vers-script-4 tests in pe-ld are failing
at the moment in an unpatched variant.

Kai

PS: See
2011-02-14  Mike Frysinger  <vapier@gentoo.org>

        * ldlang.c (lang_vers_match): Declare a new c_sym, assign it to
        the bfd_demangle of sym, change users of sym to c_sym when not
        already demangling, and free when done.  Change callers of
        cplus_demangle to bfd_demangle.

This could be the culprit here.


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