This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: Binary compatibility loss regarding errno
On Mon, Dec 23, 2002 at 10:15:44AM -0800, Ulrich Drepper wrote:
> Daniel Jacobowitz wrote:
>
> > No, it IS silent. Feel free to try it yourself,
>
> I did:
>
>
> $ ~/u
> /home/drepper/u: relocation error: /home/drepper/u: symbol errno,
> version GLIBC_2.0 not defined in file libc.so.6 with link time reference
>
>
> I don't know what setup you are using but it works for me.
csu/Versions:
GLIBC_2.0 {
%if !(USE_TLS && HAVE___THREAD)
# global variables
_errno;
# variables in normal name space
errno;
%endif
}
GLIBC_PRIVATE {
%if USE_TLS && HAVE___THREAD
# This version is for the TLS symbol, GLIBC_2.0 is the old object symbol.
errno;
%endif
So if you don't turn on TLS you get an errno that silently breaks. If
we don't have TLS why can't we maintain compatibility?
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer