diff options
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | bits/sys_errlist.h | 24 | ||||
-rw-r--r-- | libio/Makefile | 5 | ||||
-rw-r--r-- | libio/stdio.h | 18 | ||||
-rw-r--r-- | sysdeps/generic/bits/sys_errlist.h | 24 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/bits/sys_errlist.h | 33 |
6 files changed, 100 insertions, 14 deletions
@@ -1,3 +1,13 @@ +2002-07-31 Jeff Bailey <jbailey@gnu.org> + + * libio/stdio.h (sys_errlist, sys_nerr, _sys_errlist, _sys_nerr): + Declarations moved to <bits/sys_errlist.h>. Include that file. + * libio/Makefile (headers): Add bits/sys_errlist.h to the list. + * sysdeps/generic/bits/sys_errlist.h: New file. This does *not* + declare sys_errlist and sys_nerr. + * sysdeps/unix/sysv/linux/bits/sys_errlist.h: New file. Does + provide declarations. + 2002-07-31 Roland McGrath <roland@frob.com> * elf/rtld.c (dl_main): Fix typo in error message. diff --git a/bits/sys_errlist.h b/bits/sys_errlist.h new file mode 100644 index 0000000000..ab839b7073 --- /dev/null +++ b/bits/sys_errlist.h @@ -0,0 +1,24 @@ +/* Declare sys_errlist and sys_nerr, or don't. Don't version. + Copyright (C) 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 + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#ifndef _STDIO_H +# error "Never include <bits/sys_errlist.h> directly; use <stdio.h> instead." +#endif + +/* sys_errlist and sys_nerr are deprecated. Use strerror instead. */ diff --git a/libio/Makefile b/libio/Makefile index 132634608f..f5e69e3e14 100644 --- a/libio/Makefile +++ b/libio/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 1995,96,97,98,99,2000,2001,2002 Free Software Foundation, Inc. +# Copyright (C) 1995,96,97,98,99,2000,01,02 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 @@ -21,7 +21,8 @@ # subdir := libio -headers := stdio.h libio.h _G_config.h bits/stdio.h bits/stdio-lock.h +headers := stdio.h libio.h _G_config.h bits/stdio.h bits/stdio-lock.h \ + bits/sys_errlist.h routines := \ filedoalloc iofclose iofdopen iofflush iofgetpos iofgets iofopen \ diff --git a/libio/stdio.h b/libio/stdio.h index bcdf64d72e..10bd6e5e88 100644 --- a/libio/stdio.h +++ b/libio/stdio.h @@ -1,6 +1,5 @@ /* Define ISO C stdio on top of C++ iostreams. - Copyright (C) 1991, 1994-1999, 2000, 2001, 2002 - Free Software Foundation, Inc. + Copyright (C) 1991,1994-1999,2000,01,02 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 @@ -546,16 +545,11 @@ extern int ferror_unlocked (FILE *__stream) __THROW; /* Print a message describing the meaning of the value of errno. */ extern void perror (__const char *__s) __THROW; -/* These variables normally should not be used directly. The `strerror' - function provides all the needed functionality. */ -#ifdef __USE_BSD -extern int sys_nerr; -extern __const char *__const sys_errlist[]; -#endif -#ifdef __USE_GNU -extern int _sys_nerr; -extern __const char *__const _sys_errlist[]; -#endif +/* Provide the declarations for `sys_errlist' and `sys_nerr' if they + are available on this system. Even if available, these variables + should not be used directly. The `strerror' function provides + all the necessary functionality. */ +#include <bits/sys_errlist.h> #ifdef __USE_POSIX diff --git a/sysdeps/generic/bits/sys_errlist.h b/sysdeps/generic/bits/sys_errlist.h new file mode 100644 index 0000000000..ab839b7073 --- /dev/null +++ b/sysdeps/generic/bits/sys_errlist.h @@ -0,0 +1,24 @@ +/* Declare sys_errlist and sys_nerr, or don't. Don't version. + Copyright (C) 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 + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#ifndef _STDIO_H +# error "Never include <bits/sys_errlist.h> directly; use <stdio.h> instead." +#endif + +/* sys_errlist and sys_nerr are deprecated. Use strerror instead. */ diff --git a/sysdeps/unix/sysv/linux/bits/sys_errlist.h b/sysdeps/unix/sysv/linux/bits/sys_errlist.h new file mode 100644 index 0000000000..ee556e8ec7 --- /dev/null +++ b/sysdeps/unix/sysv/linux/bits/sys_errlist.h @@ -0,0 +1,33 @@ +/* Declare sys_errlist and sys_nerr, or don't. Compatibility (do) version. + Copyright (C) 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 + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#ifndef _STDIO_H +# error "Never include <bits/sys_errlist.h> directly; use <stdio.h> instead." +#endif + +/* sys_errlist and sys_nerr are deprecated. Use strerror instead. */ + +#ifdef __USE_BSD +extern int sys_nerr; +extern __const char *__const sys_errlist[]; +#endif +#ifdef __USE_GNU +extern int _sys_nerr; +extern __const char *__const _sys_errlist[]; +#endif |