use restrict everywhere it's required by c99 and/or posix 2008

to deal with the fact that the public headers may be used with pre-c99
compilers, __restrict is used in place of restrict, and defined
appropriately for any supported compiler. we also avoid the form
[restrict] since older versions of gcc rejected it due to a bug in the
original c99 standard, and instead use the form *restrict.
This commit is contained in:
Rich Felker
2012-09-06 22:44:55 -04:00
parent bac03cdde1
commit 400c5e5c83
192 changed files with 552 additions and 382 deletions

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#include <signal.h> #include <signal.h>
#include <time.h> #include <time.h>
@ -46,7 +52,7 @@ int aio_cancel(int, struct aiocb *);
int aio_suspend(const struct aiocb *const [], int, const struct timespec *); int aio_suspend(const struct aiocb *const [], int, const struct timespec *);
int aio_fsync(int, struct aiocb *); int aio_fsync(int, struct aiocb *);
int lio_listio(int, struct aiocb *const [], int, struct sigevent *); int lio_listio(int, struct aiocb *__restrict const *__restrict, int, struct sigevent *__restrict);
#if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE) #if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE)
#define aiocb64 aiocb #define aiocb64 aiocb

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#include <netinet/in.h> #include <netinet/in.h>
#include <inttypes.h> #include <inttypes.h>
@ -24,8 +30,8 @@ uint16_t ntohs(uint16_t);
in_addr_t inet_addr (const char *); in_addr_t inet_addr (const char *);
char *inet_ntoa (struct in_addr); char *inet_ntoa (struct in_addr);
int inet_pton (int, const char *, void *); int inet_pton (int, const char *__restrict, void *__restrict);
const char *inet_ntop (int, const void *, char *, socklen_t); const char *inet_ntop (int, const void *__restrict, char *__restrict, socklen_t);
int inet_aton (const char *, struct in_addr *); /* nonstandard but widely used */ int inet_aton (const char *, struct in_addr *); /* nonstandard but widely used */

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_ino_t #define __NEED_ino_t
#define __NEED_off_t #define __NEED_off_t
#ifdef _BSD_SOURCE #ifdef _BSD_SOURCE
@ -30,7 +36,7 @@ int closedir(DIR *);
DIR *fdopendir(int); DIR *fdopendir(int);
DIR *opendir(const char *); DIR *opendir(const char *);
struct dirent *readdir(DIR *); struct dirent *readdir(DIR *);
int readdir_r(DIR *, struct dirent *, struct dirent **); int readdir_r(DIR *__restrict, struct dirent *__restrict, struct dirent **__restrict);
void rewinddir(DIR *); void rewinddir(DIR *);
void seekdir(DIR *, long); void seekdir(DIR *, long);
long telldir(DIR *); long telldir(DIR *);

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define RTLD_LAZY 1 #define RTLD_LAZY 1
#define RTLD_NOW 2 #define RTLD_NOW 2
#define RTLD_GLOBAL 256 #define RTLD_GLOBAL 256
@ -16,7 +22,7 @@ extern "C" {
int dlclose(void *); int dlclose(void *);
char *dlerror(void); char *dlerror(void);
void *dlopen(const char *, int); void *dlopen(const char *, int);
void *dlsym(void *, const char *); void *dlsym(void *__restrict, const char *__restrict);
#ifdef _GNU_SOURCE #ifdef _GNU_SOURCE
typedef struct { typedef struct {

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_size_t #define __NEED_size_t
#include <bits/alltypes.h> #include <bits/alltypes.h>
@ -17,7 +23,7 @@ typedef struct {
void *__dummy2[5]; void *__dummy2[5];
} glob_t; } glob_t;
int glob(const char *, int, int (*)(const char *, int), glob_t *); int glob(const char *__restrict, int, int (*)(const char *, int), glob_t *__restrict);
void globfree(glob_t *); void globfree(glob_t *);
#define GLOB_ERR 0x01 #define GLOB_ERR 0x01

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_size_t #define __NEED_size_t
#include <bits/alltypes.h> #include <bits/alltypes.h>
@ -12,7 +18,7 @@ extern "C" {
typedef void *iconv_t; typedef void *iconv_t;
iconv_t iconv_open(const char *, const char *); iconv_t iconv_open(const char *, const char *);
size_t iconv(iconv_t, char **, size_t *, char **, size_t *); size_t iconv(iconv_t, char **__restrict, size_t *__restrict, char **__restrict, size_t *__restrict);
int iconv_close(iconv_t); int iconv_close(iconv_t);
#ifdef __cplusplus #ifdef __cplusplus

View File

@ -10,16 +10,22 @@ extern "C" {
#define __NEED_wchar_t #define __NEED_wchar_t
#include <bits/alltypes.h> #include <bits/alltypes.h>
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
typedef struct { intmax_t quot, rem; } imaxdiv_t; typedef struct { intmax_t quot, rem; } imaxdiv_t;
intmax_t imaxabs(intmax_t); intmax_t imaxabs(intmax_t);
imaxdiv_t imaxdiv(intmax_t, intmax_t); imaxdiv_t imaxdiv(intmax_t, intmax_t);
intmax_t strtoimax(const char *, char **, int); intmax_t strtoimax(const char *__restrict, char **__restrict, int);
uintmax_t strtoumax(const char *, char **, int); uintmax_t strtoumax(const char *__restrict, char **__restrict, int);
intmax_t wcstoimax(const wchar_t *, wchar_t **, int); intmax_t wcstoimax(const wchar_t *__restrict, wchar_t **__restrict, int);
uintmax_t wcstoumax(const wchar_t *, wchar_t **, int); uintmax_t wcstoumax(const wchar_t *__restrict, wchar_t **__restrict, int);
#if !defined __cplusplus || defined __STDC_FORMAT_MACROS #if !defined __cplusplus || defined __STDC_FORMAT_MACROS

View File

@ -5,14 +5,20 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_ssize_t #define __NEED_ssize_t
#define __NEED_size_t #define __NEED_size_t
#define __NEED_locale_t #define __NEED_locale_t
#include <bits/alltypes.h> #include <bits/alltypes.h>
ssize_t strfmon(char *, size_t, const char *, ...); ssize_t strfmon(char *__restrict, size_t, const char *__restrict, ...);
ssize_t strfmon_l(char *, size_t, locale_t, const char *, ...); ssize_t strfmon_l(char *__restrict, size_t, locale_t, const char *__restrict, ...);
#ifdef __cplusplus #ifdef __cplusplus
} }

View File

@ -4,6 +4,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_size_t #define __NEED_size_t
#define __NEED_ssize_t #define __NEED_ssize_t
#define __NEED_pthread_attr_t #define __NEED_pthread_attr_t
@ -23,8 +29,8 @@ int mq_notify(mqd_t, const struct sigevent *);
mqd_t mq_open(const char *, int, ...); mqd_t mq_open(const char *, int, ...);
ssize_t mq_receive(mqd_t, char *, size_t, unsigned *); ssize_t mq_receive(mqd_t, char *, size_t, unsigned *);
int mq_send(mqd_t, const char *, size_t, unsigned); int mq_send(mqd_t, const char *, size_t, unsigned);
int mq_setattr(mqd_t, const struct mq_attr *, struct mq_attr *); int mq_setattr(mqd_t, const struct mq_attr *__restrict, struct mq_attr *__restrict);
ssize_t mq_timedreceive(mqd_t, char *, size_t, unsigned *, const struct timespec *); ssize_t mq_timedreceive(mqd_t, char *__restrict, size_t, unsigned *__restrict, const struct timespec *__restrict);
int mq_timedsend(mqd_t, const char *, size_t, unsigned, const struct timespec *); int mq_timedsend(mqd_t, const char *, size_t, unsigned, const struct timespec *);
int mq_unlink(const char *); int mq_unlink(const char *);

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
#define __NEED_size_t #define __NEED_size_t
#endif #endif
@ -55,9 +61,9 @@ struct addrinfo
#define EAI_SYSTEM -11 #define EAI_SYSTEM -11
#define EAI_OVERFLOW -12 #define EAI_OVERFLOW -12
int getaddrinfo (const char *, const char *, const struct addrinfo *, struct addrinfo **); int getaddrinfo (const char *__restrict, const char *__restrict, const struct addrinfo *__restrict, struct addrinfo **__restrict);
void freeaddrinfo (struct addrinfo *); void freeaddrinfo (struct addrinfo *);
int getnameinfo (const struct sockaddr *, socklen_t, char *, socklen_t, char *, socklen_t, int); int getnameinfo (const struct sockaddr *__restrict, socklen_t, char *__restrict, socklen_t, char *__restrict, socklen_t, int);
const char *gai_strerror(int); const char *gai_strerror(int);

View File

@ -4,6 +4,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_time_t #define __NEED_time_t
#define __NEED_clockid_t #define __NEED_clockid_t
#define __NEED_struct_timespec #define __NEED_struct_timespec
@ -71,7 +77,7 @@ extern "C" {
#define PTHREAD_BARRIER_SERIAL_THREAD (-1) #define PTHREAD_BARRIER_SERIAL_THREAD (-1)
int pthread_create(pthread_t *, const pthread_attr_t *, void *(*)(void *), void *); int pthread_create(pthread_t *__restrict, const pthread_attr_t *__restrict, void *(*)(void *), void *__restrict);
int pthread_detach(pthread_t); int pthread_detach(pthread_t);
void pthread_exit(void *); void pthread_exit(void *);
int pthread_join(pthread_t, void **); int pthread_join(pthread_t, void **);
@ -91,29 +97,29 @@ int pthread_cancel(pthread_t);
int pthread_once(pthread_once_t *, void (*)(void)); int pthread_once(pthread_once_t *, void (*)(void));
int pthread_mutex_init(pthread_mutex_t *, const pthread_mutexattr_t *); int pthread_mutex_init(pthread_mutex_t *__restrict, const pthread_mutexattr_t *__restrict);
int pthread_mutex_lock(pthread_mutex_t *); int pthread_mutex_lock(pthread_mutex_t *);
int pthread_mutex_unlock(pthread_mutex_t *); int pthread_mutex_unlock(pthread_mutex_t *);
int pthread_mutex_trylock(pthread_mutex_t *); int pthread_mutex_trylock(pthread_mutex_t *);
int pthread_mutex_timedlock(pthread_mutex_t *, const struct timespec *); int pthread_mutex_timedlock(pthread_mutex_t *__restrict, const struct timespec *__restrict);
int pthread_mutex_destroy(pthread_mutex_t *); int pthread_mutex_destroy(pthread_mutex_t *);
int pthread_mutex_consistent(pthread_mutex_t *); int pthread_mutex_consistent(pthread_mutex_t *);
int pthread_cond_init(pthread_cond_t *, const pthread_condattr_t *); int pthread_cond_init(pthread_cond_t *__restrict, const pthread_condattr_t *__restrict);
int pthread_cond_destroy(pthread_cond_t *); int pthread_cond_destroy(pthread_cond_t *);
int pthread_cond_wait(pthread_cond_t *, pthread_mutex_t *); int pthread_cond_wait(pthread_cond_t *__restrict, pthread_mutex_t *__restrict);
int pthread_cond_timedwait(pthread_cond_t *, pthread_mutex_t *, const struct timespec *); int pthread_cond_timedwait(pthread_cond_t *__restrict, pthread_mutex_t *__restrict, const struct timespec *__restrict);
int pthread_cond_broadcast(pthread_cond_t *); int pthread_cond_broadcast(pthread_cond_t *);
int pthread_cond_signal(pthread_cond_t *); int pthread_cond_signal(pthread_cond_t *);
int pthread_rwlock_init(pthread_rwlock_t *, const pthread_rwlockattr_t *); int pthread_rwlock_init(pthread_rwlock_t *__restrict, const pthread_rwlockattr_t *__restrict);
int pthread_rwlock_destroy(pthread_rwlock_t *); int pthread_rwlock_destroy(pthread_rwlock_t *);
int pthread_rwlock_rdlock(pthread_rwlock_t *); int pthread_rwlock_rdlock(pthread_rwlock_t *);
int pthread_rwlock_tryrdlock(pthread_rwlock_t *); int pthread_rwlock_tryrdlock(pthread_rwlock_t *);
int pthread_rwlock_timedrdlock(pthread_rwlock_t *, const struct timespec *); int pthread_rwlock_timedrdlock(pthread_rwlock_t *__restrict, const struct timespec *__restrict);
int pthread_rwlock_wrlock(pthread_rwlock_t *); int pthread_rwlock_wrlock(pthread_rwlock_t *);
int pthread_rwlock_trywrlock(pthread_rwlock_t *); int pthread_rwlock_trywrlock(pthread_rwlock_t *);
int pthread_rwlock_timedwrlock(pthread_rwlock_t *, const struct timespec *); int pthread_rwlock_timedwrlock(pthread_rwlock_t *__restrict, const struct timespec *__restrict);
int pthread_rwlock_unlock(pthread_rwlock_t *); int pthread_rwlock_unlock(pthread_rwlock_t *);
int pthread_spin_init(pthread_spinlock_t *, int); int pthread_spin_init(pthread_spinlock_t *, int);
@ -122,7 +128,7 @@ int pthread_spin_lock(pthread_spinlock_t *);
int pthread_spin_trylock(pthread_spinlock_t *); int pthread_spin_trylock(pthread_spinlock_t *);
int pthread_spin_unlock(pthread_spinlock_t *); int pthread_spin_unlock(pthread_spinlock_t *);
int pthread_barrier_init(pthread_barrier_t *, const pthread_barrierattr_t *, unsigned); int pthread_barrier_init(pthread_barrier_t *__restrict, const pthread_barrierattr_t *__restrict, unsigned);
int pthread_barrier_destroy(pthread_barrier_t *); int pthread_barrier_destroy(pthread_barrier_t *);
int pthread_barrier_wait(pthread_barrier_t *); int pthread_barrier_wait(pthread_barrier_t *);
@ -134,29 +140,29 @@ int pthread_setspecific(pthread_key_t, const void *);
int pthread_attr_init(pthread_attr_t *); int pthread_attr_init(pthread_attr_t *);
int pthread_attr_destroy(pthread_attr_t *); int pthread_attr_destroy(pthread_attr_t *);
int pthread_attr_getguardsize(const pthread_attr_t *, size_t *); int pthread_attr_getguardsize(const pthread_attr_t *__restrict, size_t *__restrict);
int pthread_attr_setguardsize(pthread_attr_t *, size_t); int pthread_attr_setguardsize(pthread_attr_t *, size_t);
int pthread_attr_getstacksize(const pthread_attr_t *, size_t *); int pthread_attr_getstacksize(const pthread_attr_t *__restrict, size_t *__restrict);
int pthread_attr_setstacksize(pthread_attr_t *, size_t); int pthread_attr_setstacksize(pthread_attr_t *, size_t);
int pthread_attr_getdetachstate(const pthread_attr_t *, int *); int pthread_attr_getdetachstate(const pthread_attr_t *, int *);
int pthread_attr_setdetachstate(pthread_attr_t *, int); int pthread_attr_setdetachstate(pthread_attr_t *, int);
int pthread_attr_getstack(const pthread_attr_t *, void **, size_t *); int pthread_attr_getstack(const pthread_attr_t *__restrict, void **__restrict, size_t *__restrict);
int pthread_attr_setstack(pthread_attr_t *, void *, size_t); int pthread_attr_setstack(pthread_attr_t *, void *, size_t);
int pthread_attr_getscope(const pthread_attr_t *, int *); int pthread_attr_getscope(const pthread_attr_t *__restrict, int *__restrict);
int pthread_attr_setscope(pthread_attr_t *, int); int pthread_attr_setscope(pthread_attr_t *, int);
int pthread_attr_getschedpolicy(const pthread_attr_t *, int *); int pthread_attr_getschedpolicy(const pthread_attr_t *__restrict, int *__restrict);
int pthread_attr_setschedpolicy(pthread_attr_t *, int); int pthread_attr_setschedpolicy(pthread_attr_t *, int);
int pthread_attr_getschedparam(const pthread_attr_t *, struct sched_param *); int pthread_attr_getschedparam(const pthread_attr_t *__restrict, struct sched_param *__restrict);
int pthread_attr_setschedparam(pthread_attr_t *, const struct sched_param *); int pthread_attr_setschedparam(pthread_attr_t *__restrict, const struct sched_param *__restrict);
int pthread_attr_getinheritsched(const pthread_attr_t *, int *); int pthread_attr_getinheritsched(const pthread_attr_t *__restrict, int *__restrict);
int pthread_attr_setinheritsched(pthread_attr_t *, int); int pthread_attr_setinheritsched(pthread_attr_t *, int);
int pthread_mutexattr_destroy(pthread_mutexattr_t *); int pthread_mutexattr_destroy(pthread_mutexattr_t *);
int pthread_mutexattr_getprioceiling(const pthread_mutexattr_t *, int *); int pthread_mutexattr_getprioceiling(const pthread_mutexattr_t *__restrict, int *__restrict);
int pthread_mutexattr_getprotocol(const pthread_mutexattr_t *, int *); int pthread_mutexattr_getprotocol(const pthread_mutexattr_t *__restrict, int *__restrict);
int pthread_mutexattr_getpshared(const pthread_mutexattr_t *, int *); int pthread_mutexattr_getpshared(const pthread_mutexattr_t *__restrict, int *__restrict);
int pthread_mutexattr_getrobust(const pthread_mutexattr_t *, int *); int pthread_mutexattr_getrobust(const pthread_mutexattr_t *__restrict, int *__restrict);
int pthread_mutexattr_gettype(const pthread_mutexattr_t *, int *); int pthread_mutexattr_gettype(const pthread_mutexattr_t *__restrict, int *__restrict);
int pthread_mutexattr_init(pthread_mutexattr_t *); int pthread_mutexattr_init(pthread_mutexattr_t *);
int pthread_mutexattr_setprioceiling(pthread_mutexattr_t *, int); int pthread_mutexattr_setprioceiling(pthread_mutexattr_t *, int);
int pthread_mutexattr_setprotocol(pthread_mutexattr_t *, int); int pthread_mutexattr_setprotocol(pthread_mutexattr_t *, int);
@ -168,16 +174,16 @@ int pthread_condattr_init(pthread_condattr_t *);
int pthread_condattr_destroy(pthread_condattr_t *); int pthread_condattr_destroy(pthread_condattr_t *);
int pthread_condattr_setclock(pthread_condattr_t *, clockid_t); int pthread_condattr_setclock(pthread_condattr_t *, clockid_t);
int pthread_condattr_setpshared(pthread_condattr_t *, int); int pthread_condattr_setpshared(pthread_condattr_t *, int);
int pthread_condattr_getclock(const pthread_condattr_t *, clockid_t *); int pthread_condattr_getclock(const pthread_condattr_t *__restrict, clockid_t *__restrict);
int pthread_condattr_getpshared(const pthread_condattr_t *, int *); int pthread_condattr_getpshared(const pthread_condattr_t *__restrict, int *__restrict);
int pthread_rwlockattr_init(pthread_rwlockattr_t *); int pthread_rwlockattr_init(pthread_rwlockattr_t *);
int pthread_rwlockattr_destroy(pthread_rwlockattr_t *); int pthread_rwlockattr_destroy(pthread_rwlockattr_t *);
int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *, int); int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *, int);
int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *, int *); int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *__restrict, int *__restrict);
int pthread_barrierattr_destroy(pthread_barrierattr_t *); int pthread_barrierattr_destroy(pthread_barrierattr_t *);
int pthread_barrierattr_getpshared(const pthread_barrierattr_t *, int *); int pthread_barrierattr_getpshared(const pthread_barrierattr_t *__restrict, int *__restrict);
int pthread_barrierattr_init(pthread_barrierattr_t *); int pthread_barrierattr_init(pthread_barrierattr_t *);
int pthread_barrierattr_setpshared(pthread_barrierattr_t *, int); int pthread_barrierattr_setpshared(pthread_barrierattr_t *, int);

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_size_t #define __NEED_size_t
#include <bits/alltypes.h> #include <bits/alltypes.h>
@ -47,11 +53,11 @@ typedef struct {
#define REG_ENOSYS -1 #define REG_ENOSYS -1
int regcomp(regex_t *, const char *, int); int regcomp(regex_t *__restrict, const char *__restrict, int);
int regexec(const regex_t *, const char *, size_t, regmatch_t [], int); int regexec(const regex_t *__restrict, const char *__restrict, size_t, regmatch_t *__restrict, int);
void regfree(regex_t *); void regfree(regex_t *);
size_t regerror(int, const regex_t *, char *, size_t); size_t regerror(int, const regex_t *__restrict, char *__restrict, size_t);
#ifdef __cplusplus #ifdef __cplusplus
} }

View File

@ -5,6 +5,13 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_size_t #define __NEED_size_t
#include <bits/alltypes.h> #include <bits/alltypes.h>
@ -28,7 +35,7 @@ void *lsearch(const void *, void *, size_t *, size_t,
void *lfind(const void *, const void *, size_t *, size_t, void *lfind(const void *, const void *, size_t *, size_t,
int (*)(const void *, const void *)); int (*)(const void *, const void *));
void *tdelete(const void *, void **, int(*)(const void *, const void *)); void *tdelete(const void *__restrict, void **__restrict, int(*)(const void *, const void *));
void *tfind(const void *, void *const *, int(*)(const void *, const void *)); void *tfind(const void *, void *const *, int(*)(const void *, const void *));
void *tsearch(const void *, void **, int (*)(const void *, const void *)); void *tsearch(const void *, void **, int (*)(const void *, const void *));
void twalk(const void *, void (*)(const void *, VISIT, int)); void twalk(const void *, void (*)(const void *, VISIT, int));

View File

@ -4,6 +4,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_time_t #define __NEED_time_t
#define __NEED_struct_timespec #define __NEED_struct_timespec
#include <bits/alltypes.h> #include <bits/alltypes.h>
@ -18,11 +24,11 @@ typedef struct {
int sem_close(sem_t *); int sem_close(sem_t *);
int sem_destroy(sem_t *); int sem_destroy(sem_t *);
int sem_getvalue(sem_t *, int *); int sem_getvalue(sem_t *__restrict, int *__restrict);
int sem_init(sem_t *, int, unsigned); int sem_init(sem_t *, int, unsigned);
sem_t *sem_open(const char *, int, ...); sem_t *sem_open(const char *, int, ...);
int sem_post(sem_t *); int sem_post(sem_t *);
int sem_timedwait(sem_t *, const struct timespec *); int sem_timedwait(sem_t *__restrict, const struct timespec *__restrict);
int sem_trywait(sem_t *); int sem_trywait(sem_t *);
int sem_unlink(const char *); int sem_unlink(const char *);
int sem_wait(sem_t *); int sem_wait(sem_t *);

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|| defined(_BSD_SOURCE) || defined(_BSD_SOURCE)
@ -165,16 +171,16 @@ int sigaddset(sigset_t *, int);
int sigdelset(sigset_t *, int); int sigdelset(sigset_t *, int);
int sigismember(const sigset_t *, int); int sigismember(const sigset_t *, int);
int sigprocmask(int, const sigset_t *, sigset_t *); int sigprocmask(int, const sigset_t *__restrict, sigset_t *__restrict);
int sigsuspend(const sigset_t *); int sigsuspend(const sigset_t *);
int sigaction(int, const struct sigaction *, struct sigaction *); int sigaction(int, const struct sigaction *__restrict, struct sigaction *__restrict);
int sigpending(sigset_t *); int sigpending(sigset_t *);
int sigwait(const sigset_t *, int *); int sigwait(const sigset_t *__restrict, int *__restrict);
int sigwaitinfo(const sigset_t *, siginfo_t *); int sigwaitinfo(const sigset_t *__restrict, siginfo_t *__restrict);
int sigtimedwait(const sigset_t *, siginfo_t *, const struct timespec *); int sigtimedwait(const sigset_t *__restrict, siginfo_t *__restrict, const struct timespec *__restrict);
int sigqueue(pid_t, int, const union sigval); int sigqueue(pid_t, int, const union sigval);
int pthread_sigmask(int, const sigset_t *, sigset_t *); int pthread_sigmask(int, const sigset_t *__restrict, sigset_t *__restrict);
int pthread_kill(pthread_t, int); int pthread_kill(pthread_t, int);
void psiginfo(const siginfo_t *, const char *); void psiginfo(const siginfo_t *, const char *);
@ -184,7 +190,7 @@ void psignal(int, const char *);
#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
int killpg(pid_t, int); int killpg(pid_t, int);
int sigaltstack(const stack_t *, stack_t *); int sigaltstack(const stack_t *__restrict, stack_t *__restrict);
int sighold(int); int sighold(int);
int sigignore(int); int sigignore(int);
int siginterrupt(int, int); int siginterrupt(int, int);

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_mode_t #define __NEED_mode_t
#define __NEED_pid_t #define __NEED_pid_t
#define __NEED_sigset_t #define __NEED_sigset_t
@ -33,30 +39,30 @@ typedef struct {
int __pad[16]; int __pad[16];
} posix_spawn_file_actions_t; } posix_spawn_file_actions_t;
int posix_spawn(pid_t *, const char *, const posix_spawn_file_actions_t *, int posix_spawn(pid_t *__restrict, const char *__restrict, const posix_spawn_file_actions_t *,
const posix_spawnattr_t *, char *const [], char *const []); const posix_spawnattr_t *__restrict, char *const *__restrict, char *const *__restrict);
int posix_spawnp(pid_t *, const char *, const posix_spawn_file_actions_t *, int posix_spawnp(pid_t *__restrict, const char *__restrict, const posix_spawn_file_actions_t *,
const posix_spawnattr_t *, char *const [], char *const []); const posix_spawnattr_t *__restrict, char *const *__restrict, char *const *__restrict);
int posix_spawnattr_init(posix_spawnattr_t *); int posix_spawnattr_init(posix_spawnattr_t *);
int posix_spawnattr_destroy(posix_spawnattr_t *); int posix_spawnattr_destroy(posix_spawnattr_t *);
int posix_spawnattr_setflags(posix_spawnattr_t *, short); int posix_spawnattr_setflags(posix_spawnattr_t *, short);
int posix_spawnattr_getflags(const posix_spawnattr_t *, short *); int posix_spawnattr_getflags(const posix_spawnattr_t *__restrict, short *__restrict);
int posix_spawnattr_setpgroup(posix_spawnattr_t *, pid_t); int posix_spawnattr_setpgroup(posix_spawnattr_t *, pid_t);
int posix_spawnattr_getpgroup(const posix_spawnattr_t *, pid_t *); int posix_spawnattr_getpgroup(const posix_spawnattr_t *__restrict, pid_t *__restrict);
int posix_spawnattr_setsigmask(posix_spawnattr_t *, const sigset_t *); int posix_spawnattr_setsigmask(posix_spawnattr_t *__restrict, const sigset_t *__restrict);
int posix_spawnattr_getsigmask(const posix_spawnattr_t *, sigset_t *); int posix_spawnattr_getsigmask(const posix_spawnattr_t *__restrict, sigset_t *__restrict);
int posix_spawnattr_setsigdefault(posix_spawnattr_t *, const sigset_t *); int posix_spawnattr_setsigdefault(posix_spawnattr_t *__restrict, const sigset_t *__restrict);
int posix_spawnattr_getsigdefault(const posix_spawnattr_t *, sigset_t *); int posix_spawnattr_getsigdefault(const posix_spawnattr_t *__restrict, sigset_t *__restrict);
int posix_spawn_file_actions_init(posix_spawn_file_actions_t *); int posix_spawn_file_actions_init(posix_spawn_file_actions_t *);
int posix_spawn_file_actions_destroy(posix_spawn_file_actions_t *); int posix_spawn_file_actions_destroy(posix_spawn_file_actions_t *);
int posix_spawn_file_actions_addopen(posix_spawn_file_actions_t *, int, const char *, int, mode_t); int posix_spawn_file_actions_addopen(posix_spawn_file_actions_t *__restrict, int, const char *__restrict, int, mode_t);
int posix_spawn_file_actions_addclose(posix_spawn_file_actions_t *, int); int posix_spawn_file_actions_addclose(posix_spawn_file_actions_t *, int);
int posix_spawn_file_actions_adddup2(posix_spawn_file_actions_t *, int, int); int posix_spawn_file_actions_adddup2(posix_spawn_file_actions_t *, int, int);

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_FILE #define __NEED_FILE
#define __NEED_va_list #define __NEED_va_list
#define __NEED_size_t #define __NEED_size_t
@ -58,8 +64,8 @@ extern FILE *const stderr;
#define stdout (stdout) #define stdout (stdout)
#define stderr (stderr) #define stderr (stderr)
FILE *fopen(const char *, const char *); FILE *fopen(const char *__restrict, const char *__restrict);
FILE *freopen(const char *, const char *, FILE *); FILE *freopen(const char *__restrict, const char *__restrict, FILE *__restrict);
int fclose(FILE *); int fclose(FILE *);
int remove(const char *); int remove(const char *);
@ -74,11 +80,11 @@ int fseek(FILE *, long, int);
long ftell(FILE *); long ftell(FILE *);
void rewind(FILE *); void rewind(FILE *);
int fgetpos(FILE *, fpos_t *); int fgetpos(FILE *__restrict, fpos_t *__restrict);
int fsetpos(FILE *, const fpos_t *); int fsetpos(FILE *, const fpos_t *);
size_t fread(void *, size_t, size_t, FILE *); size_t fread(void *__restrict, size_t, size_t, FILE *__restrict);
size_t fwrite(const void *, size_t, size_t, FILE *); size_t fwrite(const void *__restrict, size_t, size_t, FILE *__restrict);
int fgetc(FILE *); int fgetc(FILE *);
int getc(FILE *); int getc(FILE *);
@ -89,35 +95,35 @@ int fputc(int, FILE *);
int putc(int, FILE *); int putc(int, FILE *);
int putchar(int); int putchar(int);
char *fgets(char *, int, FILE *); char *fgets(char *__restrict, int, FILE *__restrict);
#if __STDC_VERSION__ < 201112L #if __STDC_VERSION__ < 201112L
char *gets(char *); char *gets(char *);
#endif #endif
int fputs(const char *, FILE *); int fputs(const char *__restrict, FILE *__restrict);
int puts(const char *); int puts(const char *);
int printf(const char *, ...); int printf(const char *__restrict, ...);
int fprintf(FILE *, const char *, ...); int fprintf(FILE *__restrict, const char *__restrict, ...);
int sprintf(char *, const char *, ...); int sprintf(char *__restrict, const char *__restrict, ...);
int snprintf(char *, size_t, const char *, ...); int snprintf(char *__restrict, size_t, const char *__restrict, ...);
int vprintf(const char *, va_list); int vprintf(const char *__restrict, va_list);
int vfprintf(FILE *, const char *, va_list); int vfprintf(FILE *__restrict, const char *__restrict, va_list);
int vsprintf(char *, const char *, va_list); int vsprintf(char *__restrict, const char *__restrict, va_list);
int vsnprintf(char *, size_t, const char *, va_list); int vsnprintf(char *__restrict, size_t, const char *__restrict, va_list);
int scanf(const char *, ...); int scanf(const char *__restrict, ...);
int fscanf(FILE *, const char *, ...); int fscanf(FILE *__restrict, const char *__restrict, ...);
int sscanf(const char *, const char *, ...); int sscanf(const char *__restrict, const char *__restrict, ...);
int vscanf(const char *, va_list); int vscanf(const char *__restrict, va_list);
int vfscanf(FILE *, const char *, va_list); int vfscanf(FILE *__restrict, const char *__restrict, va_list);
int vsscanf(const char *, const char *, va_list); int vsscanf(const char *__restrict, const char *__restrict, va_list);
void perror(const char *); void perror(const char *);
int setvbuf(FILE *, char *, int, size_t); int setvbuf(FILE *__restrict, char *__restrict, int, size_t);
void setbuf(FILE *, char *); void setbuf(FILE *__restrict, char *__restrict);
char *tmpnam(char *); char *tmpnam(char *);
FILE *tmpfile(void); FILE *tmpfile(void);
@ -125,7 +131,7 @@ FILE *tmpfile(void);
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|| defined(_BSD_SOURCE) || defined(_BSD_SOURCE)
FILE *fmemopen(void *, size_t, const char *); FILE *fmemopen(void *__restrict, size_t, const char *__restrict);
FILE *open_memstream(char **, size_t *); FILE *open_memstream(char **, size_t *);
FILE *fdopen(int, const char *); FILE *fdopen(int, const char *);
FILE *popen(const char *, const char *); FILE *popen(const char *, const char *);
@ -133,8 +139,8 @@ int pclose(FILE *);
int fileno(FILE *); int fileno(FILE *);
int fseeko(FILE *, off_t, int); int fseeko(FILE *, off_t, int);
off_t ftello(FILE *); off_t ftello(FILE *);
int dprintf(int, const char *, ...); int dprintf(int, const char *__restrict, ...);
int vdprintf(int, const char *, va_list); int vdprintf(int, const char *__restrict, va_list);
void flockfile(FILE *); void flockfile(FILE *);
int ftrylockfile(FILE *); int ftrylockfile(FILE *);
void funlockfile(FILE *); void funlockfile(FILE *);
@ -142,8 +148,8 @@ int getc_unlocked(FILE *);
int getchar_unlocked(void); int getchar_unlocked(void);
int putc_unlocked(int, FILE *); int putc_unlocked(int, FILE *);
int putchar_unlocked(int); int putchar_unlocked(int);
ssize_t getdelim(char **, size_t *, int, FILE *); ssize_t getdelim(char **__restrict, size_t *__restrict, int, FILE *__restrict);
ssize_t getline(char **, size_t *, FILE *); ssize_t getline(char **__restrict, size_t *__restrict, FILE *__restrict);
int renameat(int, const char *, int, const char *); int renameat(int, const char *, int, const char *);
char *ctermid(char *); char *ctermid(char *);
#define L_ctermid 20 #define L_ctermid 20

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#undef NULL #undef NULL
#ifdef __cplusplus #ifdef __cplusplus
#define NULL 0 #define NULL 0
@ -22,14 +28,14 @@ long atol (const char *);
long long atoll (const char *); long long atoll (const char *);
double atof (const char *); double atof (const char *);
float strtof (const char *, char **); float strtof (const char *__restrict, char **__restrict);
double strtod (const char *, char **); double strtod (const char *__restrict, char **__restrict);
long double strtold (const char *, char **); long double strtold (const char *__restrict, char **__restrict);
long strtol (const char *, char **, int); long strtol (const char *__restrict, char **__restrict, int);
unsigned long strtoul (const char *, char **, int); unsigned long strtoul (const char *__restrict, char **__restrict, int);
long long strtoll (const char *, char **, int); long long strtoll (const char *__restrict, char **__restrict, int);
unsigned long long strtoull (const char *, char **, int); unsigned long long strtoull (const char *__restrict, char **__restrict, int);
int rand (void); int rand (void);
void srand (unsigned); void srand (unsigned);
@ -67,10 +73,10 @@ ldiv_t ldiv (long, long);
lldiv_t lldiv (long long, long long); lldiv_t lldiv (long long, long long);
int mblen (const char *, size_t); int mblen (const char *, size_t);
int mbtowc (wchar_t *, const char *, size_t); int mbtowc (wchar_t *__restrict, const char *__restrict, size_t);
int wctomb (char *, wchar_t); int wctomb (char *, wchar_t);
size_t mbstowcs (wchar_t *, const char *, size_t); size_t mbstowcs (wchar_t *__restrict, const char *__restrict, size_t);
size_t wcstombs (char *, const wchar_t *, size_t); size_t wcstombs (char *__restrict, const wchar_t *__restrict, size_t);
#define EXIT_FAILURE 1 #define EXIT_FAILURE 1
#define EXIT_SUCCESS 0 #define EXIT_SUCCESS 0
@ -108,7 +114,7 @@ int rand_r (unsigned *);
#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \ #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|| defined(_BSD_SOURCE) || defined(_BSD_SOURCE)
char *realpath (const char *, char *); char *realpath (const char *__restrict, char *__restrict);
long int random (void); long int random (void);
void srandom (unsigned int); void srandom (unsigned int);
char *initstate (unsigned int, char *, size_t); char *initstate (unsigned int, char *, size_t);

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#undef NULL #undef NULL
#ifdef __cplusplus #ifdef __cplusplus
#define NULL 0 #define NULL 0
@ -21,23 +27,23 @@ extern "C" {
#include <bits/alltypes.h> #include <bits/alltypes.h>
void *memcpy (void *, const void *, size_t); void *memcpy (void *__restrict, const void *__restrict, size_t);
void *memmove (void *, const void *, size_t); void *memmove (void *, const void *, size_t);
void *memset (void *, int, size_t); void *memset (void *, int, size_t);
int memcmp (const void *, const void *, size_t); int memcmp (const void *, const void *, size_t);
void *memchr (const void *, int, size_t); void *memchr (const void *, int, size_t);
char *strcpy (char *, const char *); char *strcpy (char *__restrict, const char *__restrict);
char *strncpy (char *, const char *, size_t); char *strncpy (char *__restrict, const char *__restrict, size_t);
char *strcat (char *, const char *); char *strcat (char *__restrict, const char *__restrict);
char *strncat (char *, const char *, size_t); char *strncat (char *__restrict, const char *__restrict, size_t);
int strcmp (const char *, const char *); int strcmp (const char *, const char *);
int strncmp (const char *, const char *, size_t); int strncmp (const char *, const char *, size_t);
int strcoll (const char *, const char *); int strcoll (const char *, const char *);
size_t strxfrm (char *, const char *, size_t); size_t strxfrm (char *__restrict, const char *__restrict, size_t);
char *strchr (const char *, int); char *strchr (const char *, int);
char *strrchr (const char *, int); char *strrchr (const char *, int);
@ -46,7 +52,7 @@ size_t strcspn (const char *, const char *);
size_t strspn (const char *, const char *); size_t strspn (const char *, const char *);
char *strpbrk (const char *, const char *); char *strpbrk (const char *, const char *);
char *strstr (const char *, const char *); char *strstr (const char *, const char *);
char *strtok (char *, const char *); char *strtok (char *__restrict, const char *__restrict);
size_t strlen (const char *); size_t strlen (const char *);
@ -59,22 +65,22 @@ char *strerror (int);
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|| defined(_BSD_SOURCE) || defined(_BSD_SOURCE)
char *strtok_r (char *, const char *, char **); char *strtok_r (char *__restrict, const char *__restrict, char **__restrict);
int strerror_r (int, char *, size_t); int strerror_r (int, char *, size_t);
char *stpcpy(char *, const char *); char *stpcpy(char *__restrict, const char *__restrict);
char *stpncpy(char *, const char *, size_t); char *stpncpy(char *__restrict, const char *__restrict, size_t);
size_t strnlen (const char *, size_t); size_t strnlen (const char *, size_t);
char *strdup (const char *); char *strdup (const char *);
char *strndup (const char *, size_t); char *strndup (const char *, size_t);
char *strsignal(int); char *strsignal(int);
char *strerror_l (int, locale_t); char *strerror_l (int, locale_t);
int strcoll_l (const char *, const char *, locale_t); int strcoll_l (const char *, const char *, locale_t);
size_t strxfrm_l (char *, const char *, size_t, locale_t); size_t strxfrm_l (char *__restrict, const char *__restrict, size_t, locale_t);
#endif #endif
#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \ #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|| defined(_BSD_SOURCE) || defined(_BSD_SOURCE)
void *memccpy (void *, const void *, int, size_t); void *memccpy (void *__restrict, const void *__restrict, int, size_t);
#endif #endif
#ifdef _BSD_SOURCE #ifdef _BSD_SOURCE

View File

@ -4,6 +4,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_size_t #define __NEED_size_t
#define __NEED_time_t #define __NEED_time_t
#define __NEED_suseconds_t #define __NEED_suseconds_t
@ -27,8 +33,8 @@ typedef struct
#define FD_CLR(d, s) ((s)->fds_bits[(d)/(8*sizeof(long))] &= ~(1UL<<((d)%(8*sizeof(long))))) #define FD_CLR(d, s) ((s)->fds_bits[(d)/(8*sizeof(long))] &= ~(1UL<<((d)%(8*sizeof(long)))))
#define FD_ISSET(d, s) !!((s)->fds_bits[(d)/(8*sizeof(long))] & (1UL<<((d)%(8*sizeof(long))))) #define FD_ISSET(d, s) !!((s)->fds_bits[(d)/(8*sizeof(long))] & (1UL<<((d)%(8*sizeof(long)))))
int select (int, fd_set *, fd_set *, fd_set *, struct timeval *); int select (int, fd_set *__restrict, fd_set *__restrict, fd_set *__restrict, struct timeval *__restrict);
int pselect (int, fd_set *, fd_set *, fd_set *, const struct timespec *, const sigset_t *); int pselect (int, fd_set *__restrict, fd_set *__restrict, fd_set *__restrict, const struct timespec *__restrict, const sigset_t *__restrict);
#ifdef __cplusplus #ifdef __cplusplus

View File

@ -4,6 +4,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_socklen_t #define __NEED_socklen_t
#define __NEED_sa_family_t #define __NEED_sa_family_t
#define __NEED_size_t #define __NEED_size_t
@ -232,19 +238,19 @@ int shutdown (int, int);
int bind (int, const struct sockaddr *, socklen_t); int bind (int, const struct sockaddr *, socklen_t);
int connect (int, const struct sockaddr *, socklen_t); int connect (int, const struct sockaddr *, socklen_t);
int listen (int, int); int listen (int, int);
int accept (int, struct sockaddr *, socklen_t *); int accept (int, struct sockaddr *__restrict, socklen_t *__restrict);
int getsockname (int, struct sockaddr *, socklen_t *); int getsockname (int, struct sockaddr *__restrict, socklen_t *__restrict);
int getpeername (int, struct sockaddr *, socklen_t *); int getpeername (int, struct sockaddr *__restrict, socklen_t *__restrict);
ssize_t send (int, const void *, size_t, int); ssize_t send (int, const void *, size_t, int);
ssize_t recv (int, void *, size_t, int); ssize_t recv (int, void *, size_t, int);
ssize_t sendto (int, const void *, size_t, int, const struct sockaddr *, socklen_t); ssize_t sendto (int, const void *, size_t, int, const struct sockaddr *, socklen_t);
ssize_t recvfrom (int, void *, size_t, int, struct sockaddr *, socklen_t *); ssize_t recvfrom (int, void *__restrict, size_t, int, struct sockaddr *__restrict, socklen_t *__restrict);
ssize_t sendmsg (int, const struct msghdr *, int); ssize_t sendmsg (int, const struct msghdr *, int);
ssize_t recvmsg (int, struct msghdr *, int); ssize_t recvmsg (int, struct msghdr *, int);
int getsockopt (int, int, int, void *, socklen_t *); int getsockopt (int, int, int, void *__restrict, socklen_t *__restrict);
int setsockopt (int, int, int, const void *, socklen_t); int setsockopt (int, int, int, const void *, socklen_t);
int sockatmark (int); int sockatmark (int);

View File

@ -4,6 +4,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_dev_t #define __NEED_dev_t
#define __NEED_ino_t #define __NEED_ino_t
#define __NEED_mode_t #define __NEED_mode_t
@ -68,10 +74,10 @@ extern "C" {
#define UTIME_NOW 0x3fffffff #define UTIME_NOW 0x3fffffff
#define UTIME_OMIT 0x3ffffffe #define UTIME_OMIT 0x3ffffffe
int stat(const char *, struct stat *); int stat(const char *__restrict, struct stat *__restrict);
int fstat(int, struct stat *); int fstat(int, struct stat *);
int lstat(const char *, struct stat *); int lstat(const char *__restrict, struct stat *__restrict);
int fstatat(int, const char *, struct stat *, int); int fstatat(int, const char *__restrict, struct stat *__restrict, int);
int chmod(const char *, mode_t); int chmod(const char *, mode_t);
int fchmod(int, mode_t); int fchmod(int, mode_t);
int fchmodat(int, const char *, mode_t, int); int fchmodat(int, const char *, mode_t, int);

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_fsblkcnt_t #define __NEED_fsblkcnt_t
#define __NEED_fsfilcnt_t #define __NEED_fsfilcnt_t
#include <bits/alltypes.h> #include <bits/alltypes.h>
@ -26,7 +32,7 @@ struct statvfs {
int __reserved[6]; int __reserved[6];
}; };
int statvfs (const char *, struct statvfs *); int statvfs (const char *__restrict, struct statvfs *__restrict);
int fstatvfs (int, struct statvfs *); int fstatvfs (int, struct statvfs *);
#define ST_RDONLY 1 #define ST_RDONLY 1

View File

@ -4,9 +4,15 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#include <sys/select.h> #include <sys/select.h>
int gettimeofday (struct timeval *, void *); int gettimeofday (struct timeval *__restrict, void *__restrict);
#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \ #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|| defined(_BSD_SOURCE) || defined(_BSD_SOURCE)
@ -22,7 +28,7 @@ struct itimerval
}; };
int getitimer (int, struct itimerval *); int getitimer (int, struct itimerval *);
int setitimer (int, const struct itimerval *, struct itimerval *); int setitimer (int, const struct itimerval *__restrict, struct itimerval *__restrict);
int utimes (const char *, const struct timeval [2]); int utimes (const char *, const struct timeval [2]);
#endif #endif

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#undef NULL #undef NULL
#ifdef __cplusplus #ifdef __cplusplus
#define NULL 0 #define NULL 0
@ -48,7 +54,7 @@ clock_t clock (void);
time_t time (time_t *); time_t time (time_t *);
double difftime (time_t, time_t); double difftime (time_t, time_t);
time_t mktime (struct tm *); time_t mktime (struct tm *);
size_t strftime (char *, size_t, const char *, const struct tm *); size_t strftime (char *__restrict, size_t, const char *__restrict, const struct tm *__restrict);
struct tm *gmtime (const time_t *); struct tm *gmtime (const time_t *);
struct tm *localtime (const time_t *); struct tm *localtime (const time_t *);
char *asctime (const struct tm *); char *asctime (const struct tm *);
@ -61,11 +67,11 @@ char *ctime (const time_t *);
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|| defined(_BSD_SOURCE) || defined(_BSD_SOURCE)
size_t strftime_l (char *, size_t, const char *, const struct tm *, locale_t); size_t strftime_l (char * __restrict, size_t, const char * __restrict, const struct tm * __restrict, locale_t);
struct tm *gmtime_r (const time_t *, struct tm *); struct tm *gmtime_r (const time_t *__restrict, struct tm *__restrict);
struct tm *localtime_r (const time_t *, struct tm *); struct tm *localtime_r (const time_t *__restrict, struct tm *__restrict);
char *asctime_r (const struct tm *, char *); char *asctime_r (const struct tm *__restrict, char *__restrict);
char *ctime_r (const time_t *, char *); char *ctime_r (const time_t *, char *);
void tzset (void); void tzset (void);
@ -91,9 +97,9 @@ int clock_nanosleep (clockid_t, int, const struct timespec *, struct timespec *)
int clock_getcpuclockid (pid_t, clockid_t *); int clock_getcpuclockid (pid_t, clockid_t *);
struct sigevent; struct sigevent;
int timer_create (clockid_t, struct sigevent *, timer_t *); int timer_create (clockid_t, struct sigevent *__restrict, timer_t *__restrict);
int timer_delete (timer_t); int timer_delete (timer_t);
int timer_settime (timer_t, int, const struct itimerspec *, struct itimerspec *); int timer_settime (timer_t, int, const struct itimerspec *__restrict, struct itimerspec *__restrict);
int timer_gettime (timer_t, struct itimerspec *); int timer_gettime (timer_t, struct itimerspec *);
int timer_getoverrun (timer_t); int timer_getoverrun (timer_t);
@ -101,7 +107,7 @@ int timer_getoverrun (timer_t);
#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
char *strptime (const char *, const char *, struct tm *); char *strptime (const char *__restrict, const char *__restrict, struct tm *__restrict);
extern int daylight; extern int daylight;
extern long timezone; extern long timezone;
extern char *tzname[2]; extern char *tzname[2];

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define STDIN_FILENO 0 #define STDIN_FILENO 0
#define STDOUT_FILENO 1 #define STDOUT_FILENO 1
#define STDERR_FILENO 2 #define STDERR_FILENO 2
@ -52,8 +58,8 @@ int link(const char *, const char *);
int linkat(int, const char *, int, const char *, int); int linkat(int, const char *, int, const char *, int);
int symlink(const char *, const char *); int symlink(const char *, const char *);
int symlinkat(const char *, int, const char *); int symlinkat(const char *, int, const char *);
ssize_t readlink(const char *, char *, size_t); ssize_t readlink(const char *__restrict, char *__restrict, size_t);
ssize_t readlinkat(int, const char *, char *, size_t); ssize_t readlinkat(int, const char *__restrict, char *__restrict, size_t);
int unlink(const char *); int unlink(const char *);
int unlinkat(int, const char *, int); int unlinkat(int, const char *, int);
int rmdir(const char *); int rmdir(const char *);
@ -141,7 +147,7 @@ void sync(void);
pid_t setpgrp(void); pid_t setpgrp(void);
char *crypt(const char *, const char *); char *crypt(const char *, const char *);
void encrypt(char *, int); void encrypt(char *, int);
void swab(const void *, void *, ssize_t); void swab(const void *__restrict, void *__restrict, ssize_t);
#endif #endif
#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) \ #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) \

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_FILE #define __NEED_FILE
#define __NEED_va_list #define __NEED_va_list
#define __NEED_size_t #define __NEED_size_t
@ -39,17 +45,17 @@ typedef struct
unsigned __opaque1, __opaque2; unsigned __opaque1, __opaque2;
} mbstate_t; } mbstate_t;
wchar_t *wcscpy (wchar_t *, const wchar_t *); wchar_t *wcscpy (wchar_t *__restrict, const wchar_t *__restrict);
wchar_t *wcsncpy (wchar_t *, const wchar_t *, size_t); wchar_t *wcsncpy (wchar_t *__restrict, const wchar_t *__restrict, size_t);
wchar_t *wcscat (wchar_t *, const wchar_t *); wchar_t *wcscat (wchar_t *__restrict, const wchar_t *__restrict);
wchar_t *wcsncat (wchar_t *, const wchar_t *, size_t); wchar_t *wcsncat (wchar_t *__restrict, const wchar_t *__restrict, size_t);
int wcscmp (const wchar_t *, const wchar_t *); int wcscmp (const wchar_t *, const wchar_t *);
int wcsncmp (const wchar_t *, const wchar_t *, size_t); int wcsncmp (const wchar_t *, const wchar_t *, size_t);
int wcscoll(const wchar_t *, const wchar_t *); int wcscoll(const wchar_t *, const wchar_t *);
size_t wcsxfrm (wchar_t *, const wchar_t *, size_t n); size_t wcsxfrm (wchar_t *__restrict, const wchar_t *__restrict, size_t n);
wchar_t *wcschr (const wchar_t *, wchar_t); wchar_t *wcschr (const wchar_t *, wchar_t);
wchar_t *wcsrchr (const wchar_t *, wchar_t); wchar_t *wcsrchr (const wchar_t *, wchar_t);
@ -58,16 +64,16 @@ size_t wcscspn (const wchar_t *, const wchar_t *);
size_t wcsspn (const wchar_t *, const wchar_t *); size_t wcsspn (const wchar_t *, const wchar_t *);
wchar_t *wcspbrk (const wchar_t *, const wchar_t *); wchar_t *wcspbrk (const wchar_t *, const wchar_t *);
wchar_t *wcstok (wchar_t *, const wchar_t *, wchar_t **); wchar_t *wcstok (wchar_t *__restrict, const wchar_t *__restrict, wchar_t **__restrict);
size_t wcslen (const wchar_t *); size_t wcslen (const wchar_t *);
wchar_t *wcsstr (const wchar_t *, const wchar_t *); wchar_t *wcsstr (const wchar_t *__restrict, const wchar_t *__restrict);
wchar_t *wcswcs (const wchar_t *, const wchar_t *); wchar_t *wcswcs (const wchar_t *, const wchar_t *);
wchar_t *wmemchr (const wchar_t *, wchar_t, size_t); wchar_t *wmemchr (const wchar_t *, wchar_t, size_t);
int wmemcmp (const wchar_t *, const wchar_t *, size_t); int wmemcmp (const wchar_t *, const wchar_t *, size_t);
wchar_t *wmemcpy (wchar_t *, const wchar_t *, size_t); wchar_t *wmemcpy (wchar_t *__restrict, const wchar_t *__restrict, size_t);
wchar_t *wmemmove (wchar_t *, const wchar_t *, size_t); wchar_t *wmemmove (wchar_t *, const wchar_t *, size_t);
wchar_t *wmemset (wchar_t *, wchar_t, size_t); wchar_t *wmemset (wchar_t *, wchar_t, size_t);
@ -75,44 +81,44 @@ wint_t btowc (int);
int wctob (wint_t); int wctob (wint_t);
int mbsinit (const mbstate_t *); int mbsinit (const mbstate_t *);
size_t mbrtowc (wchar_t *, const char *, size_t, mbstate_t *); size_t mbrtowc (wchar_t *__restrict, const char *__restrict, size_t, mbstate_t *__restrict);
size_t wcrtomb (char *, wchar_t, mbstate_t *); size_t wcrtomb (char *__restrict, wchar_t, mbstate_t *__restrict);
size_t mbrlen (const char *, size_t, mbstate_t *); size_t mbrlen (const char *__restrict, size_t, mbstate_t *__restrict);
size_t mbsrtowcs (wchar_t *, const char **, size_t, mbstate_t *); size_t mbsrtowcs (wchar_t *__restrict, const char **__restrict, size_t, mbstate_t *__restrict);
size_t wcsrtombs (char *, const wchar_t **, size_t, mbstate_t *); size_t wcsrtombs (char *__restrict, const wchar_t **__restrict, size_t, mbstate_t *__restrict);
float wcstof (const wchar_t *, wchar_t **); float wcstof (const wchar_t *__restrict, wchar_t **__restrict);
double wcstod (const wchar_t *, wchar_t **); double wcstod (const wchar_t *__restrict, wchar_t **__restrict);
long double wcstold (const wchar_t *, wchar_t **); long double wcstold (const wchar_t *__restrict, wchar_t **__restrict);
long wcstol (const wchar_t *, wchar_t **, int); long wcstol (const wchar_t *__restrict, wchar_t **__restrict, int);
unsigned long wcstoul (const wchar_t *, wchar_t **, int); unsigned long wcstoul (const wchar_t *__restrict, wchar_t **__restrict, int);
long long wcstoll (const wchar_t *, wchar_t **, int); long long wcstoll (const wchar_t *__restrict, wchar_t **__restrict, int);
unsigned long long wcstoull (const wchar_t *, wchar_t **, int); unsigned long long wcstoull (const wchar_t *__restrict, wchar_t **__restrict, int);
int fwide (FILE *, int); int fwide (FILE *, int);
int wprintf (const wchar_t *, ...); int wprintf (const wchar_t *__restrict, ...);
int fwprintf (FILE *, const wchar_t *, ...); int fwprintf (FILE *__restrict, const wchar_t *__restrict, ...);
int swprintf (wchar_t *, size_t, const wchar_t *, ...); int swprintf (wchar_t *__restrict, size_t, const wchar_t *__restrict, ...);
int vwprintf (const wchar_t *, va_list); int vwprintf (const wchar_t *__restrict, va_list);
int vfwprintf (FILE *, const wchar_t *, va_list); int vfwprintf (FILE *__restrict, const wchar_t *__restrict, va_list);
int vswprintf (wchar_t *, size_t, const wchar_t *, va_list); int vswprintf (wchar_t *__restrict, size_t, const wchar_t *__restrict, va_list);
int wscanf (const wchar_t *, ...); int wscanf (const wchar_t *__restrict, ...);
int fwscanf (FILE *, const wchar_t *, ...); int fwscanf (FILE *__restrict, const wchar_t *__restrict, ...);
int swscanf (const wchar_t *, const wchar_t *, ...); int swscanf (const wchar_t *__restrict, const wchar_t *__restrict, ...);
int vwscanf (const wchar_t *, va_list); int vwscanf (const wchar_t *__restrict, va_list);
int vfwscanf (FILE *, const wchar_t *, va_list); int vfwscanf (FILE *__restrict, const wchar_t *__restrict, va_list);
int vswscanf (const wchar_t *, const wchar_t *, va_list); int vswscanf (const wchar_t *__restrict, const wchar_t *__restrict, va_list);
wint_t fgetwc (FILE *); wint_t fgetwc (FILE *);
wint_t getwc (FILE *); wint_t getwc (FILE *);
@ -122,31 +128,31 @@ wint_t fputwc (wchar_t, FILE *);
wint_t putwc (wchar_t, FILE *); wint_t putwc (wchar_t, FILE *);
wint_t putwchar (wchar_t); wint_t putwchar (wchar_t);
wchar_t *fgetws (wchar_t *, int, FILE *); wchar_t *fgetws (wchar_t *__restrict, int, FILE *__restrict);
int fputws (const wchar_t *, FILE *); int fputws (const wchar_t *__restrict, FILE *__restrict);
wint_t ungetwc (wint_t, FILE *); wint_t ungetwc (wint_t, FILE *);
struct tm; struct tm;
size_t wcsftime (wchar_t *, size_t, const wchar_t *, const struct tm *); size_t wcsftime (wchar_t *__restrict, size_t, const wchar_t *__restrict, const struct tm *__restrict);
#undef iswdigit #undef iswdigit
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
FILE *open_wmemstream(wchar_t **, size_t *); FILE *open_wmemstream(wchar_t **, size_t *);
size_t mbsnrtowcs(wchar_t *, const char **, size_t, size_t, mbstate_t *); size_t mbsnrtowcs(wchar_t *__restrict, const char **__restrict, size_t, size_t, mbstate_t *__restrict);
size_t wcsnrtombs(char *, const wchar_t **, size_t, size_t, mbstate_t *); size_t wcsnrtombs(char *__restrict, const wchar_t **__restrict, size_t, size_t, mbstate_t *__restrict);
wchar_t *wcsdup(const wchar_t *); wchar_t *wcsdup(const wchar_t *);
size_t wcsnlen (const wchar_t *, size_t); size_t wcsnlen (const wchar_t *, size_t);
wchar_t *wcpcpy (wchar_t *, const wchar_t *); wchar_t *wcpcpy (wchar_t *__restrict, const wchar_t *__restrict);
wchar_t *wcpncpy (wchar_t *, const wchar_t *, size_t); wchar_t *wcpncpy (wchar_t *__restrict, const wchar_t *__restrict, size_t);
int wcscasecmp(const wchar_t *, const wchar_t *); int wcscasecmp(const wchar_t *, const wchar_t *);
int wcscasecmp_l(const wchar_t *, const wchar_t *, locale_t); int wcscasecmp_l(const wchar_t *, const wchar_t *, locale_t);
int wcsncasecmp(const wchar_t *, const wchar_t *, size_t); int wcsncasecmp(const wchar_t *, const wchar_t *, size_t);
int wcsncasecmp_l(const wchar_t *, const wchar_t *, size_t, locale_t); int wcsncasecmp_l(const wchar_t *, const wchar_t *, size_t, locale_t);
int wcscoll_l(const wchar_t *, const wchar_t *, locale_t); int wcscoll_l(const wchar_t *, const wchar_t *, locale_t);
size_t wcsxfrm_l(wchar_t *, const wchar_t *, size_t n, locale_t); size_t wcsxfrm_l(wchar_t *__restrict, const wchar_t *__restrict, size_t n, locale_t);
#endif #endif
#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)

View File

@ -5,6 +5,12 @@
extern "C" { extern "C" {
#endif #endif
#if __STDC_VERSION__ >= 199901L
#define __restrict restrict
#elif !defined(__GNUC__)
#define __restrict
#endif
#define __NEED_size_t #define __NEED_size_t
#include <bits/alltypes.h> #include <bits/alltypes.h>
@ -30,7 +36,7 @@ typedef struct
#define WRDE_CMDSUB 4 #define WRDE_CMDSUB 4
#define WRDE_SYNTAX 5 #define WRDE_SYNTAX 5
int wordexp (const char *, wordexp_t *, int); int wordexp (const char *__restrict, wordexp_t *__restrict, int);
void wordfree (wordexp_t *); void wordfree (wordexp_t *);
#ifdef __cplusplus #ifdef __cplusplus

View File

@ -64,7 +64,7 @@ static void *wait_thread(void *p)
return 0; return 0;
} }
int lio_listio(int mode, struct aiocb *const cbs[], int cnt, struct sigevent *sev) int lio_listio(int mode, struct aiocb *restrict const cbs[restrict], int cnt, struct sigevent *restrict sev)
{ {
int i, ret; int i, ret;
struct lio_state *st=0; struct lio_state *st=0;
@ -81,7 +81,7 @@ int lio_listio(int mode, struct aiocb *const cbs[], int cnt, struct sigevent *se
} }
st->cnt = cnt; st->cnt = cnt;
st->sev = sev; st->sev = sev;
memcpy(st->cbs, cbs, cnt*sizeof *cbs); memcpy(st->cbs, (void*) cbs, cnt*sizeof *cbs);
} }
for (i=0; i<cnt; i++) { for (i=0; i<cnt; i++) {

View File

@ -5,7 +5,7 @@
#include "__dirent.h" #include "__dirent.h"
#include "libc.h" #include "libc.h"
int readdir_r(DIR *dir, struct dirent *buf, struct dirent **result) int readdir_r(DIR *restrict dir, struct dirent *restrict buf, struct dirent **restrict result)
{ {
struct dirent *de; struct dirent *de;
int errno_save = errno; int errno_save = errno;

View File

@ -1,8 +1,8 @@
#include <dlfcn.h> #include <dlfcn.h>
void *__dlsym(void *, const char *, void *); void *__dlsym(void *restrict, const char *restrict, void *restrict);
void *dlsym(void *p, const char *s) void *dlsym(void *restrict p, const char *restrict s)
{ {
return __dlsym(p, s, 0); return __dlsym(p, s, 0);
} }

View File

@ -973,7 +973,7 @@ int __dladdr(void *addr, Dl_info *info)
return 1; return 1;
} }
void *__dlsym(void *p, const char *s, void *ra) void *__dlsym(void *restrict p, const char *restrict s, void *restrict ra)
{ {
void *res; void *res;
pthread_rwlock_rdlock(&lock); pthread_rwlock_rdlock(&lock);
@ -986,7 +986,7 @@ void *dlopen(const char *file, int mode)
{ {
return 0; return 0;
} }
void *__dlsym(void *p, const char *s, void *ra) void *__dlsym(void *restrict p, const char *restrict s, void *restrict ra)
{ {
return 0; return 0;
} }

View File

@ -139,7 +139,7 @@ static void put_32(unsigned char *s, unsigned c, int e)
#define mbrtowc_utf8 mbrtowc #define mbrtowc_utf8 mbrtowc
#define wctomb_utf8 wctomb #define wctomb_utf8 wctomb
size_t iconv(iconv_t cd0, char **in, size_t *inb, char **out, size_t *outb) size_t iconv(iconv_t cd0, char **restrict in, size_t *restrict inb, char **restrict out, size_t *restrict outb)
{ {
size_t x=0; size_t x=0;
unsigned long cd = (unsigned long)cd0; unsigned long cd = (unsigned long)cd0;

View File

@ -75,7 +75,7 @@ static ssize_t vstrfmon_l(char *s, size_t n, locale_t loc, const char *fmt, va_l
return s-s0; return s-s0;
} }
ssize_t strfmon_l(char *s, size_t n, locale_t loc, const char *fmt, ...) ssize_t strfmon_l(char *restrict s, size_t n, locale_t loc, const char *restrict fmt, ...)
{ {
va_list ap; va_list ap;
ssize_t ret; ssize_t ret;
@ -88,7 +88,7 @@ ssize_t strfmon_l(char *s, size_t n, locale_t loc, const char *fmt, ...)
} }
ssize_t strfmon(char *s, size_t n, const char *fmt, ...) ssize_t strfmon(char *restrict s, size_t n, const char *restrict fmt, ...)
{ {
va_list ap; va_list ap;
ssize_t ret; ssize_t ret;

View File

@ -1,7 +1,7 @@
#include <locale.h> #include <locale.h>
#include <time.h> #include <time.h>
size_t strftime_l(char *s, size_t n, const char *f, const struct tm *tm, locale_t l) size_t strftime_l(char *restrict s, size_t n, const char *restrict f, const struct tm *restrict tm, locale_t l)
{ {
return strftime(s, n, f, tm); return strftime(s, n, f, tm);
} }

View File

@ -1,7 +1,7 @@
#include <string.h> #include <string.h>
/* collate only by code points */ /* collate only by code points */
size_t strxfrm(char *dest, const char *src, size_t n) size_t strxfrm(char *restrict dest, const char *restrict src, size_t n)
{ {
size_t l = strlen(src); size_t l = strlen(src);
if (n > l) strcpy(dest, src); if (n > l) strcpy(dest, src);

View File

@ -1,6 +1,6 @@
#include <string.h> #include <string.h>
size_t strxfrm_l(char *dest, const char *src, size_t n, locale_t l) size_t strxfrm_l(char *restrict dest, const char *restrict src, size_t n, locale_t l)
{ {
return strxfrm(dest, src, n); return strxfrm(dest, src, n);
} }

View File

@ -1,7 +1,7 @@
#include <wchar.h> #include <wchar.h>
/* collate only by code points */ /* collate only by code points */
size_t wcsxfrm(wchar_t *dest, const wchar_t *src, size_t n) size_t wcsxfrm(wchar_t *restrict dest, const wchar_t *restrict src, size_t n)
{ {
size_t l = wcslen(src); size_t l = wcslen(src);
if (l >= n) { if (l >= n) {

View File

@ -1,6 +1,6 @@
#include <wchar.h> #include <wchar.h>
size_t wcsxfrm_l(wchar_t *dest, const wchar_t *src, size_t n, locale_t locale) size_t wcsxfrm_l(wchar_t *restrict dest, const wchar_t *restrict src, size_t n, locale_t locale)
{ {
return wcsxfrm(dest, src, n); return wcsxfrm(dest, src, n);
} }

View File

@ -6,7 +6,7 @@
#include <errno.h> #include <errno.h>
#include <unistd.h> #include <unistd.h>
char *realpath(const char *filename, char *resolved) char *realpath(const char *restrict filename, char *restrict resolved)
{ {
int fd; int fd;
ssize_t r; ssize_t r;

View File

@ -147,7 +147,7 @@ static int do_wordexp(const char *s, wordexp_t *we, int flags)
return err; return err;
} }
int wordexp(const char *s, wordexp_t *we, int flags) int wordexp(const char *restrict s, wordexp_t *restrict we, int flags)
{ {
int r, cs; int r, cs;
pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &cs); pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &cs);

View File

@ -1,7 +1,7 @@
#include <mqueue.h> #include <mqueue.h>
#include "syscall.h" #include "syscall.h"
int mq_setattr(mqd_t mqd, const struct mq_attr *new, struct mq_attr *old) int mq_setattr(mqd_t mqd, const struct mq_attr *restrict new, struct mq_attr *restrict old)
{ {
return syscall(SYS_mq_getsetattr, mqd, new, old); return syscall(SYS_mq_getsetattr, mqd, new, old);
} }

View File

@ -1,7 +1,7 @@
#include <mqueue.h> #include <mqueue.h>
#include "syscall.h" #include "syscall.h"
ssize_t mq_timedreceive(mqd_t mqd, char *msg, size_t len, unsigned *prio, const struct timespec *at) ssize_t mq_timedreceive(mqd_t mqd, char *restrict msg, size_t len, unsigned *restrict prio, const struct timespec *restrict at)
{ {
return syscall_cp(SYS_mq_timedreceive, mqd, msg, len, prio, at); return syscall_cp(SYS_mq_timedreceive, mqd, msg, len, prio, at);
} }

View File

@ -11,7 +11,7 @@
#include "internal.h" #include "internal.h"
size_t mbrlen(const char *s, size_t n, mbstate_t *st) size_t mbrlen(const char *restrict s, size_t n, mbstate_t *restrict st)
{ {
static unsigned internal; static unsigned internal;
return mbrtowc(0, s, n, st ? st : (mbstate_t *)&internal); return mbrtowc(0, s, n, st ? st : (mbstate_t *)&internal);

View File

@ -11,7 +11,7 @@
#include "internal.h" #include "internal.h"
size_t mbrtowc(wchar_t *wc, const char *src, size_t n, mbstate_t *st) size_t mbrtowc(wchar_t *restrict wc, const char *restrict src, size_t n, mbstate_t *restrict st)
{ {
static unsigned internal_state; static unsigned internal_state;
unsigned c; unsigned c;

View File

@ -12,7 +12,7 @@
#include "internal.h" #include "internal.h"
size_t mbsnrtowcs(wchar_t *wcs, const char **src, size_t n, size_t wn, mbstate_t *st) size_t mbsnrtowcs(wchar_t *restrict wcs, const char **restrict src, size_t n, size_t wn, mbstate_t *restrict st)
{ {
size_t l, cnt=0, n2; size_t l, cnt=0, n2;
wchar_t *ws, wbuf[256]; wchar_t *ws, wbuf[256];

View File

@ -11,7 +11,7 @@
#include "internal.h" #include "internal.h"
size_t mbsrtowcs(wchar_t *ws, const char **src, size_t wn, mbstate_t *st) size_t mbsrtowcs(wchar_t *restrict ws, const char **restrict src, size_t wn, mbstate_t *restrict st)
{ {
unsigned c; unsigned c;
const unsigned char *s = (const void *)*src; const unsigned char *s = (const void *)*src;

View File

@ -11,7 +11,7 @@
#include "internal.h" #include "internal.h"
size_t mbstowcs(wchar_t *ws, const char *s, size_t wn) size_t mbstowcs(wchar_t *restrict ws, const char *restrict s, size_t wn)
{ {
mbstate_t st = { 0 }; mbstate_t st = { 0 };
return mbsrtowcs(ws, (void*)&s, wn, &st); return mbsrtowcs(ws, (void*)&s, wn, &st);

View File

@ -11,7 +11,7 @@
#include "internal.h" #include "internal.h"
int mbtowc(wchar_t *wc, const char *s, size_t n) int mbtowc(wchar_t *restrict wc, const char *restrict s, size_t n)
{ {
mbstate_t st = { 0 }; mbstate_t st = { 0 };
n = mbrtowc(wc, s, n, &st); n = mbrtowc(wc, s, n, &st);

View File

@ -11,7 +11,7 @@
#include "internal.h" #include "internal.h"
size_t wcrtomb(char *s, wchar_t wc, mbstate_t *st) size_t wcrtomb(char *restrict s, wchar_t wc, mbstate_t *restrict st)
{ {
if (!s) return 1; if (!s) return 1;
if ((unsigned)wc < 0x80) { if ((unsigned)wc < 0x80) {

View File

@ -11,7 +11,7 @@
#include "internal.h" #include "internal.h"
size_t wcsnrtombs(char *dst, const wchar_t **wcs, size_t wn, size_t n, mbstate_t *st) size_t wcsnrtombs(char *restrict dst, const wchar_t **restrict wcs, size_t wn, size_t n, mbstate_t *restrict st)
{ {
size_t l, cnt=0, n2; size_t l, cnt=0, n2;
char *s, buf[256]; char *s, buf[256];

View File

@ -11,7 +11,7 @@
#include "internal.h" #include "internal.h"
size_t wcsrtombs(char *s, const wchar_t **ws, size_t n, mbstate_t *st) size_t wcsrtombs(char *restrict s, const wchar_t **restrict ws, size_t n, mbstate_t *restrict st)
{ {
const wchar_t *ws2; const wchar_t *ws2;
char buf[4]; char buf[4];

View File

@ -11,7 +11,8 @@
#include "internal.h" #include "internal.h"
size_t wcstombs(char *s, const wchar_t *ws, size_t n) size_t wcstombs(char *restrict s, const wchar_t *restrict ws, size_t n)
{ {
return wcsrtombs(s, &ws, n, 0); const wchar_t * x = ws;
return wcsrtombs(s, &x, n, 0);
} }

View File

@ -2,7 +2,7 @@
#include "syscall.h" #include "syscall.h"
#include "libc.h" #include "libc.h"
int accept(int fd, struct sockaddr *addr, socklen_t *len) int accept(int fd, struct sockaddr *restrict addr, socklen_t *restrict len)
{ {
return socketcall_cp(accept, fd, addr, len, 0, 0, 0); return socketcall_cp(accept, fd, addr, len, 0, 0, 0);
} }

View File

@ -47,7 +47,7 @@ struct aibuf {
/* Extra slots needed for storing canonical name */ /* Extra slots needed for storing canonical name */
#define EXTRA ((256+sizeof(struct aibuf)-1)/sizeof(struct aibuf)) #define EXTRA ((256+sizeof(struct aibuf)-1)/sizeof(struct aibuf))
int getaddrinfo(const char *host, const char *serv, const struct addrinfo *hint, struct addrinfo **res) int getaddrinfo(const char *restrict host, const char *restrict serv, const struct addrinfo *restrict hint, struct addrinfo **restrict res)
{ {
int flags = hint ? hint->ai_flags : 0; int flags = hint ? hint->ai_flags : 0;
int family = hint ? hint->ai_family : AF_UNSPEC; int family = hint ? hint->ai_family : AF_UNSPEC;

View File

@ -8,9 +8,9 @@
#include <arpa/inet.h> #include <arpa/inet.h>
#include "__dns.h" #include "__dns.h"
int getnameinfo(const struct sockaddr *sa, socklen_t sl, int getnameinfo(const struct sockaddr *restrict sa, socklen_t sl,
char *node, socklen_t nodelen, char *restrict node, socklen_t nodelen,
char *serv, socklen_t servlen, char *restrict serv, socklen_t servlen,
int flags) int flags)
{ {
char buf[256]; char buf[256];

View File

@ -1,7 +1,7 @@
#include <sys/socket.h> #include <sys/socket.h>
#include "syscall.h" #include "syscall.h"
int getpeername(int fd, struct sockaddr *addr, socklen_t *len) int getpeername(int fd, struct sockaddr *restrict addr, socklen_t *restrict len)
{ {
return socketcall(getpeername, fd, addr, len, 0, 0, 0); return socketcall(getpeername, fd, addr, len, 0, 0, 0);
} }

View File

@ -1,7 +1,7 @@
#include <sys/socket.h> #include <sys/socket.h>
#include "syscall.h" #include "syscall.h"
int getsockname(int fd, struct sockaddr *addr, socklen_t *len) int getsockname(int fd, struct sockaddr *restrict addr, socklen_t *restrict len)
{ {
return socketcall(getsockname, fd, addr, len, 0, 0, 0); return socketcall(getsockname, fd, addr, len, 0, 0, 0);
} }

View File

@ -1,7 +1,7 @@
#include <sys/socket.h> #include <sys/socket.h>
#include "syscall.h" #include "syscall.h"
int getsockopt(int fd, int level, int optname, void *optval, socklen_t *optlen) int getsockopt(int fd, int level, int optname, void *restrict optval, socklen_t *restrict optlen)
{ {
return socketcall(getsockopt, fd, level, optname, optval, optlen, 0); return socketcall(getsockopt, fd, level, optname, optval, optlen, 0);
} }

View File

@ -6,7 +6,7 @@
#include <stdio.h> #include <stdio.h>
#include <string.h> #include <string.h>
const char *inet_ntop(int af, const void *a0, char *s, socklen_t l) const char *inet_ntop(int af, const void *restrict a0, char *restrict s, socklen_t l)
{ {
const unsigned char *a = a0; const unsigned char *a = a0;
int i, j, max, best; int i, j, max, best;

View File

@ -14,7 +14,7 @@ static int hexval(unsigned c)
return -1; return -1;
} }
int inet_pton(int af, const char *s, void *a0) int inet_pton(int af, const char *restrict s, void *restrict a0)
{ {
uint16_t ip[8]; uint16_t ip[8];
unsigned char *a = a0; unsigned char *a = a0;

View File

@ -2,7 +2,7 @@
#include "syscall.h" #include "syscall.h"
#include "libc.h" #include "libc.h"
ssize_t recvfrom(int fd, void *buf, size_t len, int flags, struct sockaddr *addr, socklen_t *alen) ssize_t recvfrom(int fd, void *restrict buf, size_t len, int flags, struct sockaddr *restrict addr, socklen_t *restrict alen)
{ {
return socketcall_cp(recvfrom, fd, buf, len, flags, addr, alen); return socketcall_cp(recvfrom, fd, buf, len, flags, addr, alen);
} }

View File

@ -8,11 +8,11 @@
extern char **environ; extern char **environ;
int __posix_spawnx(pid_t *res, const char *path, int __posix_spawnx(pid_t *restrict res, const char *restrict path,
int (*exec)(const char *, char *const *), int (*exec)(const char *, char *const *),
const posix_spawn_file_actions_t *fa, const posix_spawn_file_actions_t *fa,
const posix_spawnattr_t *attr, const posix_spawnattr_t *restrict attr,
char *const argv[], char *const envp[]) char *const argv[restrict], char *const envp[restrict])
{ {
pid_t pid; pid_t pid;
sigset_t oldmask; sigset_t oldmask;
@ -89,10 +89,10 @@ int __posix_spawnx(pid_t *res, const char *path,
return 0; return 0;
} }
int posix_spawn(pid_t *res, const char *path, int posix_spawn(pid_t *restrict res, const char *restrict path,
const posix_spawn_file_actions_t *fa, const posix_spawn_file_actions_t *fa,
const posix_spawnattr_t *attr, const posix_spawnattr_t *restrict attr,
char *const argv[], char *const envp[]) char *const argv[restrict], char *const envp[restrict])
{ {
return __posix_spawnx(res, path, execv, fa, attr, argv, envp); return __posix_spawnx(res, path, execv, fa, attr, argv, envp);
} }

View File

@ -4,7 +4,7 @@
#include <errno.h> #include <errno.h>
#include "fdop.h" #include "fdop.h"
int posix_spawn_file_actions_addopen(posix_spawn_file_actions_t *fa, int fd, const char *path, int flags, mode_t mode) int posix_spawn_file_actions_addopen(posix_spawn_file_actions_t *restrict fa, int fd, const char *restrict path, int flags, mode_t mode)
{ {
struct fdop *op = malloc(sizeof *op + strlen(path) + 1); struct fdop *op = malloc(sizeof *op + strlen(path) + 1);
if (!op) return ENOMEM; if (!op) return ENOMEM;

View File

@ -1,6 +1,6 @@
#include <spawn.h> #include <spawn.h>
int posix_spawnattr_getflags(const posix_spawnattr_t *attr, short *flags) int posix_spawnattr_getflags(const posix_spawnattr_t *restrict attr, short *restrict flags)
{ {
*flags = attr->__flags; *flags = attr->__flags;
return 0; return 0;

View File

@ -1,6 +1,6 @@
#include <spawn.h> #include <spawn.h>
int posix_spawnattr_getpgroup(const posix_spawnattr_t *attr, pid_t *pgrp) int posix_spawnattr_getpgroup(const posix_spawnattr_t *restrict attr, pid_t *restrict pgrp)
{ {
*pgrp = attr->__pgrp; *pgrp = attr->__pgrp;
return 0; return 0;

View File

@ -1,6 +1,6 @@
#include <spawn.h> #include <spawn.h>
int posix_spawnattr_getsigdefault(const posix_spawnattr_t *attr, sigset_t *def) int posix_spawnattr_getsigdefault(const posix_spawnattr_t *restrict attr, sigset_t *restrict def)
{ {
*def = attr->__def; *def = attr->__def;
return 0; return 0;

View File

@ -1,6 +1,6 @@
#include <spawn.h> #include <spawn.h>
int posix_spawnattr_getsigmask(const posix_spawnattr_t *attr, sigset_t *mask) int posix_spawnattr_getsigmask(const posix_spawnattr_t *restrict attr, sigset_t *restrict mask)
{ {
*mask = attr->__mask; *mask = attr->__mask;
return 0; return 0;

View File

@ -1,6 +1,6 @@
#include <spawn.h> #include <spawn.h>
int posix_spawnattr_setsigdefault(posix_spawnattr_t *attr, const sigset_t *def) int posix_spawnattr_setsigdefault(posix_spawnattr_t *restrict attr, const sigset_t *restrict def)
{ {
attr->__def = *def; attr->__def = *def;
return 0; return 0;

View File

@ -1,6 +1,6 @@
#include <spawn.h> #include <spawn.h>
int posix_spawnattr_setsigmask(posix_spawnattr_t *attr, const sigset_t *mask) int posix_spawnattr_setsigmask(posix_spawnattr_t *restrict attr, const sigset_t *restrict mask)
{ {
attr->__mask = *mask; attr->__mask = *mask;
return 0; return 0;

View File

@ -1,15 +1,15 @@
#include <spawn.h> #include <spawn.h>
#include <unistd.h> #include <unistd.h>
int __posix_spawnx(pid_t *, const char *, int __posix_spawnx(pid_t *restrict, const char *restrict,
int (*)(const char *, char *const *), int (*)(const char *, char *const *),
const posix_spawn_file_actions_t *, const posix_spawn_file_actions_t *,
const posix_spawnattr_t *, char *const [], char *const []); const posix_spawnattr_t *restrict, char *const *restrict, char *const *restrict);
int posix_spawnp(pid_t *res, const char *file, int posix_spawnp(pid_t *restrict res, const char *restrict file,
const posix_spawn_file_actions_t *fa, const posix_spawn_file_actions_t *fa,
const posix_spawnattr_t *attr, const posix_spawnattr_t *restrict attr,
char *const argv[], char *const envp[]) char *const argv[restrict], char *const envp[restrict])
{ {
return __posix_spawnx(res, file, execvp, fa, attr, argv, envp); return __posix_spawnx(res, file, execvp, fa, attr, argv, envp);
} }

View File

@ -156,7 +156,7 @@ static int sort(const void *a, const void *b)
return strcmp(*(const char **)a, *(const char **)b); return strcmp(*(const char **)a, *(const char **)b);
} }
int glob(const char *pat, int flags, int (*errfunc)(const char *path, int err), glob_t *g) int glob(const char *restrict pat, int flags, int (*errfunc)(const char *path, int err), glob_t *restrict g)
{ {
const char *p=pat, *d; const char *p=pat, *d;
struct match head = { .next = NULL }, *tail = &head; struct match head = { .next = NULL }, *tail = &head;

View File

@ -3091,7 +3091,7 @@ tre_ast_to_tnfa(tre_ast_node_t *node, tre_tnfa_transition_t *transitions,
int int
regcomp(regex_t *preg, const char *regex, int cflags) regcomp(regex_t *restrict preg, const char *restrict regex, int cflags)
{ {
tre_stack_t *stack; tre_stack_t *stack;
tre_ast_node_t *tree, *tmp_ast_l, *tmp_ast_r; tre_ast_node_t *tree, *tmp_ast_l, *tmp_ast_r;

View File

@ -26,7 +26,7 @@ static const char messages[] = {
"\0Unknown error" "\0Unknown error"
}; };
size_t regerror(int e, const regex_t *preg, char *buf, size_t size) size_t regerror(int e, const regex_t *restrict preg, char *restrict buf, size_t size)
{ {
const char *s; const char *s;
for (s=messages; e && *s; e--, s+=strlen(s)+1); for (s=messages; e && *s; e--, s+=strlen(s)+1);

View File

@ -977,8 +977,8 @@ tre_fill_pmatch(size_t nmatch, regmatch_t pmatch[], int cflags,
*/ */
int int
regexec(const regex_t *preg, const char *string, regexec(const regex_t *restrict preg, const char *restrict string,
size_t nmatch, regmatch_t pmatch[], int eflags) size_t nmatch, regmatch_t pmatch[restrict], int eflags)
{ {
tre_tnfa_t *tnfa = (void *)preg->TRE_REGEX_T_FIELD; tre_tnfa_t *tnfa = (void *)preg->TRE_REGEX_T_FIELD;
reg_errcode_t status; reg_errcode_t status;

View File

@ -2,7 +2,7 @@
#include "syscall.h" #include "syscall.h"
#include "libc.h" #include "libc.h"
int pselect(int n, fd_set *rfds, fd_set *wfds, fd_set *efds, const struct timespec *ts, const sigset_t *mask) int pselect(int n, fd_set *restrict rfds, fd_set *restrict wfds, fd_set *restrict efds, const struct timespec *restrict ts, const sigset_t *restrict mask)
{ {
long data[2] = { (long)mask, __SYSCALL_SSLEN }; long data[2] = { (long)mask, __SYSCALL_SSLEN };
struct timespec ts_tmp; struct timespec ts_tmp;

View File

@ -2,7 +2,7 @@
#include "syscall.h" #include "syscall.h"
#include "libc.h" #include "libc.h"
int select(int n, fd_set *rfds, fd_set *wfds, fd_set *efds, struct timeval *tv) int select(int n, fd_set *restrict rfds, fd_set *restrict wfds, fd_set *restrict efds, struct timeval *restrict tv)
{ {
return syscall_cp(SYS_select, n, rfds, wfds, efds, tv); return syscall_cp(SYS_select, n, rfds, wfds, efds, tv);
} }

View File

@ -1,7 +1,7 @@
#include <sys/time.h> #include <sys/time.h>
#include "syscall.h" #include "syscall.h"
int setitimer(int which, const struct itimerval *new, struct itimerval *old) int setitimer(int which, const struct itimerval *restrict new, struct itimerval *restrict old)
{ {
return syscall(SYS_setitimer, which, new, old); return syscall(SYS_setitimer, which, new, old);
} }

View File

@ -11,7 +11,7 @@ void __restore(), __restore_rt();
static pthread_t dummy(void) { return 0; } static pthread_t dummy(void) { return 0; }
weak_alias(dummy, __pthread_self_def); weak_alias(dummy, __pthread_self_def);
int __libc_sigaction(int sig, const struct sigaction *sa, struct sigaction *old) int __libc_sigaction(int sig, const struct sigaction *restrict sa, struct sigaction *restrict old)
{ {
struct k_sigaction ksa; struct k_sigaction ksa;
if (sa) { if (sa) {
@ -31,7 +31,7 @@ int __libc_sigaction(int sig, const struct sigaction *sa, struct sigaction *old)
return 0; return 0;
} }
int __sigaction(int sig, const struct sigaction *sa, struct sigaction *old) int __sigaction(int sig, const struct sigaction *restrict sa, struct sigaction *restrict old)
{ {
if (sig-32U < 3) { if (sig-32U < 3) {
errno = EINVAL; errno = EINVAL;

View File

@ -2,7 +2,7 @@
#include <errno.h> #include <errno.h>
#include "syscall.h" #include "syscall.h"
int sigaltstack(const stack_t *ss, stack_t *old) int sigaltstack(const stack_t *restrict ss, stack_t *restrict old)
{ {
if (ss) { if (ss) {
if (ss->ss_size < MINSIGSTKSZ) { if (ss->ss_size < MINSIGSTKSZ) {

View File

@ -1,7 +1,7 @@
#include <signal.h> #include <signal.h>
#include <errno.h> #include <errno.h>
int sigprocmask(int how, const sigset_t *set, sigset_t *old) int sigprocmask(int how, const sigset_t *restrict set, sigset_t *restrict old)
{ {
int r = pthread_sigmask(how, set, old); int r = pthread_sigmask(how, set, old);
if (!r) return r; if (!r) return r;

View File

@ -3,7 +3,7 @@
#include "syscall.h" #include "syscall.h"
#include "libc.h" #include "libc.h"
int sigtimedwait(const sigset_t *mask, siginfo_t *si, const struct timespec *timeout) int sigtimedwait(const sigset_t *restrict mask, siginfo_t *restrict si, const struct timespec *restrict timeout)
{ {
int ret; int ret;
do ret = syscall_cp(SYS_rt_sigtimedwait, mask, do ret = syscall_cp(SYS_rt_sigtimedwait, mask,

View File

@ -1,7 +1,7 @@
#include <signal.h> #include <signal.h>
#include <stddef.h> #include <stddef.h>
int sigwait(const sigset_t *mask, int *sig) int sigwait(const sigset_t *restrict mask, int *restrict sig)
{ {
siginfo_t si; siginfo_t si;
if (sigtimedwait(mask, &si, NULL) < 0) if (sigtimedwait(mask, &si, NULL) < 0)

View File

@ -1,7 +1,7 @@
#include <signal.h> #include <signal.h>
#include <stddef.h> #include <stddef.h>
int sigwaitinfo(const sigset_t *mask, siginfo_t *si) int sigwaitinfo(const sigset_t *restrict mask, siginfo_t *restrict si)
{ {
return sigtimedwait(mask, si, NULL); return sigtimedwait(mask, si, NULL);
} }

View File

@ -2,7 +2,7 @@
#include "syscall.h" #include "syscall.h"
#include "libc.h" #include "libc.h"
int fstatat(int fd, const char *path, struct stat *buf, int flag) int fstatat(int fd, const char *restrict path, struct stat *restrict buf, int flag)
{ {
return syscall(SYS_fstatat, fd, path, buf, flag); return syscall(SYS_fstatat, fd, path, buf, flag);
} }

View File

@ -2,7 +2,7 @@
#include "syscall.h" #include "syscall.h"
#include "libc.h" #include "libc.h"
int lstat(const char *path, struct stat *buf) int lstat(const char *restrict path, struct stat *restrict buf)
{ {
return syscall(SYS_lstat, path, buf); return syscall(SYS_lstat, path, buf);
} }

View File

@ -2,7 +2,7 @@
#include "syscall.h" #include "syscall.h"
#include "libc.h" #include "libc.h"
int stat(const char *path, struct stat *buf) int stat(const char *restrict path, struct stat *restrict buf)
{ {
return syscall(SYS_stat, path, buf); return syscall(SYS_stat, path, buf);
} }

View File

@ -39,7 +39,7 @@ static void fixup(struct statvfs *out, const struct statfs *in)
out->f_namemax = in->f_namelen; out->f_namemax = in->f_namelen;
} }
int statvfs(const char *path, struct statvfs *buf) int statvfs(const char *restrict path, struct statvfs *restrict buf)
{ {
struct statfs kbuf; struct statfs kbuf;
if (__statfs(path, &kbuf)<0) return -1; if (__statfs(path, &kbuf)<0) return -1;

View File

@ -1,7 +1,7 @@
#include <stdio.h> #include <stdio.h>
#include <stdarg.h> #include <stdarg.h>
int dprintf(int fd, const char *fmt, ...) int dprintf(int fd, const char *restrict fmt, ...)
{ {
int ret; int ret;
va_list ap; va_list ap;

View File

@ -1,6 +1,6 @@
#include "stdio_impl.h" #include "stdio_impl.h"
int fgetpos(FILE *f, fpos_t *pos) int fgetpos(FILE *restrict f, fpos_t *restrict pos)
{ {
off_t off = __ftello(f); off_t off = __ftello(f);
if (off < 0) return -1; if (off < 0) return -1;

View File

@ -2,7 +2,7 @@
#define MIN(a,b) ((a)<(b) ? (a) : (b)) #define MIN(a,b) ((a)<(b) ? (a) : (b))
char *fgets(char *s, int n, FILE *f) char *fgets(char *restrict s, int n, FILE *restrict f)
{ {
char *p = s; char *p = s;
unsigned char *z; unsigned char *z;

View File

@ -2,7 +2,7 @@
wint_t __fgetwc_unlocked(FILE *); wint_t __fgetwc_unlocked(FILE *);
wchar_t *fgetws(wchar_t *s, int n, FILE *f) wchar_t *fgetws(wchar_t *restrict s, int n, FILE *restrict f)
{ {
wchar_t *p = s; wchar_t *p = s;

View File

@ -67,7 +67,7 @@ static int mclose(FILE *m)
return 0; return 0;
} }
FILE *fmemopen(void *buf, size_t size, const char *mode) FILE *fmemopen(void *restrict buf, size_t size, const char *restrict mode)
{ {
FILE *f; FILE *f;
struct cookie *c; struct cookie *c;

View File

@ -1,6 +1,6 @@
#include "stdio_impl.h" #include "stdio_impl.h"
FILE *fopen(const char *filename, const char *mode) FILE *fopen(const char *restrict filename, const char *restrict mode)
{ {
FILE *f; FILE *f;
int fd; int fd;

View File

@ -1,7 +1,7 @@
#include <stdio.h> #include <stdio.h>
#include <stdarg.h> #include <stdarg.h>
int fprintf(FILE *f, const char *fmt, ...) int fprintf(FILE *restrict f, const char *restrict fmt, ...)
{ {
int ret; int ret;
va_list ap; va_list ap;

View File

@ -1,6 +1,6 @@
#include "stdio_impl.h" #include "stdio_impl.h"
int fputs(const char *s, FILE *f) int fputs(const char *restrict s, FILE *restrict f)
{ {
size_t l = strlen(s); size_t l = strlen(s);
if (!l) return 0; if (!l) return 0;

View File

@ -1,6 +1,6 @@
#include "stdio_impl.h" #include "stdio_impl.h"
int fputws(const wchar_t *ws, FILE *f) int fputws(const wchar_t *restrict ws, FILE *restrict f)
{ {
unsigned char buf[BUFSIZ]; unsigned char buf[BUFSIZ];
size_t l=0; size_t l=0;

View File

@ -2,7 +2,7 @@
#define MIN(a,b) ((a)<(b) ? (a) : (b)) #define MIN(a,b) ((a)<(b) ? (a) : (b))
size_t fread(void *destv, size_t size, size_t nmemb, FILE *f) size_t fread(void *restrict destv, size_t size, size_t nmemb, FILE *restrict f)
{ {
unsigned char *dest = destv; unsigned char *dest = destv;
size_t len = size*nmemb, l = len, k; size_t len = size*nmemb, l = len, k;

View File

@ -7,7 +7,7 @@
/* Locking is not necessary because, in the event of failure, the stream /* Locking is not necessary because, in the event of failure, the stream
* passed to freopen is invalid as soon as freopen is called. */ * passed to freopen is invalid as soon as freopen is called. */
FILE *freopen(const char *filename, const char *mode, FILE *f) FILE *freopen(const char *restrict filename, const char *restrict mode, FILE *restrict f)
{ {
int fl; int fl;
FILE *f2; FILE *f2;

View File

@ -1,7 +1,7 @@
#include <stdio.h> #include <stdio.h>
#include <stdarg.h> #include <stdarg.h>
int fscanf(FILE *f, const char *fmt, ...) int fscanf(FILE *restrict f, const char *restrict fmt, ...)
{ {
int ret; int ret;
va_list ap; va_list ap;

Some files were not shown because too many files have changed in this diff Show More