tools/adflib: build only host variant which is used by Sam440 target
[AROS.git] / compiler / posixc / posixc.conf
blobb2db27a621703f5e949cefcfe3456f5a9b8e93c9
1 ##begin config
2 version 0.3
3 basename PosixC
4 libbasetypeextern struct PosixCBase
5 libbasetype struct PosixCIntBase
6 options pertaskbase,rellinklib
7 ##end config
9 ##begin cdef
10 #include <libraries/posixc.h>
11 #include <stdlib.h>
12 #include <grp.h>
13 #include <time.h>
14 #include <unistd.h>
15 #include <stdio.h>
16 #include <sys/stat.h>
17 #include <dirent.h>
18 #include <sys/resource.h>
19 #include <sys/mount.h>
20 #include <sys/time.h>
21 #include <sys/times.h>
22 #include <signal.h>
23 #include <regex.h>
24 #include <sys/utsname.h>
25 #include <termios.h>
26 #include <utime.h>
28 #undef __assert /* We replace the aroscstddos __assert with our own */
29 ##end cdef
31 ##begin cdefprivate
32 #include "__posixc_intbase.h"
33 ##end cdefprivate
35 ##begin startup
36 #include "posixc_startup.c"
37 ##end startup
39 ##begin functionlist
40 # == internal functions ==
41 int __posixc_nixmain(int (*main)(int argc, char *argv[]), int argc, char *argv[])
42 .skip 9
44 # == POSIX.1-2008 ==
45 # * aio.h
46 .skip 8
47 #int aio_cancel(int, struct aiocb *)
48 #int aio_error(const struct aiocb *)
49 #int aio_fsync(int, struct aiocb *)
50 #int aio_read(struct aiocb *)
51 #ssize_t aio_return(struct aiocb *)
52 #int aio_suspend(const struct aiocb *const [], int, const struct timespec *)
53 #int aio_write(struct aiocb *)
54 #int lio_listio(int, struct aiocb *restrict const [restrict], int, struct sigevent *restrict)
56 # * arpa/inet.h
57 .skip 8
58 #uint32_t htonl(uint32_t)
59 #uint16_t htons(uint16_t)
60 #uint32_t ntohl(uint32_t)
61 #uint16_t ntohs(uint16_t)
62 #in_addr_t inet_addr(const char *)
63 #char *inet_ntoa(struct in_addr)
64 #const char  *inet_ntop(int, const void *restrict, char *restrict, socklen_t)
65 #int inet_pton(int, const char *restrict, void *restrict)
67 # * assert.h
68 void __posixc_assert (const char *, const char *, unsigned int)
69 .alias __assert
71 # * complex.h: not implemented in posixc.library
73 # * cpio.h: no functions in cpio.h
75 # * ctype.h: Reserve the LVOs, we may want to provide our own implementation
76 .skip 32
77 #int isalnum(int)
78 #int isalnum_l(int, locale_t)
79 #int isalpha(int)
80 #int isalpha_l(int, locale_t)
81 #int isascii(int)
82 #int isblank(int)
83 #int isblank_l(int, locale_t)
84 #int iscntrl(int)
85 #int iscntrl_l(int, locale_t)
86 #int isdigit(int)
87 #int isdigit_l(int, locale_t)
88 #int isgraph(int)
89 #int isgraph_l(int, locale_t)
90 #int islower(int)
91 #int islower_l(int, locale_t)
92 #int isprint(int)
93 #int isprint_l(int, locale_t)
94 #int ispunct(int)
95 #int ispunct_l(int, locale_t)
96 #int isspace(int)
97 #int isspace_l(int, locale_t)
98 #int isupper(int)
99 #int isupper_l(int, locale_t)
100 #int isxdigit(int)
101 #int isxdigit_l(int, locale_t)
102 #int toascii(int)
103 #int tolower(int)
104 #int tolower_l(int, locale_t)
105 #int toupper(int)
106 #int toupper_l(int, locale_t)
107 #int _toupper(int)
108 #int _tolower(int)
110 # * dirent.h
111 .skip 1
112 #int alphasort(const struct dirent **a, const struct dirent **b)
113 int closedir(DIR *dir)
114 int dirfd(DIR *dir)
115 .skip 1
116 #DIR *fdopendir(int)
117 DIR *opendir(const char *filename)
118 struct dirent *readdir(DIR *dir)
119 .skip 1
120 #int readdir_r(DIR *restrict, struct dirent *restrict, struct dirent **restrict)
121 void rewinddir(DIR *dir)
122 .skip 1
123 #int scandir (const char *dir, struct dirent ***namelist, int (*select)(const struct dirent *), int (*compar)(const struct dirent **, const struct dirent **))
124 void seekdir(DIR *dir, off_t loc)
125 long telldir(DIR *dir)
127 # * dlfcn.h
128 .skip 4
129 #int dlclose(void *)
130 #char *dlerror(void)
131 #void *dlopen(const char *, int)
132 #void *dlsym(void *restrict, const char *restrict)
134 # * errno.h: no functions in errno.h
136 # * fcntl.h
137 int creat (const char * filename, int mode)
138 int fcntl (int fd, int cmd, ...)
139 int open  (const char * filename, int flags, ...)
140 .skip 3
141 #int openat(int, const char *, int, ...)
142 #int posix_fadvise(int fd, off_t offset, size_t len, int advice)
143 #int posix_fallocate(int fd, off_t offset, size_t len)
145 # * fenv.h: not implemented in posixc.library
147 # * float.h: not implemented in posixc.library
149 # * fmtmsg.h
150 .skip 1
151 #int fmtmsg(long, const char *, int, const char *, const char *, const char *)
153 # * fnmatch.h
154 .skip 1
155 #int fnmatch(const char *, const char *, int)
157 # * ftw.h
158 .skip 2
159 #int ftw(const char *, int (*)(const char *, const struct stat *, int), int)
160 #int nftw(const char *, int (*)(const char *, const struct stat *, int, struct FTW *), int, int)
162 # * glob.h
163 .skip 2
164 #int glob(const char *restrict, int, int(*)(const char *, int), glob_t *restrict)
165 #void globfree(glob_t *)
167 # * grp.h
168 void endgrent(void)
169 struct group *getgrent(void)
170 struct group *getgrgid(gid_t)
171 .skip 1
172 #int getgrgid_r(gid_t, struct group *, char *, size_t, struct group **)
173 struct group *getgrnam(const char *)
174 .skip 1
175 #int getgrnam_r(const char *, struct group *, char *, size_t , struct group **)
176 void setgrent(void)
178 # * iconv.h
179 .skip 3
180 #size_t iconv(iconv_t, char **restrict, size_t *restrict, char **restrict, size_t *restrict)
181 #int iconv_close(iconv_t)
182 #iconv_t iconv_open(const char *, const char *)
184 # * inttypes.h: no POSIX specific functions in inttypes.h
186 # * iso646.h: no functions in iso646.h
188 # * langinfo.h
189 .skip 2
190 #char *nl_langinfo(nl_item)
191 #char *nl_langinfo_l(nl_item, locale_t)
193 # * libgen.h
194 char *basename(char *)
195 char *dirname(char *)
197 # * limits.h: no functions in limits.h
199 # * locale.h: Reserve the LVOs, we may want to provide our own implementation
200 .skip 6
201 #locale_t duplocale(locale_t)
202 #void freelocale(locale_t)
203 #struct lconv *localeconv(void)
204 #locale_t newlocale(int, const char *, locale_t)
205 #char *setlocale(int, const char *)
206 #locale_t uselocale (locale_t)
208 # * math.h: not implemented in posixc.library
210 # * monetary.h
211 .skip 2
212 #ssize_t strfmon(char *restrict, size_t, const char *restrict, ...)
213 #ssize_t strfmon_l(char *restrict, size_t, locale_t, const char *restrict, ...)
215 # * mqueue.h
216 .skip 10
217 #int mq_close(mqd_t)
218 #int mq_getattr(mqd_t, struct mq_attr *)
219 #int mq_notify(mqd_t, const struct sigevent *)
220 #mqd_t mq_open(const char *, int, ...)
221 #ssize_t mq_receive(mqd_t, char *, size_t, unsigned *)
222 #int mq_send(mqd_t, const char *, size_t, unsigned)
223 #int mq_setattr(mqd_t, const struct mq_attr *restrict, struct mq_attr *restrict)
224 #ssize_t mq_timedreceive(mqd_t, char *restrict, size_t, unsigned *restrict, const struct timespec *restrict)
225 #int mq_timedsend(mqd_t, const char *, size_t, unsigned, const struct timespec *)
226 #int mq_unlink(const char *)
228 # * ndbm.h
229 .skip 9
230 #int dbm_clearerr(DBM *)
231 #void dbm_close(DBM *)
232 #int dbm_delete(DBM *, datum)
233 #int dbm_error(DBM *)
234 #datum dbm_fetch(DBM *, datum)
235 #datum dbm_firstkey(DBM *)
236 #datum dbm_nextkey(DBM *)
237 #DBM *dbm_open(const char *, int, mode_t)
238 #int dbm_store(DBM *, datum, datum, int)
240 # * net/if.h
241 .skip 4
242 #void if_freenameindex(struct if_nameindex *)
243 #char *if_indextoname(unsigned, char *)
244 #struct if_nameindex *if_nameindex(void)
245 #unsigned if_nametoindex(const char *)
247 # * netdb.h
248 .skip 22
249 #void endhostent(void)
250 #void endnetent(void)
251 #void endprotoent(void)
252 #void endservent(void)
253 #void freeaddrinfo(struct addrinfo *)
254 #const char *gai_strerror(int)
255 #int getaddrinfo(const char *restrict, const char *restrict, const struct addrinfo *restrict, struct addrinfo **restrict)
256 #struct hostent *gethostent(void)
257 #int getnameinfo(const struct sockaddr *restrict, socklen_t, char *restrict, socklen_t, char *restrict, socklen_t, int)
258 #struct netent *getnetbyaddr(uint32_t, int)
259 #struct netent *getnetbyname(const char *)
260 #struct netent *getnetent(void)
261 #struct protoent *getprotobyname(const char *)
262 #struct protoent *getprotobynumber(int)
263 #struct protoent *getprotoent(void)
264 #struct servent *getservbyname(const char *, const char *)
265 #struct servent *getservbyport(int, const char *)
266 #struct servent *getservent(void)
267 #void sethostent(int)
268 #void setnetent(int)
269 #void setprotoent(int)
270 #void setservent(int)
272 # * netinit/in.h: no functions in netinet/in.h
274 # * netinit/tcp.h: no functions in netinet/tcp.h
276 # * nl_types.h
277 .skip 3
278 #int catclose(nl_catd)
279 #char *catgets(nl_catd, int, int, const char *)
280 #nl_catd catopen(const char *, int)
282 # * poll.h
283 .skip 1
284 #int poll(struct pollfd [], nfds_t, int)
286 # * pthread.h
287 .skip 100
288 #int pthread_atfork(void (*)(void), void (*)(void), void(*)(void))
289 #int pthread_attr_destroy(pthread_attr_t *)
290 #int pthread_attr_getdetachstate(const pthread_attr_t *, int *)
291 #int pthread_attr_getguardsize(const pthread_attr_t *restrict, size_t *restrict)
292 #int pthread_attr_getinheritsched(const pthread_attr_t *restrict, int *restrict)
293 #int pthread_attr_getschedparam(const pthread_attr_t *restrict, struct sched_param *restrict)
294 #int pthread_attr_getschedpolicy(const pthread_attr_t *restrict, int *restrict)
295 #int pthread_attr_getscope(const pthread_attr_t *restrict, int *restrict)
296 #int pthread_attr_getstack(const pthread_attr_t *restrict, void **restrict, size_t *restrict)
297 #int pthread_attr_getstacksize(const pthread_attr_t *restrict, size_t *restrict)
298 #int pthread_attr_init(pthread_attr_t *)
299 #int pthread_attr_setdetachstate(pthread_attr_t *, int)
300 #int pthread_attr_setguardsize(pthread_attr_t *, size_t)
301 #int pthread_attr_setinheritsched(pthread_attr_t *, int)
302 #int pthread_attr_setschedparam(pthread_attr_t *restrict, const struct sched_param *restrict)
303 #int pthread_attr_setschedpolicy(pthread_attr_t *, int)
304 #int pthread_attr_setscope(pthread_attr_t *, int)
305 #int pthread_attr_setstack(pthread_attr_t *, void *, size_t)
306 #int pthread_attr_setstacksize(pthread_attr_t *, size_t)
307 #int pthread_barrier_destroy(pthread_barrier_t *)
308 #int pthread_barrier_init(pthread_barrier_t *restrict, const pthread_barrierattr_t *restrict, unsigned)
309 #int pthread_barrier_wait(pthread_barrier_t *)
310 #int pthread_barrierattr_destroy(pthread_barrierattr_t *)
311 #int pthread_barrierattr_getpshared(const pthread_barrierattr_t *restrict, int *restrict)
312 #int pthread_barrierattr_init(pthread_barrierattr_t *)
313 #int pthread_barrierattr_setpshared(pthread_barrierattr_t *, int)
314 #int pthread_cancel(pthread_t)
315 #void pthread_cleanup_pop(int)
316 #void pthread_cleanup_push(void (*)(void*), void *)
317 #int pthread_cond_broadcast(pthread_cond_t *)
318 #int pthread_cond_destroy(pthread_cond_t *)
319 #int pthread_cond_init(pthread_cond_t *restrict, const pthread_condattr_t *restrict)
320 #int pthread_cond_signal(pthread_cond_t *)
321 #int pthread_cond_timedwait(pthread_cond_t *restrict, pthread_mutex_t *restrict, const struct timespec *restrict)
322 #int pthread_cond_wait(pthread_cond_t *restrict, pthread_mutex_t *restrict)
323 #int pthread_condattr_destroy(pthread_condattr_t *)
324 #int pthread_condattr_getclock(const pthread_condattr_t *restrict, clockid_t *restrict)
325 #int pthread_condattr_getpshared(const pthread_condattr_t *restrict, int *restrict)
326 #int pthread_condattr_init(pthread_condattr_t *)
327 #int pthread_condattr_setclock(pthread_condattr_t *, clockid_t)
328 #int pthread_condattr_setpshared(pthread_condattr_t *, int)
329 #int pthread_create(pthread_t *restrict, const pthread_attr_t *restrict, void *(*)(void*), void *restrict)
330 #int pthread_detach(pthread_t)
331 #int pthread_equal(pthread_t, pthread_t)
332 #void pthread_exit(void *)
333 #int pthread_getconcurrency(void)
334 #int pthread_getcpuclockid(pthread_t, clockid_t *)
335 #int pthread_getschedparam(pthread_t, int *restrict, struct sched_param *restrict)
336 #void *pthread_getspecific(pthread_key_t)
337 #int pthread_join(pthread_t, void **)
338 #int pthread_key_create(pthread_key_t *, void (*)(void*))
339 #int pthread_key_delete(pthread_key_t)
340 #int pthread_mutex_consistent(pthread_mutex_t *)
341 #int pthread_mutex_destroy(pthread_mutex_t *)
342 #int pthread_mutex_getprioceiling(const pthread_mutex_t *restrict, int *restrict)
343 #int pthread_mutex_init(pthread_mutex_t *restrict, const pthread_mutexattr_t *restrict)
344 #int pthread_mutex_lock(pthread_mutex_t *)
345 #int pthread_mutex_setprioceiling(pthread_mutex_t *restrict, int, int *restrict)
346 #int pthread_mutex_timedlock(pthread_mutex_t *restrict, const struct timespec *restrict)
347 #int pthread_mutex_trylock(pthread_mutex_t *)
348 #int pthread_mutex_unlock(pthread_mutex_t *)
349 #int pthread_mutexattr_destroy(pthread_mutexattr_t *)
350 #int pthread_mutexattr_getprioceiling(const pthread_mutexattr_t *restrict, int *restrict)
351 #int pthread_mutexattr_getprotocol(const pthread_mutexattr_t *restrict, int *restrict)
352 #int pthread_mutexattr_getpshared(const pthread_mutexattr_t *restrict, int *restrict)
353 #int pthread_mutexattr_getrobust(const pthread_mutexattr_t *restrict, int *restrict)
354 #int pthread_mutexattr_gettype(const pthread_mutexattr_t *restrict, int *restrict)
355 #int pthread_mutexattr_init(pthread_mutexattr_t *)
356 #int pthread_mutexattr_setprioceiling(pthread_mutexattr_t *, int)
357 #int pthread_mutexattr_setprotocol(pthread_mutexattr_t *, int)
358 #int pthread_mutexattr_setpshared(pthread_mutexattr_t *, int)
359 #int pthread_mutexattr_setrobust(pthread_mutexattr_t *, int)
360 #int pthread_mutexattr_settype(pthread_mutexattr_t *, int)
361 #int pthread_once(pthread_once_t *, void (*)(void))
362 #int pthread_rwlock_destroy(pthread_rwlock_t *)
363 #int pthread_rwlock_init(pthread_rwlock_t *restrict, const pthread_rwlockattr_t *restrict)
364 #int pthread_rwlock_rdlock(pthread_rwlock_t *)
365 #int pthread_rwlock_timedrdlock(pthread_rwlock_t *restrict, const struct timespec *restrict)
366 #int pthread_rwlock_timedwrlock(pthread_rwlock_t *restrict, const struct timespec *restrict)
367 #int pthread_rwlock_tryrdlock(pthread_rwlock_t *)
368 #int pthread_rwlock_trywrlock(pthread_rwlock_t *)
369 #int pthread_rwlock_unlock(pthread_rwlock_t *)
370 #int pthread_rwlock_wrlock(pthread_rwlock_t *)
371 #int pthread_rwlockattr_destroy(pthread_rwlockattr_t *)
372 #int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *restrict, int *restrict)
373 #int pthread_rwlockattr_init(pthread_rwlockattr_t *)
374 #int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *, int)
375 #pthread_t pthread_self(void)
376 #int pthread_setcancelstate(int, int *)
377 #int pthread_setcanceltype(int, int *)
378 #int pthread_setconcurrency(int)
379 #int pthread_setschedparam(pthread_t, int, const struct sched_param *)
380 #int pthread_setschedprio(pthread_t, int)
381 #int pthread_setspecific(pthread_key_t, const void *)
382 #int pthread_spin_destroy(pthread_spinlock_t *)
383 #int pthread_spin_init(pthread_spinlock_t *, int)
384 #int pthread_spin_lock(pthread_spinlock_t *)
385 #int pthread_spin_trylock(pthread_spinlock_t *)
386 #int pthread_spin_unlock(pthread_spinlock_t *)
387 #void pthread_testcancel(void)
389 # * pwd.h
390 void endpwent(void)
391 struct passwd *getpwent(void)
392 struct passwd *getpwnam(const char *)
393 .skip 1
394 #int getpwnam_r(const char *, struct passwd *, char *, size_t, struct passwd **)
395 struct passwd *getpwuid(uid_t);
396 .skip 1
397 #int getpwuid_r(uid_t, struct passwd *, char *, size_t, struct passwd **)
398 void setpwent(void)
400 # * regex.h
401 int regcomp(regex_t *restrict, const char *restrict, int)
402 size_t regerror(int, const regex_t *restrict, char *restrict, size_t)
403 int regexec(const regex_t *restrict, const char *restrict, size_t, regmatch_t [], int)
404 void regfree(regex_t *)
406 # * sched.h
407 .skip 8
408 #int sched_get_priority_max(int)
409 #int sched_get_priority_min(int)
410 #int sched_getparam(pid_t, struct sched_param *)
411 #int sched_getscheduler(pid_t)
412 #int sched_rr_get_interval(pid_t, struct timespec *)
413 #int sched_setparam(pid_t, const struct sched_param *)
414 #int sched_setscheduler(pid_t, int, const struct sched_param *)
415 #int sched_yield(void)
417 # * search.h
418 .skip 11
419 #int hcreate(size_t)
420 #void hdestroy(void)
421 #ENTRY *hsearch(ENTRY, ACTION)
422 #void insque(void *, void *)
423 #void *lfind(const void *, const void *, size_t *, size_t, int (*)(const void *, const void *))
424 #void *lsearch(const void *, void *, size_t *, size_t, int (*)(const void *, const void *))
425 #void remque(void *)
426 #void *tdelete(const void *restrict, void **restrict, int(*)(const void *, const void *))
427 #void *tfind(const void *, void *const *, int(*)(const void *, const void *))
428 #void *tsearch(const void *, void **, int(*)(const void *, const void *))
429 #void twalk(const void *, void (*)(const void *, VISIT, int ))
431 # * semaphore.h
432 .skip 10
433 #int sem_close(sem_t *)
434 #int sem_destroy(sem_t *)
435 #int sem_getvalue(sem_t *restrict, int *restrict)
436 #int sem_init(sem_t *, int, unsigned)
437 #sem_t *sem_open(const char *, int, ...)
438 #int sem_post(sem_t *)
439 #int sem_timedwait(sem_t *restrict, const struct timespec *restrict)
440 #int sem_trywait(sem_t *)
441 #int sem_unlink(const char *)
442 #int sem_wait(sem_t *)
444 # * setjmp.h: Only POSIX.1-2008 specific functions are included here
445 void siglongjmp(sigjmp_buf, int)
446 int sigsetjmp(sigjmp_buf, int)
448 # * signal.h: Also reserve LVO for C99 funcs, we may want to overload them later on
449 int kill(pid_t, int)
450 .skip 6
451 #int killpg(pid_t, int)
452 #void psiginfo(const siginfo_t *, const char *)
453 #void psignal(int, const char *)
454 #int pthread_kill(pthread_t, int)
455 #int pthread_sigmask(int, const sigset_t *restrict, sigset_t *restrict)
456 #int raise(int)
457 int sigaction(int, const struct sigaction *, struct sigaction *)
458 int sigaddset(sigset_t *, int)
459 .skip 1
460 #int sigaltstack(const stack_t *, stack_t *)
461 int sigdelset(sigset_t *, int)
462 int sigemptyset(sigset_t *)
463 int sigfillset(sigset_t *)
464 .skip 3
465 #int sighold(int)
466 #int sigignore(int)
467 #int siginterrupt(int)
468 int sigismember(const sigset_t *, int)
469 .skip 2
470 #void (*signal(int, void (*)(int)))(int)
471 #int sigpause(int)
472 int sigpending(sigset_t *)
473 int sigprocmask(int, const sigset_t *, sigset_t *)
474 .skip 3
475 #int sigqueue(pid_t, int, const union sigval)
476 #int sigrelse(int)
477 #int sigset(__sighandler_t *, int)
478 int sigsuspend(const sigset_t *)
479 .skip 3
480 #int sigtimedwait(const sigset_t *, siginfo_t *, const struct timespec *)
481 #int sigwait(const sigset_t *, int *)
482 #int sigwaitinfo(const sigset_t *, siginfo_t *)
484 # * spawn.h
485 .skip 21
486 #int posix_spawn(pid_t *restrict, const char *restrict, const posix_spawn_file_actions_t *, const posix_spawnattr_t *restrict, char *const [restrict], char *const [restrict])
487 #int posix_spawn_file_actions_addclose(posix_spawn_file_actions_t *, int)
488 #int posix_spawn_file_actions_adddup2(posix_spawn_file_actions_t *, int, int)
489 #int posix_spawn_file_actions_addopen(posix_spawn_file_actions_t *restrict, int, const char *restrict, int, mode_t)
490 #int posix_spawn_file_actions_destroy(posix_spawn_file_actions_t *)
491 #int posix_spawn_file_actions_init(posix_spawn_file_actions_t *)
492 #int posix_spawnattr_destroy(posix_spawnattr_t *)
493 #int posix_spawnattr_getflags(const posix_spawnattr_t *restrict, short *restrict)
494 #int posix_spawnattr_getpgroup(const posix_spawnattr_t *restrict, pid_t *restrict)
495 #int posix_spawnattr_getschedparam(const posix_spawnattr_t *restrict, struct sched_param *restrict)
496 #int posix_spawnattr_getschedpolicy(const posix_spawnattr_t *restrict, int *restrict)
497 #int posix_spawnattr_getsigdefault(const posix_spawnattr_t *restrict, sigset_t *restrict)
498 #int posix_spawnattr_getsigmask(const posix_spawnattr_t *restrict, sigset_t *restrict)
499 #int posix_spawnattr_init(posix_spawnattr_t *)
500 #int posix_spawnattr_setflags(posix_spawnattr_t *, short)
501 #int posix_spawnattr_setpgroup(posix_spawnattr_t *, pid_t)
502 #int posix_spawnattr_setschedparam(posix_spawnattr_t *restrict, const struct sched_param *restrict)
503 #int posix_spawnattr_setschedpolicy(posix_spawnattr_t *, int)
504 #int posix_spawnattr_setsigdefault(posix_spawnattr_t *restrict, const sigset_t *restrict)
505 #int posix_spawnattr_setsigmask(posix_spawnattr_t *restrict, const sigset_t *restrict)
506 #int posix_spawnp(pid_t *restrict, const char *restrict, const posix_spawn_file_actions_t *, const posix_spawnattr_t *restrict, char *const [restrict], char *const [restrict])
508 # * stdarg.h: not implemented in posixc.library
510 # * stdbool.h: no functions in stdbool.h
512 # * stddef.h: not implemented in posixc.library
514 # * stdint.h: not implemented in posixc.library
516 # * stdio.h: Also reserve LVO for C99 funcs, we may want to overload them later on
517 void clearerr(FILE *)
518 .skip 2
519 #char *ctermid(char *)
520 #int dprintf(int, const char *restrict, ...)
521 int fclose(FILE *)
522 FILE *fdopen(int, const char *)
523 int feof(FILE *)
524 int ferror(FILE *)
525 int fflush(FILE *)
526 int fgetc(FILE *)
527 .alias getc
528 int fgetpos(FILE *restrict, fpos_t *restrict)
529 char *fgets(char *restrict, int, FILE *restrict)
530 int fileno(FILE *)
531 .skip 2
532 #void flockfile(FILE *)
533 #FILE *fmemopen(void *restrict, size_t, const char *restrict)
534 FILE *fopen(const char *restrict, const char *restrict)
535 int fprintf(FILE *restrict, const char *restrict, ...)
536 int fputc(int, FILE *)
537 .alias putc
538 int fputs(const char *restrict, FILE *restrict)
539 size_t fread(void *restrict, size_t, size_t, FILE *restrict)
540 FILE *freopen(const char *restrict, const char *restrict, FILE *restrict)
541 int fscanf(FILE *restrict, const char *restrict, ...)
542 int fseek(FILE *, long, int)
543 int fseeko(FILE *, off_t, int)
544 int fsetpos(FILE *, const fpos_t *)
545 long ftell(FILE *)
546 off_t ftello(FILE *)
547 .skip 2
548 #int ftrylockfile(FILE *)
549 #void funlockfile(FILE *)
550 size_t fwrite(const void *restrict, size_t, size_t, FILE *restrict)
551 # getc alias from fgetc
552 int getchar(void)
553 .skip 4
554 #int getc_unlocked(FILE *)
555 #int getchar_unlocked(void)
556 #ssize_t getdelim(char **restrict, size_t *restrict, int, FILE *restrict)
557 #ssize_t  getline(char **restrict, size_t *restrict, FILE *restrict)
558 char *gets(char *)
559 .skip 1
560 #FILE *open_memstream(char **, size_t *)
561 int pclose(FILE *)
562 void perror(const char *)
563 FILE *popen(const char *, const char *)
564 int printf(const char *restrict, ...)
565 # putc alias from fputc
566 int putchar(int)
567 .skip 2
568 #int putc_unlocked(int, FILE *)
569 #int putchar_unlocked(int)
570 int puts(const char *)
571 int __posixc_remove(const char *)
572 .alias remove
573 .alias unlink
574 int __posixc_rename(const char *, const char *)
575 .alias rename
576 .skip 1
577 #int renameat(int, const char *, int, const char *)
578 void rewind(FILE *)
579 int scanf(const char *restrict, ...)
580 void setbuf(FILE *restrict, char *restrict)
581 int setvbuf(FILE *restrict, char *restrict, int, size_t)
582 .skip 3
583 #int snprintf(char *restrict, size_t, const char *restrict, ...)
584 #int sprintf(char *restrict, const char *restrict, ...)
585 #int sscanf(const char *restrict, const char *restrict, ...)
586 char *tempnam(const char *, const char *)
587 FILE *tmpfile(void)
588 char *tmpnam(char *)
589 int ungetc(int, FILE *)
590 .skip 1
591 #int vdprintf(int, const char *restrict, va_list)
592 int vfprintf(FILE *restrict, const char *restrict, va_list)
593 int vfscanf(FILE *restrict, const char *restrict, va_list)
594 int vprintf(const char *restrict, va_list)
595 int vscanf(const char *restrict, va_list)
596 .skip 3
597 #int vsnprintf(char *restrict, size_t, const char *restrict, va_list)
598 #int vsprintf(char *restrict, const char *restrict, va_list)
599 #int vsscanf(const char *restrict, const char *restrict, va_list)
601 # * stdlib.h: only POSIX.1-2008 specific functions and
602 #             getenv(), system() overriding posixc.library version
603 .skip 1
604 #long a64l(const char *)
605 double drand48(void)
606 double erand48(unsigned short [3])
607 char *getenv(const char *name)
608 .skip 2
609 #int getsubopt(char **, char *const *, char **)
610 #int grantpt(int)
611 char *initstate(unsigned, char *, int)
612 long int jrand48(unsigned short [3])
613 .skip 1
614 #char *l64a(long)
615 void lcong48(unsigned short [7])
616 long int lrand48(void)
617 .skip 1
618 #char *mkdtemp(char *)
619 int mkstemp(char *)
620 char *mktemp(char *)
621 long int mrand48(void)
622 long int nrand48(unsigned short [3])
623 int posix_memalign(void **, size_t, size_t)
624 .skip 2
625 #int posix_openpt(int)
626 #char *ptsname(int)
627 int putenv(const char *)
628 .skip 1
629 #int rand_r(unsigned int *)
630 long random(void)
631 char *realpath(const char * restrict , char * restrict)
632 unsigned short int *seed48(unsigned short [3])
633 int setenv(const char *, const char *, int)
634 .skip 1
635 #void setkey(const char *)
636 char *setstate(char *)
637 void srand48(long)
638 void srandom(unsigned)
639 int system(const char *string)
640 .skip 1
641 #int unlockpt(int)
642 void unsetenv(const char *)
643 int getloadavg(double [], int)
645 # * string.h: all function are in stdc.library, only strerror is overloaded
646 char *__posixc_strerror(int)
647 .alias strerror
649 # * strings.h: reserve LVO for str(n)casecmp, we may want to overload them later
650 .skip 4
651 #int strcasecmp(const char *, const char *)
652 #int strcasecmp_l(const char *, const char *, locale_t)
653 #int strncasecmp(const char *, const char *, size_t)
654 #int strncasecmp_l(const char *, const char *, size_t, locale_t)
656 # * stropts.h
657 .skip 4
658 #int fattach(int, const char *)
659 #int fdetach(const char *)
660 #int getmsg(int, struct strbuf *restrict, struct strbuf *restrict, int *restrict)
661 #int getpmsg(int, struct strbuf *restrict, struct strbuf *restrict, int *restrict, int *restrict)
662 int ioctl(int, int, ...)
663 .skip 3
664 #int isastream(int)
665 #int putmsg(int, const struct strbuf *, const struct strbuf *, int)
666 #int putpmsg(int, const struct strbuf *, const struct strbuf *, int, int)
668 # * sys/ipc.h
669 .skip 1
670 #key_t ftok(const char *, int)
672 # * sys/mman.h
673 .skip 14
674 #int mlock(const void *, size_t)
675 #int mlockall(int)
676 #void *mmap(void *, size_t, int, int, int, off_t)
677 #int mprotect(void *, size_t, int)
678 #int msync(void *, size_t, int)
679 #int munlock(const void *, size_t)
680 #int munlockall(void)
681 #int munmap(void *, size_t)
682 #int posix_madvise(void *, size_t, int)
683 #int posix_mem_offset(const void *restrict, size_t, off_t *restrict, size_t *restrict, int *restrict)
684 #int posix_typed_mem_get_info(int, struct posix_typed_mem_info *)
685 #int posix_typed_mem_open(const char *, int, int)
686 #int shm_open(const char *, int, mode_t)
687 #int shm_unlink(const char *)
689 # * sys/msg.h
690 .skip 4
691 #int msgctl(int, int, struct msqid_ds *)
692 #int msgget(key_t, int)
693 #ssize_t msgrcv(int, void *, size_t, long, int)
694 #int msgsnd(int, const void *, size_t, int)
696 # * sys/resource.h
697 .skip 1
698 #int getpriority(int, id_t)
699 int getrlimit(int, struct rlimit *)
700 .skip 2
701 #int getrusage(int, struct rusage *)
702 #int setpriority(int, id_t, int)
703 int setrlimit(int, const struct rlimit *)
705 # * sys/select.h: Reserve also LVO for FD_xxx()
706 .skip 6
707 #void FD_CLR(int, fd_set *)
708 #int FD_ISSET(int, fd_set *)
709 #void FD_SET(int, fd_set *)
710 #void FD_ZERO(fd_set *)
711 #int pselect(int, fd_set *restrict, fd_set *restrict, fd_set *restrict, const struct timespec *restrict, const sigset_t *restrict)
712 #int select(int, fd_set *restrict, fd_set *restrict, fd_set *restrict, struct timeval *restrict)
714 # * sys/sem.h
715 .skip 3
716 #int semctl(int, int, int, ...)
717 #int semget(key_t, int, int)
718 #int semop(int, struct sembuf *, size_t)
720 # * sys/shm.h
721 .skip 4
722 #void *shmat(int, const void *, int)
723 #int   shmctl(int, int, struct shmid_ds *)
724 #int   shmdt(const void *)
725 #int   shmget(key_t, size_t, int)
727 # * sys/socket.h: also reserve LVO for bsdsocket.library functions
728 .skip 18
729 #int accept(int, struct sockaddr *restrict, socklen_t *restrict)
730 #int bind(int, const struct sockaddr *, socklen_t)
731 #int connect(int, const struct sockaddr *, socklen_t)
732 #int getpeername(int, struct sockaddr *restrict, socklen_t *restrict)
733 #int getsockname(int, struct sockaddr *restrict, socklen_t *restrict)
734 #int getsockopt(int, int, int, void *restrict, socklen_t *restrict)
735 #int listen(int, int)
736 #ssize_t recv(int, void *, size_t, int)
737 #ssize_t recvfrom(int, void *restrict, size_t, int, struct sockaddr *restrict, socklen_t *restrict)
738 #ssize_t recvmsg(int, struct msghdr *, int)
739 #ssize_t send(int, const void *, size_t, int)
740 #ssize_t sendmsg(int, const struct msghdr *, int)
741 #ssize_t sendto(int, const void *, size_t, int, const struct sockaddr *, socklen_t)
742 #int setsockopt(int, int, int, const void *, socklen_t)
743 #int shutdown(int, int)
744 #int sockatmark(int)
745 #int socket(int, int, int)
746 #int socketpair(int, int, int, int [2])
748 # * sys/stat.h
749 int chmod(const char *path, mode_t mode)
750 int fchmod(int fildes, mode_t mode)
751 .skip 1
752 #int fchmodat(int, const char *, mode_t, int)
753 int fstat(int fd, struct stat *sb)
754 .skip 2
755 #int fstatat(int, const char *restrict, struct stat *restrict, int)
756 #int futimens(int, const struct timespec [2])
757 int lstat(const char * restrict path, struct stat * restrict sb)
758 int mkdir(const char *path, mode_t mode)
759 .skip 3
760 #int mkdirat(int, const char *, mode_t)
761 #int mkfifo(const char *path, mode_t mode)
762 #int mkfifoat(int, const char *, mode_t)
763 int mknod(const char *path, mode_t mode, dev_t dev)
764 .skip 1
765 #int mknodat(int, const char *, mode_t, dev_t)
766 int stat(const char * restrict path, struct stat * restrict sb)
767 mode_t umask(mode_t numask)
768 .skip 1
769 #int utimensat(int, const char *, const struct timespec [2], int)
771 # * sys/statvfs.h
772 .skip 2
773 #int fstatvfs(int, struct statvfs *)
774 #int statvfs(const char *restrict, struct statvfs *restrict)
776 # * sys/time.h
777 .skip 1
778 #int getitimer(int which, struct itimerval *)
779 int gettimeofday(struct timeval * restrict, struct timezone * restrict)
780 .skip 2
781 #int setitimer(int which, const struct itimerval * restrict, struct itimerval * restrict)
782 #int select(int, fd_set *restrict, fd_set *restrict, fd_set *restrict, struct timeval *restrict)
783 int utimes(const char *, const struct timeval [2])
785 # * sys/times.h
786 clock_t times(struct tms *)
788 # * sys/types.h: no functions in sys/types.h
790 # * sys/uio.h
791 .skip 2
792 #ssize_t readv(int, const struct iovec *, int)
793 #ssize_t writev(int, const struct iovec *, int)
795 # * sys/un.h: no functions in sys/un.h
797 # * sys/utsname.h
798 int uname(struct utsname *)
800 # * sys/wait.h
801 pid_t wait(int *)
802 .skip 1
803 #int waitid(idtype_t, id_t, siginfo_t *, int)
804 pid_t waitpid(pid_t, int *, int)
806 # <syslog.h>
807 .skip 4
808 #void closelog(void)
809 #void openlog(const char *, int, int)
810 #int setlogmask(int)
811 #void syslog(int, const char *, ...)
813 # * tar.h: no functions in tar.h
815 # * termios.h
816 speed_t cfgetispeed(const struct termios *)
817 speed_t cfgetospeed(const struct termios *)
818 int cfsetispeed(struct termios *, speed_t)
819 int cfsetospeed(struct termios *, speed_t)
820 .skip 3
821 #int tcdrain(int)
822 #int tcflow(int, int)
823 #int tcflush(int, int)
824 int tcgetattr(int, struct termios *)
825 .skip 2
826 #pid_t tcgetsid(int)
827 #int tcsendbreak(int, int)
828 int tcsetattr(int, int, const struct termios *)
830 # * tgmath.h: not implemented in posixc.library
832 # * time.h: Also reserve LVO for C99 funcs that may depend on locale
833 .skip 11
834 #char *asctime(const struct tm *)
835 #char *asctime_r(const struct tm *restrict, char *restrict)
836 #clock_t clock(void)
837 #int clock_getcpuclockid(pid_t, clockid_t *)
838 #int clock_getres(clockid_t, struct timespec *)
839 #int clock_gettime(clockid_t, struct timespec *)
840 #int clock_nanosleep(clockid_t, int, const struct timespec *, struct timespec *)
841 #int clock_settime(clockid_t, const struct timespec *)
842 #struct tm *getdate(const char *)
843 #struct tm *localtime(const time_t *)
844 #struct tm *localtime_r(const time_t *restrict, struct tm *restrict)
845 int nanosleep(const struct timespec *, struct timespec *)
846 .skip 2
847 #size_t strftime(char *restrict, size_t, const char *restrict, const struct tm *restrict)
848 #size_t strftime_l(char *restrict, size_t, const char *restrict, const struct tm *restrict, locale_t)
849 char *strptime(const char *, const char *, struct tm *)
850 .skip 6
851 #int timer_create(clockid_t, struct sigevent *, timer_t *)
852 #int timer_delete(timer_t)
853 #int timer_getoverrun(timer_t)
854 #int timer_gettime(timer_t, struct itimerspec *)
855 #int timer_settime(timer_t, int, const struct itimerspec *, struct itimerspec *)
856 #void tzset(void)
858 # * trace.h
859 .skip 50
860 #int posix_trace_attr_destroy(trace_attr_t *)
861 #int posix_trace_attr_getclockres(const trace_attr_t *, struct timespec *)
862 #int posix_trace_attr_getcreatetime(const trace_attr_t *, struct timespec *)
863 #int posix_trace_attr_getgenversion(const trace_attr_t *, char *)
864 #int posix_trace_attr_getinherited(const trace_attr_t *restrict, int *restrict)
865 #int posix_trace_attr_getlogfullpolicy(const trace_attr_t *restrict, int *restrict)
866 #int posix_trace_attr_getlogsize(const trace_attr_t *restrict, size_t *restrict)
867 #int posix_trace_attr_getmaxdatasize(const trace_attr_t *restrict, size_t *restrict)
868 #int posix_trace_attr_getmaxsystemeventsize(const trace_attr_t *restrict, size_t *restrict)
869 #int posix_trace_attr_getmaxusereventsize(const trace_attr_t *restrict, size_t, size_t *restrict)
870 #int posix_trace_attr_getname(const trace_attr_t *, char *)
871 #int posix_trace_attr_getstreamfullpolicy(const trace_attr_t *restrict, int *restrict)
872 #int posix_trace_attr_getstreamsize(const trace_attr_t *restrict, size_t *restrict)
873 #int posix_trace_attr_init(trace_attr_t *)
874 #int posix_trace_attr_setinherited(trace_attr_t *, int)
875 #int posix_trace_attr_setlogfullpolicy(trace_attr_t *, int)
876 #int posix_trace_attr_setlogsize(trace_attr_t *, size_t)
877 #int posix_trace_attr_setmaxdatasize(trace_attr_t *, size_t)
878 #int posix_trace_attr_setname(trace_attr_t *, const char *)
879 #int posix_trace_attr_setstreamfullpolicy(trace_attr_t *, int)
880 #int posix_trace_attr_setstreamsize(trace_attr_t *, size_t)
881 #int posix_trace_clear(trace_id_t)
882 #int posix_trace_close(trace_id_t)
883 #int posix_trace_create(pid_t, const trace_attr_t *restrict, trace_id_t *restrict)
884 #int posix_trace_create_withlog(pid_t, const trace_attr_t *restrict, int, trace_id_t *restrict)
885 #void posix_trace_event(trace_event_id_t, const void *restrict, size_t)
886 #int posix_trace_eventid_equal(trace_id_t, trace_event_id_t, trace_event_id_t)
887 #int posix_trace_eventid_get_name(trace_id_t, trace_event_id_t, char *)
888 #int posix_trace_eventid_open(const char *restrict, trace_event_id_t *restrict)
889 #int posix_trace_eventset_add(trace_event_id_t, trace_event_set_t *)
890 #int posix_trace_eventset_del(trace_event_id_t, trace_event_set_t *)
891 #int posix_trace_eventset_empty(trace_event_set_t *)
892 #int posix_trace_eventset_fill(trace_event_set_t *, int)
893 #int posix_trace_eventset_ismember(trace_event_id_t, const trace_event_set_t *restrict, int *restrict)
894 #int posix_trace_eventtypelist_getnext_id(trace_id_t, trace_event_id_t *restrict, int *restrict)
895 #int posix_trace_eventtypelist_rewind(trace_id_t)
896 #int posix_trace_flush(trace_id_t)
897 #int posix_trace_get_attr(trace_id_t, trace_attr_t *)
898 #int posix_trace_get_filter(trace_id_t, trace_event_set_t *)
899 #int posix_trace_get_status(trace_id_t, struct posix_trace_status_info *)
900 #int posix_trace_getnext_event(trace_id_t, struct posix_trace_event_info *restrict, void *restrict, size_t, size_t *restrict, int *restrict)
901 #int posix_trace_open(int, trace_id_t *)
902 #int posix_trace_rewind(trace_id_t)
903 #int posix_trace_set_filter(trace_id_t, const trace_event_set_t *, int)
904 #int posix_trace_shutdown(trace_id_t)
905 #int posix_trace_start(trace_id_t)
906 #int posix_trace_stop(trace_id_t)
907 #int posix_trace_timedgetnext_event(trace_id_t, struct posix_trace_event_info *restrict, void *restrict, size_t, size_t *restrict, int *restrict, const struct timespec *restrict)
908 #int posix_trace_trid_eventid_open(trace_id_t, const char *restrict, trace_event_id_t *restrict)
909 #int posix_trace_trygetnext_event(trace_id_t, struct posix_trace_event_info *restrict, void *restrict, size_t, size_t *restrict, int *restrict)
911 # * ulimit.h
912 .skip 1
913 #long ulimit(int, ...)
915 # * unistd.h
916 int access(const char *path, int mode)
917 .skip 1
918 #unsigned alarm(unsigned)
919 int chdir(const char *path)
920 int chown(const char *path, uid_t owner, gid_t group)
921 int close(int fd)
922 .skip 3
923 #size_t confstr(int, char *, size_t)
924 #char *crypt(const char *, const char *)
925 #char *ctermid(char *)
926 int dup(int oldfd)
927 int dup2(int oldfd, int newfd)
928 .skip 2
929 #void _exit(int) ; is alias from _Exit in stdc.library
930 #void encrypt(char [64], int)
931 int execl(const char *path, const char *arg, ...)
932 .skip 1
933 #int execle(const char *path, const char *arg, ...)
934 int execlp(const char *path, const char *arg, ...)
935 int execv(const char *path, char *const argv[])
936 int execve(const char *path, char *const argv[], char *const envp[])
937 int execvp(const char *path, char *const argv[])
938 .skip 1
939 #int faccessat(int, const char *, int, int)
940 int fchdir(int fd)
941 int fchown(int fd, uid_t owner, gid_t group)
942 .skip 5
943 #int fchownat(int, const char *, uid_t, gid_t, int)
944 #int fdatasync(int)
945 #long fpathconf(int fd, int name)
946 #int fexecve(int, char *const [], char *const [])
947 #pid_t fork(void)
948 int fsync(int fd)
949 int ftruncate(int fd, off_t length)
950 char *getcwd(char *buf, size_t size)
951 gid_t getegid(void)
952 uid_t geteuid(void)
953 gid_t getgid(void)
954 int getgroups(int gidsetlen, gid_t *gidset)
955 .skip 2
956 #long gethostid(void)
957 #int gethostname(char *name, size_t namelen)
958 char *getlogin(void)
959 .skip  3
960 #int getlogin_r(char *, size_t)
961 #int getopt(int argc, char * const argv[], const char *optstring)
962 #pid_t getpgid(pid_t)
963 pid_t getpgrp(void)
964 pid_t getpid(void)
965 pid_t getppid(void)
966 .skip 1
967 #pid_t getsid(pid_t pid)
968 uid_t getuid(void)
969 int isatty(int fd)
970 .skip 1
971 #int lchown(const char *path, uid_t owner, gid_t group)
972 int link(const char *name1, const char *name2)
973 .skip 2
974 #int linkat(int, const char *, int, const char *, int)
975 #int lockf(int filedes, int function, off_t size)
976 off_t lseek(int filedes, off_t offset, int whence)
977 .skip 1
978 #int nice(int incr)
979 long pathconf(const char *path, int name)
980 .skip 1
981 #int pause(void)
982 int pipe(int filedes[2])
983 .skip 2
984 #ssize_t pread(int d, void *buf, size_t nbytes, off_t offset)
985 #ssize_t pwrite(int d, const void *buf, size_t nbytes, off_t offset)
986 ssize_t read(int d, void *buf, size_t nbytes)
987 ssize_t readlink(const char * restrict path, char * restrict buf, size_t bufsize)
988 .skip 1
989 #ssize_t readlinkat(int, const char *restrict, char *restrict, size_t)
990 int rmdir(const char *path)
991 .skip 1
992 #int setegid(gid_t egid)
993 int seteuid(uid_t euid)
994 int setgid(gid_t gid)
995 .skip 5
996 #int setpgid(pid_t pid, pid_t pgrp)
997 #int setpgrp(pid_t pid, pid_t pgrp)
998 #int setregid(gid_t rgid, gid_t egid)
999 #int setreuid(uid_t ruid, uid_t euid)
1000 #pid_t setsid(void)
1001 int setuid(uid_t uid)
1002 unsigned sleep(unsigned)
1003 void swab(const void * restrict src, void * restrict dst, size_t len)
1004 int symlink(const char *name1, const char *name2)
1005 .skip 1
1006 #int symlinkat(const char *, int, const char *)
1007 void sync(void)
1008 long sysconf(int name)
1009 .skip 2
1010 #pid_t tcgetpgrp(int fd)
1011 #int tcsetpgrp(int fd, pid_t pgrp_id)
1012 int truncate(const char *path, off_t length)
1013 char *ttyname(int fd)
1014 .skip 3
1015 #int ttyname_r(int fd, char *buf, size_t len)
1016 #int unlink(const char *) ; alias of remove()
1017 #int unlinkat(int, const char *, int)
1018 ssize_t write(int fd, const void *buf, size_t nbytes)
1020 # <utime.h>
1021 int utime(const char *, const struct utimbuf *)
1023 # * utmpx.h
1024 .skip 6
1025 #void endutxent(void)
1026 #struct utmpx *getutxent(void)
1027 #struct utmpx *getutxid(const struct utmpx *)
1028 #struct utmpx *getutxline(const struct utmpx *)
1029 #struct utmpx *pututxline(const struct utmpx *)
1030 #void setutxent(void)
1032 # * wchar.h: Reserve LVOs, we may want to provide own implementation
1033 .skip 89
1034 #wint_t btowc(int)
1035 #wint_t fgetwc(FILE *)
1036 #wchar_t *fgetws(wchar_t *restrict, int, FILE *restrict)
1037 #wint_t fputwc(wchar_t, FILE *)
1038 #int fputws(const wchar_t *restrict, FILE *restrict)
1039 #int fwide(FILE *, int)
1040 #int fwprintf(FILE *restrict, const wchar_t *restrict, ...)
1041 #int fwscanf(FILE *restrict, const wchar_t *restrict, ...)
1042 #wint_t getwc(FILE *)
1043 #wint_t getwchar(void)
1044 #int iswalnum(wint_t)
1045 #int iswalpha(wint_t)
1046 #int iswcntrl(wint_t)
1047 #int iswctype(wint_t, wctype_t)
1048 #int iswdigit(wint_t)
1049 #int iswgraph(wint_t)
1050 #int iswlower(wint_t)
1051 #int iswprint(wint_t)
1052 #int iswpunct(wint_t)
1053 #int iswspace(wint_t)
1054 #int iswupper(wint_t)
1055 #int iswxdigit(wint_t)
1056 #size_t mbrlen(const char *restrict, size_t, mbstate_t *restrict)
1057 #size_t mbrtowc(wchar_t *restrict, const char *restrict, size_t, mbstate_t *restrict)
1058 #int mbsinit(const mbstate_t *)
1059 #size_t mbsnrtowcs(wchar_t *restrict, const char **restrict, size_t, size_t, mbstate_t *restrict)
1060 #size_t mbsrtowcs(wchar_t *restrict, const char **restrict, size_t, mbstate_t *restrict)
1061 #FILE *open_wmemstream(wchar_t **, size_t *)
1062 #wint_t putwc(wchar_t, FILE *)
1063 #wint_t putwchar(wchar_t)
1064 #int swprintf(wchar_t *restrict, size_t, const wchar_t *restrict, ...)
1065 #int swscanf(const wchar_t *restrict, const wchar_t *restrict, ...)
1066 #wint_t towlower(wint_t)
1067 #wint_t towupper(wint_t)
1068 #wint_t ungetwc(wint_t, FILE *)
1069 #int vfwprintf(FILE *restrict, const wchar_t *restrict, va_list)
1070 #int vfwscanf(FILE *restrict, const wchar_t *restrict, va_list)
1071 #int vswprintf(wchar_t *restrict, size_t, const wchar_t *restrict, va_list)
1072 #int vswscanf(const wchar_t *restrict, const wchar_t *restrict, va_list)
1073 #int vwprintf(const wchar_t *restrict, va_list)
1074 #int vwscanf(const wchar_t *restrict, va_list)
1075 #wchar_t *wcpcpy(wchar_t restrict*, const wchar_t *restrict)
1076 #wchar_t *wcpncpy(wchar_t restrict *, const wchar_t *restrict, size_t)
1077 #size_t wcrtomb(char *restrict, wchar_t, mbstate_t *restrict)
1078 #int wcscasecmp(const wchar_t *, const wchar_t *)
1079 #int wcscasecmp_l(const wchar_t *, const wchar_t *, locale_t)
1080 #wchar_t *wcscat(wchar_t *restrict, const wchar_t *restrict)
1081 #wchar_t *wcschr(const wchar_t *, wchar_t)
1082 #int wcscmp(const wchar_t *, const wchar_t *)
1083 #int wcscoll(const wchar_t *, const wchar_t *)
1084 #int wcscoll_l(const wchar_t *, const wchar_t *, locale_t)
1085 #wchar_t *wcscpy(wchar_t *restrict, const wchar_t *restrict)
1086 #size_t wcscspn(const wchar_t *, const wchar_t *)
1087 #wchar_t *wcsdup(const wchar_t *)
1088 #size_t wcsftime(wchar_t *restrict, size_t, const wchar_t *restrict, const struct tm *restrict)
1089 #size_t wcslen(const wchar_t *)
1090 #int wcsncasecmp(const wchar_t *, const wchar_t *, size_t)
1091 #int wcsncasecmp_l(const wchar_t *, const wchar_t *, size_t, locale_t)
1092 #wchar_t *wcsncat(wchar_t *restrict, const wchar_t *restrict, size_t)
1093 #int wcsncmp(const wchar_t *, const wchar_t *, size_t)
1094 #wchar_t *wcsncpy(wchar_t *restrict, const wchar_t *restrict, size_t)
1095 #size_t wcsnlen(const wchar_t *, size_t)
1096 #size_t wcsnrtombs(char *restrict, const wchar_t **restrict, size_t, size_t, mbstate_t *restrict)
1097 #wchar_t *wcspbrk(const wchar_t *, const wchar_t *)
1098 #wchar_t *wcsrchr(const wchar_t *, wchar_t)
1099 #size_t wcsrtombs(char *restrict, const wchar_t **restrict, size_t, mbstate_t *restrict)
1100 #size_t wcsspn(const wchar_t *, const wchar_t *)
1101 #wchar_t *wcsstr(const wchar_t *restrict, const wchar_t *restrict)
1102 #double wcstod(const wchar_t *restrict, wchar_t **restrict)
1103 #float wcstof(const wchar_t *restrict, wchar_t **restrict)
1104 #wchar_t *wcstok(wchar_t *restrict, const wchar_t *restrict, wchar_t **restrict)
1105 #long wcstol(const wchar_t *restrict, wchar_t **restrict, int)
1106 #long double wcstold(const wchar_t *restrict, wchar_t **restrict)
1107 #long long wcstoll(const wchar_t *restrict, wchar_t **restrict, int)
1108 #unsigned long wcstoul(const wchar_t *restrict, wchar_t **restrict, int)
1109 #unsigned long long wcstoull(const wchar_t *restrict, wchar_t **restrict, int)
1110 #int wcswidth(const wchar_t *, size_t)
1111 #size_t wcsxfrm(wchar_t *restrict, const wchar_t *restrict, size_t)
1112 #size_t wcsxfrm_l(wchar_t *restrict, const wchar_t *restrict, size_t, locale_t)
1113 #int wctob(wint_t)
1114 #wctype_t wctype(const char *)
1115 #int wcwidth(wchar_t)
1116 #wchar_t *wmemchr(const wchar_t *, wchar_t, size_t)
1117 #int wmemcmp(const wchar_t *, const wchar_t *, size_t)
1118 #wchar_t *wmemcpy(wchar_t *restrict, const wchar_t *restrict, size_t)
1119 #wchar_t *wmemmove(wchar_t *, const wchar_t *, size_t)
1120 #wchar_t *wmemset(wchar_t *, wchar_t, size_t)
1121 #int wprintf(const wchar_t *restrict, ...)
1122 #int wscanf(const wchar_t *restrict, ...)
1124 # * wctype.h: Reserve LVOs, we may want to provide own implementation
1125 .skip 36
1126 #int iswalnum(wint_t)
1127 #int iswalnum_l(wint_t, locale_t)
1128 #int iswalpha(wint_t)
1129 #int iswalpha_l(wint_t, locale_t)
1130 #int iswblank(wint_t)
1131 #int iswblank_l(wint_t, locale_t)
1132 #int iswcntrl(wint_t)
1133 #int iswcntrl_l(wint_t, locale_t)
1134 #int iswctype(wint_t, wctype_t)
1135 #int iswctype_l(wint_t, wctype_t, locale_t)
1136 #int iswdigit(wint_t)
1137 #int iswdigit_l(wint_t, locale_t)
1138 #int iswgraph(wint_t)
1139 #int iswgraph_l(wint_t, locale_t)
1140 #int iswlower(wint_t)
1141 #int iswlower_l(wint_t, locale_t)
1142 #int iswprint(wint_t)
1143 #int iswprint_l(wint_t, locale_t)
1144 #int iswpunct(wint_t)
1145 #int iswpunct_l(wint_t, locale_t)
1146 #int iswspace(wint_t)
1147 #int iswspace_l(wint_t, locale_t)
1148 #int iswupper(wint_t)
1149 #int iswupper_l(wint_t, locale_t)
1150 #int iswxdigit(wint_t)
1151 #int iswxdigit_l(wint_t, locale_t)
1152 #wint_t towctrans(wint_t, wctrans_t)
1153 #wint_t towctrans_l(wint_t, wctrans_t, locale_t)
1154 #wint_t towlower(wint_t)
1155 #wint_t towlower_l(wint_t, locale_t)
1156 #wint_t towupper(wint_t)
1157 #wint_t towupper_l(wint_t, locale_t)
1158 #wctrans_t wctrans(const char *)
1159 #wctrans_t wctrans_l(const char *, locale_t)
1160 #wctype_t wctype(const char *)
1161 #wctype_t wctype_l(const char *, locale_t)
1163 # * wordexp.h
1164 .skip 2
1165 #int wordexp(const char *restrict, wordexp_t *restrict, int)
1166 #void wordfree(wordexp_t *)
1168 # == Extensions ==
1169 # * stdio.h: amiga/AROS specific
1170 void updatestdio(void)
1171 int __get_default_file (int, long *)
1173 # * sys/file.h: BSD
1174 int flock(int, int)
1176 # * sys/mount.h: BSD
1177 int getfsstat (struct statfs *, long, int);
1178 int statfs(const char *, struct statfs *);
1180 # * unistd.h: Legacy support, amiga/AROS extension
1181 int __posixc_set_environptr(char ***environptr)
1182 char ***__posixc_get_environptr(void)
1183 .skip 1
1184 #useconds_t ualarm(useconds_t, useconds_t)
1185 int usleep(useconds_t microseconds)
1186 pid_t vfork(void)
1188 ##end functionlist