From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12850 invoked by alias); 10 Jan 2005 06:11:09 -0000 Mailing-List: contact libc-hacker-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-hacker-owner@sources.redhat.com Received: (qmail 12833 invoked from network); 10 Jan 2005 06:11:09 -0000 Received: from unknown (HELO Cantor.suse.de) (195.135.220.2) by sourceware.org with SMTP; 10 Jan 2005 06:11:09 -0000 Received: from hermes.suse.de (hermes-ext.suse.de [195.135.221.8]) (using TLSv1 with cipher EDH-RSA-DES-CBC3-SHA (168/168 bits)) (No client certificate requested) by Cantor.suse.de (Postfix) with ESMTP id DF25A12EDFE7; Mon, 10 Jan 2005 07:11:03 +0100 (CET) Received: from aj by arthur.inka.de with local (Exim 4.42) id 1CnslT-0000QO-Q9; Mon, 10 Jan 2005 07:10:55 +0100 From: Andreas Jaeger To: Richard Henderson Cc: Glibc hackers Subject: Re: Aliases ... References: <20050109232721.GA23478@redhat.com> Date: Mon, 10 Jan 2005 06:11:00 -0000 In-Reply-To: <20050109232721.GA23478@redhat.com> (Richard Henderson's message of "Sun, 9 Jan 2005 15:27:21 -0800") Message-ID: User-Agent: Gnus/5.110003 (No Gnus v0.3) XEmacs/21.4 (Security Through Obscurity, linux) MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" X-SW-Source: 2005-01/txt/msg00018.txt.bz2 --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Content-length: 2491 Richard Henderson writes: > On Sun, Jan 09, 2005 at 10:00:25PM +0100, Andreas Jaeger wrote: >> One testcase is:=20 >> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=20 >> int errno;=20 >> extern int __libc_errno __attribute__ ((alias ("errno")));=20 >> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ... >> So, what shall we do with glibc? > > For this case, either initialize the variable, or use -fno-common. > >> Btw. I get this warning also for: >> wcsftime_l.c:26: warning: =E2=80=98wcsftime_l=E2=80=99 aliased to undefi= ned symbol =E2=80=98__wcsftime_l=E2=80=99 >> ../nss/getXXent_r.c:203: warning: =E2=80=98getgrent_r=E2=80=99 aliased t= o undefined symbol =E2=80=98__new_getgrent_r=E2=80=99 >> ../sysdeps/posix/pathconf.c:237: warning: =E2=80=98pathconf=E2=80=99 ali= ased to undefined symbol=E2=80=98__pathconf=E2=80=99 >> ../sysdeps/posix/fpathconf.c:241: warning: =E2=80=98fpathconf=E2=80=99 a= liased to undefined symbol =E2=80=98__fpathconf=E2=80=99 >>=20 > > But these are functions, not variables, so this must be a different > problem. You can re-open the same bug with these different test cases, > or create a new one, as you choose. I guess this warning is valid, I get: t.c:17: warning: =E2=80=98passwd2des=E2=80=99 aliased to undefined symbol = =E2=80=98passwd2des_internal=E2=80=99 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ void passwd2des_internal (char *pw, char *key); extern __typeof (passwd2des_internal) __GI_passwd2des_internal; extern __typeof (passwd2des_internal) passwd2des_internal __asm__ ("" "__GI= _passwd2des_internal") __attribute__ ((visibility ("hidden"))); void passwd2des_internal (char *pw, char *key) { int i; for (i =3D 0; *pw && i < 8; ++i) key[i] ^=3D *pw++ << 1; } __asm__ (".globl passwd2des_internal ; .set passwd2des_internal, __GI_passw= d2des_internal"); extern __typeof (passwd2des_internal) passwd2des __attribute__ ((alias ("pa= sswd2des_internal"))); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Changing the last line to: extern __typeof (passwd2des_internal) passwd2des __attribute__ ((alias ("__= GI_passwd2des_internal"))); removes the warning, so I guess we need to fix this in glibc :-( Andreas --=20 Andreas Jaeger, aj@suse.de, http://www.suse.de/~aj SUSE Linux Products GmbH, Maxfeldstr. 5, 90409 N=C3=BCrnberg, Germany GPG fingerprint =3D 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126 --=-=-= Content-Type: application/pgp-signature Content-length: 188 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (GNU/Linux) iD8DBQBB4hxvOJpWPMJyoSYRAqmeAJ43bvODX1z/9LJoB2xx6uCkUwWsXgCfVVmA xxTqIccvIwsCAIZXIYJem4E= =lnZR -----END PGP SIGNATURE----- --=-=-=--