public inbox for libc-hacker@sourceware.org
 help / color / mirror / Atom feed
* fix .../linux/errlist.c
@ 2002-05-19  9:38 Andreas Jaeger
  2002-05-19 12:18 ` Roland McGrath
  2002-05-19 23:41 ` Ulrich Drepper
  0 siblings, 2 replies; 6+ messages in thread
From: Andreas Jaeger @ 2002-05-19  9:38 UTC (permalink / raw)
  To: GNU libc hacker


With GCC 3.2 CVS I just got on i686-linux-gnu:

../sysdeps/unix/sysv/linux/errlist.c:41: weak declaration of `_old_sys_nerr' must precede definition

The appended patch fixed the problem.

Ok to commit?

Andreas

2002-05-19  Andreas Jaeger  <aj@suse.de>

	* sysdeps/unix/sysv/linux/errlist.c: Change order of aliases for
	_old_sys_nerr so that GCC gets them correct.


============================================================
Index: sysdeps/unix/sysv/linux/errlist.c
--- sysdeps/unix/sysv/linux/errlist.c	6 Jul 2001 04:56:12 -0000	1.8
+++ sysdeps/unix/sysv/linux/errlist.c	19 May 2002 16:36:01 -0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -37,8 +37,8 @@ extern const char *const *__old_sys_errl
 
 const int __old_sys_nerr = OLD_ERRLIST_SIZE;
 
-strong_alias (__old_sys_nerr, _old_sys_nerr);
 weak_alias (__old_sys_nerr, _old_sys_nerr)
+strong_alias (__old_sys_nerr, _old_sys_nerr);
 compat_symbol (libc, __old_sys_nerr, _sys_nerr, GLIBC_2_0);
 compat_symbol (libc, _old_sys_nerr, sys_nerr, GLIBC_2_0);
 weak_alias (__old_sys_errlist, _old_sys_errlist);

-- 
 Andreas Jaeger
  SuSE Labs aj@suse.de
   private aj@arthur.inka.de
    http://www.suse.de/~aj

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: fix .../linux/errlist.c
  2002-05-19  9:38 fix .../linux/errlist.c Andreas Jaeger
@ 2002-05-19 12:18 ` Roland McGrath
  2002-05-19 23:14   ` Andreas Jaeger
  2002-05-19 23:41 ` Ulrich Drepper
  1 sibling, 1 reply; 6+ messages in thread
From: Roland McGrath @ 2002-05-19 12:18 UTC (permalink / raw)
  To: Andreas Jaeger; +Cc: GNU libc hacker

There is a large number of this sort of error from versioned_symbol macro
invocations if you are compiling without GLIBC_2.0 ABI support (i.e. a new
platform or --enable-oldest-abi).

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: fix .../linux/errlist.c
  2002-05-19 12:18 ` Roland McGrath
@ 2002-05-19 23:14   ` Andreas Jaeger
  0 siblings, 0 replies; 6+ messages in thread
From: Andreas Jaeger @ 2002-05-19 23:14 UTC (permalink / raw)
  To: Roland McGrath; +Cc: GNU libc hacker

Roland McGrath <roland@frob.com> writes:

> There is a large number of this sort of error from versioned_symbol macro
> invocations if you are compiling without GLIBC_2.0 ABI support (i.e. a new
> platform or --enable-oldest-abi).

Are we going to fix this - and is my fix the right one?

I can spent today some time on testing this and submitting patches.
Should I commit them directly?

Andreas
-- 
 Andreas Jaeger
  SuSE Labs aj@suse.de
   private aj@arthur.inka.de
    http://www.suse.de/~aj

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: fix .../linux/errlist.c
  2002-05-19  9:38 fix .../linux/errlist.c Andreas Jaeger
  2002-05-19 12:18 ` Roland McGrath
@ 2002-05-19 23:41 ` Ulrich Drepper
  2002-05-19 23:47   ` Andreas Jaeger
  1 sibling, 1 reply; 6+ messages in thread
From: Ulrich Drepper @ 2002-05-19 23:41 UTC (permalink / raw)
  To: Andreas Jaeger; +Cc: GNU libc hacker

[-- Attachment #1: Type: text/plain, Size: 1841 bytes --]

On Sun, 2002-05-19 at 09:38, Andreas Jaeger wrote:
>ware; you can redistribute it and/or
> @@ -37,8 +37,8 @@ extern const char *const *__old_sys_errl
>  
>  const int __old_sys_nerr = OLD_ERRLIST_SIZE;
>  
> -strong_alias (__old_sys_nerr, _old_sys_nerr);
>  weak_alias (__old_sys_nerr, _old_sys_nerr)
> +strong_alias (__old_sys_nerr, _old_sys_nerr);

This doesn't look OK?  Why is there a weak and a strong alias for the
same pair of names?  Please test this patch:

Index: errlist.c
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/errlist.c,v
retrieving revision 1.8
diff -d -u -p -r1.8 errlist.c
--- errlist.c	6 Jul 2001 04:56:12 -0000	1.8
+++ errlist.c	20 May 2002 06:40:44 -0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -38,10 +38,9 @@ extern const char *const *__old_sys_errl
 const int __old_sys_nerr = OLD_ERRLIST_SIZE;
 
 strong_alias (__old_sys_nerr, _old_sys_nerr);
-weak_alias (__old_sys_nerr, _old_sys_nerr)
 compat_symbol (libc, __old_sys_nerr, _sys_nerr, GLIBC_2_0);
 compat_symbol (libc, _old_sys_nerr, sys_nerr, GLIBC_2_0);
-weak_alias (__old_sys_errlist, _old_sys_errlist);
+strong_alias (__old_sys_errlist, _old_sys_errlist);
 compat_symbol (libc, __old_sys_errlist, _sys_errlist, GLIBC_2_0);
 compat_symbol (libc, _old_sys_errlist, sys_errlist, GLIBC_2_0);
 #endif


-- 
---------------.                          ,-.   1325 Chesapeake Terrace
Ulrich Drepper  \    ,-------------------'   \  Sunnyvale, CA 94089 USA
Red Hat          `--' drepper at redhat.com   `------------------------

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 232 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: fix .../linux/errlist.c
  2002-05-19 23:41 ` Ulrich Drepper
@ 2002-05-19 23:47   ` Andreas Jaeger
  2002-05-19 23:55     ` Ulrich Drepper
  0 siblings, 1 reply; 6+ messages in thread
From: Andreas Jaeger @ 2002-05-19 23:47 UTC (permalink / raw)
  To: Ulrich Drepper; +Cc: GNU libc hacker

Ulrich Drepper <drepper@redhat.com> writes:

> On Sun, 2002-05-19 at 09:38, Andreas Jaeger wrote:
>>ware; you can redistribute it and/or
>> @@ -37,8 +37,8 @@ extern const char *const *__old_sys_errl
>>  
>>  const int __old_sys_nerr = OLD_ERRLIST_SIZE;
>>  
>> -strong_alias (__old_sys_nerr, _old_sys_nerr);
>>  weak_alias (__old_sys_nerr, _old_sys_nerr)
>> +strong_alias (__old_sys_nerr, _old_sys_nerr);
>
> This doesn't look OK?  Why is there a weak and a strong alias for the
> same pair of names?  Please test this patch:

I see.  Yes, that patch fixes the problem.  Can you commit it to both
branches?

Thanks,
Andreas

>
> Index: errlist.c
> ===================================================================
> RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/errlist.c,v
> retrieving revision 1.8
> diff -d -u -p -r1.8 errlist.c
> --- errlist.c	6 Jul 2001 04:56:12 -0000	1.8
> +++ errlist.c	20 May 2002 06:40:44 -0000
> @@ -1,4 +1,4 @@
> -/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
> +/* Copyright (C) 1998, 2000, 2002 Free Software Foundation, Inc.
>     This file is part of the GNU C Library.
>  
>     The GNU C Library is free software; you can redistribute it and/or
> @@ -38,10 +38,9 @@ extern const char *const *__old_sys_errl
>  const int __old_sys_nerr = OLD_ERRLIST_SIZE;
>  
>  strong_alias (__old_sys_nerr, _old_sys_nerr);
> -weak_alias (__old_sys_nerr, _old_sys_nerr)
>  compat_symbol (libc, __old_sys_nerr, _sys_nerr, GLIBC_2_0);
>  compat_symbol (libc, _old_sys_nerr, sys_nerr, GLIBC_2_0);
> -weak_alias (__old_sys_errlist, _old_sys_errlist);
> +strong_alias (__old_sys_errlist, _old_sys_errlist);
>  compat_symbol (libc, __old_sys_errlist, _sys_errlist, GLIBC_2_0);
>  compat_symbol (libc, _old_sys_errlist, sys_errlist, GLIBC_2_0);
>  #endif

-- 
 Andreas Jaeger
  SuSE Labs aj@suse.de
   private aj@arthur.inka.de
    http://www.suse.de/~aj

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: fix .../linux/errlist.c
  2002-05-19 23:47   ` Andreas Jaeger
@ 2002-05-19 23:55     ` Ulrich Drepper
  0 siblings, 0 replies; 6+ messages in thread
From: Ulrich Drepper @ 2002-05-19 23:55 UTC (permalink / raw)
  To: Andreas Jaeger; +Cc: GNU libc hacker

[-- Attachment #1: Type: text/plain, Size: 545 bytes --]

On Sun, 2002-05-19 at 23:44, Andreas Jaeger wrote:

> I see.  Yes, that patch fixes the problem.  Can you commit it to both
> branches?

I'll check it into the trunk.  The branch is really in deep-freeze.  For
a long time, already.  Only bug fixes (and non-code changes like
translations) should be checked in.

-- 
---------------.                          ,-.   1325 Chesapeake Terrace
Ulrich Drepper  \    ,-------------------'   \  Sunnyvale, CA 94089 USA
Red Hat          `--' drepper at redhat.com   `------------------------

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 232 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2002-05-20  6:55 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-05-19  9:38 fix .../linux/errlist.c Andreas Jaeger
2002-05-19 12:18 ` Roland McGrath
2002-05-19 23:14   ` Andreas Jaeger
2002-05-19 23:41 ` Ulrich Drepper
2002-05-19 23:47   ` Andreas Jaeger
2002-05-19 23:55     ` Ulrich Drepper

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).