In libiberty/strerror.c(binutils,gdb), check program which tests
absense of sys_errlist returns
        "undefined reference to `sys_errlist'"
 So application undefines HAVE_SYS_ERRLIST or defines NEED_sys_errlist,
and defines application original symbol

        #ifndef HAVE_SYS_ERRLIST
        
        static int sys_nerr;
        static const char **sys_errlist;
        
        #else

 But they conflict with stdio.h declarations that

        #ifdef  __USE_BSD
        extern int sys_nerr;
        extern const char *const sys_errlist[];
        #endif

 Although to use of sys_errlist is deprecated, sys_errlist &
_sys_errlist symbols shuould define again for consistency...

--- glibc-2.0.106/sysdeps/mach/hurd/errlist.c~  Wed Jun  3 04:46:48 1998
+++ glibc-2.0.106/sysdeps/mach/hurd/errlist.c   Thu Dec 10 16:36:07 1998
@@ -30,3 +30,6 @@
 /* Oblige programs that use sys_nerr, but don't use sys_errlist. */
 weak_alias (_hurd_nerr, sys_nerr)
 weak_alias (_hurd_nerr, _sys_nerr)
+/* But... */
+weak_alias (_hurd_errlist,sys_errlist)
+weak_alias (_hurd_errlist,_sys_errlist)
---
UCHIYAMA Yasushi
[EMAIL PROTECTED] 

Reply via email to