diff options
Diffstat (limited to 'misc/sys')
-rw-r--r-- | misc/sys/cdefs.h | 6 | ||||
-rw-r--r-- | misc/sys/select.h | 24 |
2 files changed, 20 insertions, 10 deletions
diff --git a/misc/sys/cdefs.h b/misc/sys/cdefs.h index 9960239688..a4535e3cac 100644 --- a/misc/sys/cdefs.h +++ b/misc/sys/cdefs.h @@ -163,4 +163,10 @@ # define __restrict /* Ignore */ #endif +/* ISO C99 also allows to declare arrays as non-overlapping. The syntax is + array_name[restrict] + But gcc so far does not support this syntax. We define a separate macro + for this which can be enabled if the underlying compiler supports it. */ +#define __restrict_arr + #endif /* sys/cdefs.h */ diff --git a/misc/sys/select.h b/misc/sys/select.h index 15130cbab3..ff5ba6b39f 100644 --- a/misc/sys/select.h +++ b/misc/sys/select.h @@ -1,5 +1,5 @@ /* `fd_set' type and related macros, and `select'/`pselect' declarations. - Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1996, 1997, 1998, 1999, 2000 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 @@ -71,12 +71,14 @@ typedef __fd_set fd_set; (if not NULL) for exceptional conditions. If TIMEOUT is not NULL, time out after waiting the interval specified therein. Returns the number of ready descriptors, or -1 for errors. */ -extern int __select (int __nfds, __fd_set *__readfds, - __fd_set *__writefds, __fd_set *__exceptfds, - struct timeval *__timeout) __THROW; -extern int select (int __nfds, __fd_set *__readfds, - __fd_set *__writefds, __fd_set *__exceptfds, - struct timeval *__timeout) __THROW; +extern int __select (int __nfds, __fd_set *__restrict __readfds, + __fd_set *__restrict __writefds, + __fd_set *__restrict __exceptfds, + struct timeval *__restrict __timeout) __THROW; +extern int select (int __nfds, __fd_set *__restrict __readfds, + __fd_set *__restrict __writefds, + __fd_set *__restrict __exceptfds, + struct timeval *__restrict __timeout) __THROW; #ifdef __USE_GNU /* XXX Once/if POSIX.1g gets official this prototype will be available @@ -84,9 +86,11 @@ extern int select (int __nfds, __fd_set *__readfds, /* Same as above only that the TIMEOUT value is given with higher resolution and a sigmask which is been set temporarily. This version should be used. */ -extern int pselect (int __nfds, __fd_set *__readfds, __fd_set *__writefds, - __fd_set *__exceptfds, const struct timespec *__timeout, - const __sigset_t *__sigmask) __THROW; +extern int pselect (int __nfds, __fd_set *__restrict __readfds, + __fd_set *__restrict __writefds, + __fd_set *__restrict __exceptfds, + const struct timespec *__restrict __timeout, + const __sigset_t *__restrict __sigmask) __THROW; #endif __END_DECLS |