From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6050 invoked by alias); 15 Feb 2011 16:08:15 -0000 Received: (qmail 5971 invoked by uid 22791); 15 Feb 2011 16:08:14 -0000 X-SWARE-Spam-Status: No, hits=-1.1 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RFC_ABUSE_POST X-Spam-Check-By: sourceware.org Received: from mail-qw0-f41.google.com (HELO mail-qw0-f41.google.com) (209.85.216.41) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 15 Feb 2011 16:08:05 +0000 Received: by qwa26 with SMTP id 26so255259qwa.0 for ; Tue, 15 Feb 2011 08:08:03 -0800 (PST) MIME-Version: 1.0 Received: by 10.229.245.14 with SMTP id ls14mr4165538qcb.19.1297786083202; Tue, 15 Feb 2011 08:08:03 -0800 (PST) Received: by 10.229.214.131 with HTTP; Tue, 15 Feb 2011 08:08:03 -0800 (PST) In-Reply-To: <4D5AA1FB.2040905@gmail.com> References: <4D5AA1FB.2040905@gmail.com> Date: Tue, 15 Feb 2011 16:08:00 -0000 Message-ID: Subject: Re: [patch ld]: Testsuite fix of vers-script-3 and vers-script-4 tests From: Kai Tietz To: Dave Korn Cc: Binutils Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes Mailing-List: contact binutils-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sourceware.org X-SW-Source: 2011-02/txt/msg00169.txt.bz2 2011/2/15 Dave Korn : > 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 =A0Kai Tietz >> >> =A0 =A0 =A0 =A0 =A0 * pe-dll.c (process_def_file_and_drectve): Don't str= ip >> =A0 =A0 =A0 =A0 =A0 leading underscore from symbol by calling bfd_find_v= ersion_for_sym. >> >> Tested for x86_64-w64-mingw32, i686-pc-cygwin, and i686-w64-mingw32. >> Ok for apply? > > =A0Nope. =A0This causes two regressions on i686-pc-cygwin: > >> FAIL: vers-script-3 >> FAIL: vers-script-4 > > =A0They pass currently. =A0They fail with your patch. =A0I'm reasonably s= ure 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. > > =A0I don't understand why you want to remove the underscore stripping cod= e to > solve a problem on w64, where it should never be active in any case? > > =A0 =A0cheers, > =A0 =A0 =A0DaveK > > 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 * 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.