aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-12-04 20:58:15 +0000
committerUlrich Drepper <drepper@redhat.com>1998-12-04 20:58:15 +0000
commita6ff34d7b0b59a1ad501dca25558ba21f6e539bb (patch)
treeeabe576c69bb878112d903d1e08836bab8c8aed1
parentfcb7e0a5f7722609d78739d8ef590fcfd2ed2109 (diff)
downloadglibc-a6ff34d7b0b59a1ad501dca25558ba21f6e539bb.tar.xz
glibc-a6ff34d7b0b59a1ad501dca25558ba21f6e539bb.zip
Update.
1998-12-04 Ulrich Drepper <drepper@cygnus.com> * argp/argp.h: Add __retrict. * dirent/dirent.h: Likewise. * elf/dlfcn.h: Likewise. * grp/grp.h: Likewise. * iconv/iconv.h: Likewise. * inet/aliases.h: Likewise. * libio/libio.h: Likewise. * libio/stdio.h: Likewise. * locale/locale.h: Likewise. * misc/mntent.h: Likewise. * posix/wordexp.h: Likewise. * pwd/pwd.h: Likewise. * resolv/netdb.h: Likewise. * rt/aio.h: Likewise. * stdio-common/printf.h: Likewise. * stdlib/monetary.h: Likewise. * stdlib/stdlib.h: Likewise. * string/argz.h: Likewise. * string/envz.h: Likewise. * string/string.h: Likewise. * time/time.h: Likewise. 1998-12-04 Zack Weinberg <zack@rabi.phys.columbia.edu> * misc/sys/cdefs.h: Only include features.h if _FEATURES_H isn't defined. gcc's redundant include optimizer isn't clever enough to prevent a reinclusion here. Define __restrict to the empty string only if not GCC or GCC version less than 2.92. 1998-12-03 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * sysdeps/unix/sysv/linux/configure.in: Fix last change. 1998-12-03 Mark Kettenis <kettenis@phys.uva.nl> * time/strptime.c (strptime_internal): Make use of `%C' format specifier if it is seen together with the `%y' specifier. 1998-12-04 Ulrich Drepper <drepper@cygnus.com> * po/sk.po: New file. 1998-12-03 Scott Bambrough <scottb@corelcomputer.com> * sysdeps/arm/dl-machine.h (dl_start_user): Incorrect address for _dl_main_searchlist passed to _dl_init_next. 1998-12-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * math/libm-test.c: Expand literal tabs in strings. Normalize whitespace. 1998-12-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * sysdeps/unix/sysv/linux/sys/fsuid.h: Fix spelling.
-rw-r--r--ChangeLog59
-rw-r--r--argp/argp.h67
-rw-r--r--dirent/dirent.h30
-rw-r--r--elf/dlfcn.h8
-rw-r--r--grp/grp.h29
-rw-r--r--iconv/iconv.h8
-rw-r--r--inet/aliases.h16
-rw-r--r--libio/libio.h6
-rw-r--r--libio/stdio.h32
-rw-r--r--linuxthreads/ChangeLog6
-rw-r--r--linuxthreads/pthread.c5
-rw-r--r--locale/locale.h6
-rw-r--r--math/libm-test.c1720
-rw-r--r--misc/mntent.h10
-rw-r--r--misc/sys/cdefs.h12
-rw-r--r--posix/wordexp.h4
-rw-r--r--pwd/pwd.h29
-rw-r--r--resolv/netdb.h263
-rw-r--r--rt/aio.h27
-rw-r--r--stdio-common/printf.h14
-rw-r--r--stdlib/monetary.h11
-rw-r--r--stdlib/stdlib.h76
-rw-r--r--string/argz.h110
-rw-r--r--string/envz.h30
-rw-r--r--string/string.h25
-rw-r--r--sysdeps/arm/dl-machine.h1
-rw-r--r--sysdeps/unix/sysv/linux/configure.in11
-rw-r--r--sysdeps/unix/sysv/linux/sys/fsuid.h2
-rw-r--r--time/strptime.c11
-rw-r--r--time/time.h21
30 files changed, 1440 insertions, 1209 deletions
diff --git a/ChangeLog b/ChangeLog
index 4b74bd47f1..ed302255b4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,62 @@
+1998-12-04 Ulrich Drepper <drepper@cygnus.com>
+
+ * argp/argp.h: Add __retrict.
+ * dirent/dirent.h: Likewise.
+ * elf/dlfcn.h: Likewise.
+ * grp/grp.h: Likewise.
+ * iconv/iconv.h: Likewise.
+ * inet/aliases.h: Likewise.
+ * libio/libio.h: Likewise.
+ * libio/stdio.h: Likewise.
+ * locale/locale.h: Likewise.
+ * misc/mntent.h: Likewise.
+ * posix/wordexp.h: Likewise.
+ * pwd/pwd.h: Likewise.
+ * resolv/netdb.h: Likewise.
+ * rt/aio.h: Likewise.
+ * stdio-common/printf.h: Likewise.
+ * stdlib/monetary.h: Likewise.
+ * stdlib/stdlib.h: Likewise.
+ * string/argz.h: Likewise.
+ * string/envz.h: Likewise.
+ * string/string.h: Likewise.
+ * time/time.h: Likewise.
+
+1998-12-04 Zack Weinberg <zack@rabi.phys.columbia.edu>
+
+ * misc/sys/cdefs.h: Only include features.h if _FEATURES_H isn't
+ defined. gcc's redundant include optimizer isn't clever enough to
+ prevent a reinclusion here.
+ Define __restrict to the empty string only if not GCC or
+ GCC version less than 2.92.
+
+1998-12-03 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * sysdeps/unix/sysv/linux/configure.in: Fix last change.
+
+1998-12-03 Mark Kettenis <kettenis@phys.uva.nl>
+
+ * time/strptime.c (strptime_internal): Make use of `%C' format
+ specifier if it is seen together with the `%y' specifier.
+
+1998-12-04 Ulrich Drepper <drepper@cygnus.com>
+
+ * po/sk.po: New file.
+
+1998-12-03 Scott Bambrough <scottb@corelcomputer.com>
+
+ * sysdeps/arm/dl-machine.h (dl_start_user): Incorrect address
+ for _dl_main_searchlist passed to _dl_init_next.
+
+1998-12-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * math/libm-test.c: Expand literal tabs in strings. Normalize
+ whitespace.
+
+1998-12-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * sysdeps/unix/sysv/linux/sys/fsuid.h: Fix spelling.
+
1998-12-04 Mark Kettenis <kettenis@phys.uva.nl>
Provide backwards binary compatibility for the Hurd.
diff --git a/argp/argp.h b/argp/argp.h
index cc35970afa..eb570f1653 100644
--- a/argp/argp.h
+++ b/argp/argp.h
@@ -388,12 +388,15 @@ struct argp_state
routine returned a non-zero value, it is returned; otherwise 0 is
returned. This function may also call exit unless the ARGP_NO_HELP flag
is set. INPUT is a pointer to a value to be passed in to the parser. */
-extern error_t argp_parse __P ((__const struct argp *__argp,
- int __argc, char **__argv, unsigned __flags,
- int *__arg_index, void *__input));
-extern error_t __argp_parse __P ((__const struct argp *__argp,
- int __argc, char **__argv, unsigned __flags,
- int *__arg_index, void *__input));
+extern error_t argp_parse __P ((__const struct argp *__restrict __argp,
+ int __argc, char **__restrict __argv,
+ unsigned __flags, int *__restrict __arg_index,
+ void *__restrict __input));
+extern error_t __argp_parse __P ((__const struct argp *__restrict __argp,
+ int __argc, char **__restrict __argv,
+ unsigned __flags,
+ int *__restrict __arg_index,
+ void *__restrict __input));
/* Global variables. */
@@ -408,8 +411,9 @@ extern __const char *argp_program_version;
calls this function with a stream to print the version to and a pointer to
the current parsing state, and then exits (unless the ARGP_NO_EXIT flag is
used). This variable takes precedent over ARGP_PROGRAM_VERSION. */
-extern void (*argp_program_version_hook) __PMT ((FILE *__stream,
- struct argp_state *__state));
+extern void (*argp_program_version_hook) __PMT ((FILE *__restrict __stream,
+ struct argp_state *__restrict
+ __state));
/* If defined or set by the user program, it should point to string that is
the bug-reporting address for the program. It will be printed by
@@ -454,10 +458,12 @@ extern error_t argp_err_exit_status;
/* Output a usage message for ARGP to STREAM. FLAGS are from the set
ARGP_HELP_*. */
-extern void argp_help __P ((__const struct argp *__argp, FILE *__stream,
- unsigned __flags, char *__name));
-extern void __argp_help __P ((__const struct argp *__argp, FILE *__stream,
- unsigned __flags, char *__name));
+extern void argp_help __P ((__const struct argp *__restrict __argp,
+ FILE *__restrict __stream,
+ unsigned __flags, char *__restrict __name));
+extern void __argp_help __P ((__const struct argp *__restrict __argp,
+ FILE *__restrict __stream, unsigned __flags,
+ char *__name));
/* The following routines are intended to be called from within an argp
parsing routine (thus taking an argp_state structure as the first
@@ -469,10 +475,14 @@ extern void __argp_help __P ((__const struct argp *__argp, FILE *__stream,
/* Output, if appropriate, a usage message for STATE to STREAM. FLAGS are
from the set ARGP_HELP_*. */
-extern void argp_state_help __P ((__const struct argp_state *__state,
- FILE *__stream, unsigned __flags));
-extern void __argp_state_help __P ((__const struct argp_state *__state,
- FILE *__stream, unsigned __flags));
+extern void argp_state_help __P ((__const struct argp_state *__restrict
+ __state,
+ FILE *__restrict __stream,
+ unsigned int __flags));
+extern void __argp_state_help __P ((__const struct argp_state *__restrict
+ __state,
+ FILE *__restrict __stream,
+ unsigned int __flags));
/* Possibly output the standard usage message for ARGP to stderr and exit. */
extern void argp_usage __P ((__const struct argp_state *__state));
@@ -481,11 +491,11 @@ extern void __argp_usage __P ((__const struct argp_state *__state));
/* If appropriate, print the printf string FMT and following args, preceded
by the program name and `:', to stderr, and followed by a `Try ... --help'
message, then exit (1). */
-extern void argp_error __P ((__const struct argp_state *__state,
- __const char *__fmt, ...))
+extern void argp_error __P ((__const struct argp_state *__restrict __state,
+ __const char *__restrict __fmt, ...))
__attribute__ ((__format__ (__printf__, 2, 3)));
-extern void __argp_error __P ((__const struct argp_state *__state,
- __const char *__fmt, ...))
+extern void __argp_error __P ((__const struct argp_state *__restrict __state,
+ __const char *__restrict __fmt, ...))
__attribute__ ((__format__ (__printf__, 2, 3)));
/* Similar to the standard gnu error-reporting function error(), but will
@@ -496,13 +506,13 @@ extern void __argp_error __P ((__const struct argp_state *__state,
difference between this function and argp_error is that the latter is for
*parsing errors*, and the former is for other problems that occur during
parsing but don't reflect a (syntactic) problem with the input. */
-extern void argp_failure __P ((__const struct argp_state *__state,
+extern void argp_failure __P ((__const struct argp_state *__restrict __state,
int __status, int __errnum,
- __const char *__fmt, ...))
+ __const char *__restrict __fmt, ...))
__attribute__ ((__format__ (__printf__, 4, 5)));
-extern void __argp_failure __P ((__const struct argp_state *__state,
+extern void __argp_failure __P ((__const struct argp_state *__restrict __state,
int __status, int __errnum,
- __const char *__fmt, ...))
+ __const char *__restrict __fmt, ...))
__attribute__ ((__format__ (__printf__, 4, 5)));
/* Returns true if the option OPT is a valid short option. */
@@ -516,10 +526,11 @@ extern int __option_is_end __P ((__const struct argp_option *__opt));
/* Return the input field for ARGP in the parser corresponding to STATE; used
by the help routines. */
-extern void *_argp_input __P ((__const struct argp *argp,
- __const struct argp_state *state));
-extern void *__argp_input __P ((__const struct argp *argp,
- __const struct argp_state *state));
+extern void *_argp_input __P ((__const struct argp *__restrict __argp,
+ __const struct argp_state *__restrict __state));
+extern void *__argp_input __P ((__const struct argp *__restrict __argp,
+ __const struct argp_state *__restrict
+ __state));
#ifdef __USE_EXTERN_INLINES
diff --git a/dirent/dirent.h b/dirent/dirent.h
index e286498f06..375d66ef30 100644
--- a/dirent/dirent.h
+++ b/dirent/dirent.h
@@ -143,12 +143,14 @@ extern struct dirent64 *readdir64 __P ((DIR *__dirp));
/* Reentrant version of `readdir'. Return in RESULT a pointer to the
next entry. */
# ifndef __USE_FILE_OFFSET64
-extern int readdir_r __P ((DIR *__dirp, struct dirent *__entry,
- struct dirent **__result));
+extern int readdir_r __P ((DIR *__restrict __dirp,
+ struct dirent *__restrict __entry,
+ struct dirent **__restrict __result));
# else
# ifdef __REDIRECT
-extern int __REDIRECT (readdir_r, __P ((DIR *__dirp, struct dirent *__entry,
- struct dirent **__result)),
+extern int __REDIRECT (readdir_r, __P ((DIR *__restrict __dirp,
+ struct dirent *__restrict __entry,
+ struct dirent **__restrict __result)),
readdir64_r);
# else
# define readdir_r readdir64_r
@@ -156,8 +158,9 @@ extern int __REDIRECT (readdir_r, __P ((DIR *__dirp, struct dirent *__entry,
# endif
# ifdef __USE_LARGEFILE64
-extern int readdir64_r __P ((DIR *__dirp, struct dirent64 *__entry,
- struct dirent64 **__result));
+extern int readdir64_r __P ((DIR *__restrict __dirp,
+ struct dirent64 *__restrict __entry,
+ struct dirent64 **__restrict __result));
# endif
#endif /* POSIX or misc */
@@ -203,14 +206,15 @@ extern int dirfd __P ((DIR *__dirp));
sorted using qsort with CMP, and collected in a malloc'd array in
*NAMELIST. Returns the number of entries selected, or -1 on error. */
# ifndef __USE_FILE_OFFSET64
-extern int scandir __P ((__const char *__dir, struct dirent ***__namelist,
+extern int scandir __P ((__const char *__restrict __dir,
+ struct dirent ***__restrict __namelist,
int (*__selector) (__const struct dirent *),
int (*__cmp) (__const __ptr_t, __const __ptr_t)));
# else
# ifdef __REDIRECT
extern int __REDIRECT (scandir,
- __P ((__const char *__dir,
- struct dirent ***__namelist,
+ __P ((__const char *__restrict __dir,
+ struct dirent ***__restrict __namelist,
int (*__selector) (__const struct dirent *),
int (*__cmp) (__const __ptr_t, __const __ptr_t))),
scandir64);
@@ -222,7 +226,8 @@ extern int __REDIRECT (scandir,
# if defined __USE_GNU && defined __USE_LARGEFILE64
/* This function is like `scandir' but it uses the 64bit dirent structure.
Please note that the CMP function must now work with struct dirent64 **. */
-extern int scandir64 __P ((__const char *__dir, struct dirent64 ***__namelist,
+extern int scandir64 __P ((__const char *__restrict __dir,
+ struct dirent64 ***__restrict __namelist,
int (*__selector) (__const struct dirent64 *),
int (*__cmp) (__const __ptr_t, __const __ptr_t)));
# endif
@@ -267,8 +272,9 @@ extern int versionsort64 __P ((__const __ptr_t __e1, __const __ptr_t __e2));
Reading starts at offset *BASEP, and *BASEP is updated with the new
position after reading. Returns the number of bytes read; zero when at
end of directory; or -1 for errors. */
-extern __ssize_t getdirentries __P ((int __fd, char *__buf,
- size_t __nbytes, __off_t *__basep));
+extern __ssize_t getdirentries __P ((int __fd, char *__restrict __buf,
+ size_t __nbytes,
+ __off_t *__restrict __basep));
#endif /* Use BSD or misc. */
diff --git a/elf/dlfcn.h b/elf/dlfcn.h
index d2a27b85a2..80fd656d16 100644
--- a/elf/dlfcn.h
+++ b/elf/dlfcn.h
@@ -50,13 +50,15 @@ extern int dlclose __P ((void *__handle));
/* Find the run-time address in the shared object HANDLE refers to
of the symbol called NAME. */
-extern void *dlsym __P ((void *__handle, __const char *__name));
+extern void *dlsym __P ((void *__restrict __handle,
+ __const char *__restrict __name));
#ifdef __USE_GNU
/* Find the run-time address in the shared object HANDLE refers to
of the symbol called NAME with VERSION. */
-extern void *dlvsym __P ((void *__handle, __const char *__name,
- __const char *__version));
+extern void *dlvsym __P ((void *__restrict __handle,
+ __const char *__restrict __name,
+ __const char *__restrict __version));
#endif
/* When any of the above functions fails, call this function
diff --git a/grp/grp.h b/grp/grp.h
index 9b71df8eb7..45cb6de664 100644
--- a/grp/grp.h
+++ b/grp/grp.h
@@ -73,7 +73,8 @@ extern struct group *fgetgrent __P ((FILE *__stream));
#ifdef __USE_GNU
/* Write the given entry onto the given stream. */
-extern int putgrent __P ((__const struct group *__p, FILE *__f));
+extern int putgrent __P ((__const struct group *__restrict __p,
+ FILE *__restrict __f));
#endif
/* Search for an entry with a matching group ID. */
@@ -99,26 +100,30 @@ extern struct group *getgrnam __P ((__const char *__name));
POSIX people would choose. */
# if defined __USE_SVID || defined __USE_BSD || defined __USE_XOPEN_EXTENDED
-extern int getgrent_r __P ((struct group *__resultbuf, char *__buffer,
- size_t __buflen, struct group **__result));
+extern int getgrent_r __P ((struct group *__restrict __resultbuf,
+ char *__restrict __buffer, size_t __buflen,
+ struct group **__restrict __result));
# endif
/* Search for an entry with a matching group ID. */
-extern int getgrgid_r __P ((__gid_t __gid, struct group *__resultbuf,
- char *__buffer, size_t __buflen,
- struct group **__result));
+extern int getgrgid_r __P ((__gid_t __gid,
+ struct group *__restrict __resultbuf,
+ char *__restrict __buffer, size_t __buflen,
+ struct group **__restrict __result));
/* Search for an entry with a matching group name. */
-extern int getgrnam_r __P ((__const char *__name, struct group *__resultbuf,
- char *__buffer, size_t __buflen,
- struct group **__result));
+extern int getgrnam_r __P ((__const char *__restrict __name,
+ struct group *__restrict __resultbuf,
+ char *__restrict __buffer, size_t __buflen,
+ struct group **__restrict __result));
# ifdef __USE_SVID
/* Read a group entry from STREAM. This function is not standardized
an probably never will. */
-extern int fgetgrent_r __P ((FILE * __stream, struct group *__resultbuf,
- char *__buffer, size_t __buflen,
- struct group **__result));
+extern int fgetgrent_r __P ((FILE *__restrict __stream,
+ struct group *__restrict __resultbuf,
+ char *__restrict __buffer, size_t __buflen,
+ struct group **__restrict __result));
# endif
#endif /* POSIX or reentrant */
diff --git a/iconv/iconv.h b/iconv/iconv.h
index ceb120d4f3..dac885bec8 100644
--- a/iconv/iconv.h
+++ b/iconv/iconv.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998 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
@@ -39,8 +39,10 @@ extern iconv_t iconv_open __P ((__const char *__tocode,
code conversion algorithm specified by CD and place up to
*OUTBYTESLEFT bytes in buffer at *OUTBUF. */
extern size_t iconv __P ((iconv_t cd,
- __const char **__inbuf, size_t *__inbytesleft,
- char **__outbuf, size_t *__outbytesleft));
+ __const char **__restrict __inbuf,
+ size_t *__restrict __inbytesleft,
+ char **__restrict __outbuf,
+ size_t *__restrict __outbytesleft));
/* Free resources allocated for descriptor CD for code conversion. */
extern int iconv_close __P ((iconv_t __cd));
diff --git a/inet/aliases.h b/inet/aliases.h
index c6e829007e..8c47fe50c6 100644
--- a/inet/aliases.h
+++ b/inet/aliases.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 1998 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
@@ -46,17 +46,19 @@ extern void endaliasent __P ((void));
extern struct aliasent *getaliasent __P ((void));
/* Get the next entry from the alias data base and put it in RESULT_BUF. */
-extern int getaliasent_r __P ((struct aliasent *__result_buf, char *__buffer,
- size_t __buflen, struct aliasent **__result));
+extern int getaliasent_r __P ((struct aliasent *__restrict __result_buf,
+ char *__restrict __buffer,
+ size_t __buflen,
+ struct aliasent **__restrict __result));
/* Get alias entry corresponding to NAME. */
extern struct aliasent *getaliasbyname __P ((__const char *__name));