gettextize and autopoint users
FD_CLR
FD_ISSET
FD_SET
FD_ZERO
_Exit
_exit
_longjmp
_setjmp
_tolower
_toupper
a64l
abort
abs
accept
access
acos
acosf
acosh
acoshf
acoshl
acosl
aio_cancel
aio_error
aio_fsync
aio_read
aio_return
aio_suspend
aio_write
alarm
alphasort
asctime
asctime_r
asin
asinf
asinh
asinhf
asinhl
asinl
assert
atan
atan2
atan2f
atan2l
atanf
atanh
atanhf
atanhl
atanl
atexit
atof
atoi
atol
atoll
basename
bind
bsearch
btowc
cabs
cabsf
cabsl
cacos
cacosf
cacosh
cacoshf
cacoshl
cacosl
calloc
carg
cargf
cargl
casin
casinf
casinh
casinhf
casinhl
casinl
catan
catanf
catanh
catanhf
catanhl
catanl
catclose
catgets
catopen
cbrt
cbrtf
cbrtl
ccos
ccosf
ccosh
ccoshf
ccoshl
ccosl
ceil
ceilf
ceill
cexp
cexpf
cexpl
cfgetispeed
cfgetospeed
cfsetispeed
cfsetospeed
chdir
chmod
chown
cimag
cimagf
cimagl
clearerr
clock
clock_getcpuclockid
clock_getres
clock_gettime
clock_nanosleep
clock_settime
clog
clogf
clogl
close
closedir
closelog
confstr
conj
conjf
conjl
connect
copysign
copysignf
copysignl
cos
cosf
cosh
coshf
coshl
cosl
cpow
cpowf
cpowl
cproj
cprojf
cprojl
creal
crealf
creall
creat
crypt
csin
csinf
csinh
csinhf
csinhl
csinl
csqrt
csqrtf
csqrtl
ctan
ctanf
ctanh
ctanhf
ctanhl
ctanl
ctermid
ctime
ctime_r
daylight
dbm_clearerr
dbm_close
dbm_delete
dbm_error
dbm_fetch
dbm_firstkey
dbm_nextkey
dbm_open
dbm_store
difftime
dirfd
dirname
div
dlclose
dlerror
dlopen
dlsym
dprintf
drand48
dup
dup2
duplocale
encrypt
endgrent
endhostent
endnetent
endprotoent
endpwent
endservent
endutxent
environ
erand48
erf
erfc
erfcf
erfcl
erff
erfl
errno
execl
execle
execlp
execv
execve
execvp
exit
exp
exp2
exp2f
exp2l
expf
expl
expm1
expm1f
expm1l
fabs
fabsf
fabsl
faccessat
fattach
fchdir
fchmod
fchmodat
fchown
fchownat
fclose
fcntl
fdatasync
fdetach
fdim
fdimf
fdiml
fdopen
fdopendir
feclearexcept
fegetenv
fegetexceptflag
fegetround
feholdexcept
feof
feraiseexcept
ferror
fesetenv
fesetexceptflag
fesetround
fetestexcept
feupdateenv
fexecve
fflush
ffs
fgetc
fgetpos
fgets
fgetwc
fgetws
fileno
flockfile
floor
floorf
floorl
fma
fmaf
fmal
fmax
fmaxf
fmaxl
fmemopen
fmin
fminf
fminl
fmod
fmodf
fmodl
fmtmsg
fnmatch
fopen
fork
fpathconf
fpclassify
fprintf
fputc
fputs
fputwc
fputws
fread
free
freeaddrinfo
freelocale
freopen
frexp
frexpf
frexpl
fscanf
fseek
fseeko
fsetpos
fstat
fstatat
fstatvfs
fsync
ftell
ftello
ftok
ftruncate
ftrylockfile
ftw
funlockfile
futimens
fwide
fwprintf
fwrite
fwscanf
gai_strerror
getaddrinfo
getc
getc_unlocked
getchar
getchar_unlocked
getcwd
getdate
getdate_err
getdelim
getegid
getenv
geteuid
getgid
getgrent
getgrgid
getgrgid_r
getgrnam
getgrnam_r
getgroups
gethostent
gethostid
gethostname
getitimer
getline
getlogin
getlogin_r
getmsg
getnameinfo
getnetbyaddr
getnetbyname
getnetent
getopt
getpeername
getpgid
getpgrp
getpid
getpmsg
getppid
getpriority
getprotobyname
getprotobynumber
getprotoent
getpwent
getpwnam
getpwnam_r
getpwuid
getpwuid_r
getrlimit
getrusage
gets
getservbyname
getservbyport
getservent
getsid
getsockname
getsockopt
getsubopt
gettimeofday
getuid
getutxent
getutxid
getutxline
getwc
getwchar
glob
globfree
gmtime
gmtime_r
grantpt
hcreate
hdestroy
hsearch
htonl
htons
hypot
hypotf
hypotl
iconv
iconv_close
iconv_open
if_freenameindex
if_indextoname
if_nameindex
if_nametoindex
ilogb
ilogbf
ilogbl
imaxabs
imaxdiv
inet_addr
inet_ntoa
inet_ntop
inet_pton
initstate
insque
ioctl
isalnum
isalnum_l
isalpha
isalpha_l
isascii
isastream
isatty
isblank
isblank_l
iscntrl
iscntrl_l
isdigit
isdigit_l
isfinite
isgraph
isgraph_l
isgreater
isgreaterequal
isinf
isless
islessequal
islessgreater
islower
islower_l
isnan
isnormal
isprint
isprint_l
ispunct
ispunct_l
isspace
isspace_l
isunordered
isupper
isupper_l
iswalnum
iswalnum_l
iswalpha
iswalpha_l
iswblank
iswblank_l
iswcntrl
iswcntrl_l
iswctype
iswctype_l
iswdigit
iswdigit_l
iswgraph
iswgraph_l
iswlower
iswlower_l
iswprint
iswprint_l
iswpunct
iswpunct_l
iswspace
iswspace_l
iswupper
iswupper_l
iswxdigit
iswxdigit_l
isxdigit
isxdigit_l
j0
j1
jn
jrand48
kill
killpg
l64a
labs
lchown
lcong48
ldexp
ldexpf
ldexpl
ldiv
lfind
lgamma
lgammaf
lgammal
link
linkat
lio_listio
listen
llabs
lldiv
llrint
llrintf
llrintl
llround
llroundf
llroundl
localeconv
localtime
localtime_r
lockf
log
log10
log10f
log10l
log1p
log1pf
log1pl
log2
log2f
log2l
logb
logbf
logbl
logf
logl
longjmp
lrand48
lrint
lrintf
lrintl
lround
lroundf
lroundl
lsearch
lseek
lstat
malloc
mblen
mbrlen
mbrtowc
mbsinit
mbsnrtowcs
mbsrtowcs
mbstowcs
mbtowc
memccpy
memchr
memcmp
memcpy
memmove
memset
mkdir
mkdirat
mkdtemp
mkfifo
mkfifoat
mknod
mknodat
mkstemp
mktime
mlock
mlockall
mmap
modf
modff
modfl
mprotect
mq_close
mq_getattr
mq_notify
mq_open
mq_receive
mq_send
mq_setattr
mq_timedreceive
mq_timedsend
mq_unlink
mrand48
msgctl
msgget
msgrcv
msgsnd
msync
munlock
munlockall
munmap
nan
nanf
nanl
nanosleep
nearbyint
nearbyintf
nearbyintl
newlocale
nextafter
nextafterf
nextafterl
nexttoward
nexttowardf
nexttowardl
nftw
nice
nl_langinfo
nl_langinfo_l
nrand48
ntohl
ntohs
open
openat
opendir
openlog
open_memstream
open_wmemstream
optarg
opterr
optind
optopt
pathconf
pause
pclose
perror
pipe
poll
popen
posix_fadvise
posix_fallocate
posix_madvise
posix_mem_offset
posix_memalign
posix_openpt
posix_spawn
posix_spawn_file_actions_addclose
posix_spawn_file_actions_adddup2
posix_spawn_file_actions_addopen
posix_spawn_file_actions_destroy
posix_spawn_file_actions_init
posix_spawnattr_destroy
posix_spawnattr_getflags
posix_spawnattr_getpgroup
posix_spawnattr_getschedparam
posix_spawnattr_getschedpolicy
posix_spawnattr_getsigdefault
posix_spawnattr_getsigmask
posix_spawnattr_init
posix_spawnattr_setflags
posix_spawnattr_setpgroup
posix_spawnattr_setschedparam
posix_spawnattr_setschedpolicy
posix_spawnattr_setsigdefault
posix_spawnattr_setsigmask
posix_spawnp
posix_trace_attr_destroy
posix_trace_attr_getclockres
posix_trace_attr_getcreatetime
posix_trace_attr_getgenversion
posix_trace_attr_getinherited
posix_trace_attr_getlogfullpolicy
posix_trace_attr_getlogsize
posix_trace_attr_getmaxdatasize
posix_trace_attr_getmaxsystemeventsize
posix_trace_attr_getmaxusereventsize
posix_trace_attr_getname
posix_trace_attr_getstreamfullpolicy
posix_trace_attr_getstreamsize
posix_trace_attr_init
posix_trace_attr_setinherited
posix_trace_attr_setlogfullpolicy
posix_trace_attr_setlogsize
posix_trace_attr_setmaxdatasize
posix_trace_attr_setname
posix_trace_attr_setstreamfullpolicy
posix_trace_attr_setstreamsize
posix_trace_clear
posix_trace_close
posix_trace_create
posix_trace_create_withlog
posix_trace_event
posix_trace_eventid_equal
posix_trace_eventid_get_name
posix_trace_eventid_open
posix_trace_eventset_add
posix_trace_eventset_del
posix_trace_eventset_empty
posix_trace_eventset_fill
posix_trace_eventset_ismember
posix_trace_eventtypelist_getnext_id
posix_trace_eventtypelist_rewind
posix_trace_flush
posix_trace_get_attr
posix_trace_get_filter
posix_trace_get_status
posix_trace_getnext_event
posix_trace_open
posix_trace_rewind
posix_trace_set_filter
posix_trace_shutdown
posix_trace_start
posix_trace_stop
posix_trace_timedgetnext_event
posix_trace_trid_eventid_open
posix_trace_trygetnext_event
posix_typed_mem_get_info
posix_typed_mem_open
pow
powf
powl
pread
printf
pselect
psiginfo
psignal
pthread_atfork
pthread_attr_destroy
pthread_attr_getdetachstate
pthread_attr_getguardsize
pthread_attr_getinheritsched
pthread_attr_getschedparam
pthread_attr_getschedpolicy
pthread_attr_getscope
pthread_attr_getstack
pthread_attr_getstacksize
pthread_attr_init
pthread_attr_setdetachstate
pthread_attr_setguardsize
pthread_attr_setinheritsched
pthread_attr_setschedparam
pthread_attr_setschedpolicy
pthread_attr_setscope
pthread_attr_setstack
pthread_attr_setstacksize
pthread_barrier_destroy
pthread_barrier_init
pthread_barrier_wait
pthread_barrierattr_destroy
pthread_barrierattr_getpshared
pthread_barrierattr_init
pthread_barrierattr_setpshared
pthread_cancel
pthread_cleanup_pop
pthread_cleanup_push
pthread_cond_broadcast
pthread_cond_destroy
pthread_cond_init
pthread_cond_signal
pthread_cond_timedwait
pthread_cond_wait
pthread_condattr_destroy
pthread_condattr_getclock
pthread_condattr_getpshared
pthread_condattr_init
pthread_condattr_setclock
pthread_condattr_setpshared
pthread_create
pthread_detach
pthread_equal
pthread_exit
pthread_getconcurrency
pthread_getcpuclockid
pthread_getschedparam
pthread_getspecific
pthread_join
pthread_key_create
pthread_key_delete
pthread_kill
pthread_mutex_consistent
pthread_mutex_destroy
pthread_mutex_getprioceiling
pthread_mutex_init
pthread_mutex_lock
pthread_mutex_setprioceiling
pthread_mutex_timedlock
pthread_mutex_trylock
pthread_mutex_unlock
pthread_mutexattr_destroy
pthread_mutexattr_getprioceiling
pthread_mutexattr_getprotocol
pthread_mutexattr_getpshared
pthread_mutexattr_getrobust
pthread_mutexattr_gettype
pthread_mutexattr_init
pthread_mutexattr_setprioceiling
pthread_mutexattr_setprotocol
pthread_mutexattr_setpshared
pthread_mutexattr_setrobust
pthread_mutexattr_settype
pthread_once
pthread_rwlock_destroy
pthread_rwlock_init
pthread_rwlock_rdlock
pthread_rwlock_timedrdlock
pthread_rwlock_timedwrlock
pthread_rwlock_tryrdlock
pthread_rwlock_trywrlock
pthread_rwlock_unlock
pthread_rwlock_wrlock
pthread_rwlockattr_destroy
pthread_rwlockattr_getpshared
pthread_rwlockattr_init
pthread_rwlockattr_setpshared
pthread_self
pthread_setcancelstate
pthread_setcanceltype
pthread_setconcurrency
pthread_setschedparam
pthread_setschedprio
pthread_setspecific
pthread_sigmask
pthread_spin_destroy
pthread_spin_init
pthread_spin_lock
pthread_spin_trylock
pthread_spin_unlock
pthread_testcancel
ptsname
putc
putc_unlocked
putchar
putchar_unlocked
putenv
putmsg
putpmsg
puts
pututxline
putwc
putwchar
pwrite
qsort
raise
rand
rand_r
random
read
readdir
readdir_r
readlink
readlinkat
readv
realloc
realpath
recv
recvfrom
recvmsg
regcomp
regerror
regexec
regfree
remainder
remainderf
remainderl
remove
remque
remquo
remquof
remquol
rename
renameat
rewind
rewinddir
rint
rintf
rintl
rmdir
round
roundf
roundl
scalbln
scalblnf
scalblnl
scalbn
scalbnf
scalbnl
scandir
scanf
sched_get_priority_max
sched_get_priority_min
sched_getparam
sched_getscheduler
sched_rr_get_interval
sched_setparam
sched_setscheduler
sched_yield
seed48
seekdir
select
sem_close
sem_destroy
sem_getvalue
sem_init
sem_open
sem_post
sem_timedwait
sem_trywait
sem_unlink
sem_wait
semctl
semget
semop
send
sendmsg
sendto
setbuf
setegid
setenv
seteuid
setgid
setgrent
sethostent
setitimer
setjmp
setkey
setlocale
setlogmask
setnetent
setpgid
setpgrp
setpriority
setprotoent
setpwent
setregid
setreuid
setrlimit
setservent
setsid
setsockopt
setstate
setuid
setutxent
setvbuf
shm_open
shm_unlink
shmat
shmctl
shmdt
shmget
shutdown
sigaction
sigaddset
sigaltstack
sigdelset
sigemptyset
sigfillset
sighold
sigignore
siginterrupt
sigismember
siglongjmp
signal
signbit
signgam
sigpause
sigpending
sigprocmask
sigqueue
sigrelse
sigset
sigsetjmp
sigsuspend
sigtimedwait
sigwait
sigwaitinfo
sin
sinf
sinh
sinhf
sinhl
sinl
sleep
snprintf
sockatmark
socket
socketpair
sprintf
sqrt
sqrtf
sqrtl
srand
srand48
srandom
sscanf
stat
statvfs
stderr
stdin
stdout
stpcpy
stpncpy
strcasecmp
strcasecmp_l
strcat
strchr
strcmp
strcoll
strcoll_l
strcpy
strcspn
strdup
strerror
strerror_l
strerror_r
strfmon
strfmon_l
strftime
strftime_l
strlen
strncasecmp
strncasecmp_l
strncat
strncmp
strncpy
strndup
strnlen
strpbrk
strptime
strrchr
strsignal
strspn
strstr
strtod
strtof
strtoimax
strtok
strtok_r
strtol
strtold
strtoll
strtoul
strtoull
strtoumax
strxfrm
strxfrm_l
swab
swprintf
swscanf
symlink
symlinkat
sync
sysconf
syslog
system
tan
tanf
tanh
tanhf
tanhl
tanl
tcdrain
tcflow
tcflush
tcgetattr
tcgetpgrp
tcgetsid
tcsendbreak
tcsetattr
tcsetpgrp
tdelete
telldir
tempnam
tfind
tgamma
tgammaf
tgammal
time
timer_create
timer_delete
timer_getoverrun
timer_gettime
timer_settime
times
timezone
tmpfile
tmpnam
toascii
tolower
tolower_l
toupper
toupper_l
towctrans
towctrans_l
towlower
towlower_l
towupper
towupper_l
trunc
truncate
truncf
truncl
tsearch
ttyname
ttyname_r
twalk
tzname
tzset
ulimit
umask
uname
ungetc
ungetwc
unlink
unlinkat
unlockpt
unsetenv
uselocale
utime
utimensat
utimes
va_arg
va_copy
va_end
va_start
vdprintf
vfprintf
vfscanf
vfwprintf
vfwscanf
vprintf
vscanf
vsnprintf
vsprintf
vsscanf
vswprintf
vswscanf
vwprintf
vwscanf
wait
waitid
waitpid
wcpcpy
wcpncpy
wcrtomb
wcscasecmp
wcscasecmp_l
wcscat
wcschr
wcscmp
wcscoll
wcscoll_l
wcscpy
wcscspn
wcsdup
wcsftime
wcslen
wcsncasecmp
wcsncasecmp_l
wcsncat
wcsncmp
wcsncpy
wcsnlen
wcsnrtombs
wcspbrk
wcsrchr
wcsrtombs
wcsspn
wcsstr
wcstod
wcstof
wcstoimax
wcstok
wcstol
wcstold
wcstoll
wcstombs
wcstoul
wcstoull
wcstoumax
wcswidth
wcsxfrm
wcsxfrm_l
wctob
wctomb
wctrans
wctrans_l
wctype
wctype_l
wcwidth
wmemchr
wmemcmp
wmemcpy
wmemmove
wmemset
wordexp
wordfree
wprintf
write
writev
wscanf
y0
y1
yn
bcmp
bcopy
bsd_signal
bzero
ecvt
fcvt
ftime
gcvt
getcontext
gethostbyaddr
gethostbyname
getwd
h_errno
index
makecontext
mktemp
pthread_attr_getstackaddr
pthread_attr_setstackaddr
rindex
scalb
setcontext
swapcontext
ualarm
usleep
vfork
wcswcs
<aio.h>
<aliases.h>
<argp.h>
<argz.h>
<arpa/inet.h>
<byteswap.h>
<complex.h>
<crypt.h>
<ctype.h>
<dirent.h>
<dlfcn.h>
<envz.h>
<err.h>
<errno.h>
<error.h>
<execinfo.h>
<fcntl.h>
<fenv.h>
<fmtmsg.h>
<fstab.h>
<fts.h>
<getopt.h>
<glob.h>
<gnu/libc-version.h>
<grp.h>
<ifaddrs.h>
<libintl.h>
<link.h>
<malloc.h>
<math.h>
drem
dremf
dreml
exp10
exp10f
exp10l
finite
finitef
finitel
gamma
gammaf
gammal
isinff
isinfl
isnanf
isnanl
j0f
j0l
j1f
j1l
jnf
jnl
lgamma_r
lgammaf_r
lgammal_r
matherr
pow10
pow10f
pow10l
scalbf
scalbl
significand
significandf
significandl
sincos
sincosf
sincosl
y0f
y0l
y1f
y1l
ynf
ynl
<mcheck.h>
<mntent.h>
<netdb.h>
endnetgrent
gethostbyaddr_r
gethostbyname2
gethostbyname2_r
gethostbyname_r
gethostent_r
getnetbyaddr_r
getnetbyname_r
getnetent_r
getnetgrent
getnetgrent_r
getprotobyname_r
getprotobynumber_r
getprotoent_r
getservbyname_r
getservbyport_r
getservent_r
herror
hstrerror
innetgr
rcmd
rcmd_af
rexec
rexec_af
rresvport
rresvport_af
ruserok
ruserok_af
setnetgrent
<netinet/ether.h>
<netinet/in.h>
bindresvport
getipv4sourcefilter
getsourcefilter
in6addr_any
in6addr_loopback
inet6_option_alloc
inet6_option_append
inet6_option_find
inet6_option_init
inet6_option_next
inet6_option_space
setipv4sourcefilter
setsourcefilter
<obstack.h>
<printf.h>
<pthread.h>
<pty.h>
<pwd.h>
<regex.h>
<regexp.h>
<resolv.h>
<rpc/auth.h>
authdes_create
authdes_pk_create
authnone_create
authunix_create
authunix_create_default
getnetname
host2netname
key_decryptsession
key_decryptsession_pk
key_encryptsession
key_encryptsession_pk
key_gendes
key_get_conv
key_secretkey_is_set
key_setsecret
netname2host
netname2user
user2netname
xdr_des_block
xdr_opaque_auth
<rpc/auth_des.h>
<rpc/auth_unix.h>
<rpc/clnt.h>
callrpc
clnt_create
clnt_pcreateerror
clnt_perrno
clnt_perror
clnt_spcreateerror
clnt_sperrno
clnt_sperror
clntraw_create
clnttcp_create
clntudp_bufcreate
clntudp_create
clntunix_create
get_myaddress
getrpcport
rpc_createerr
<rpc/des_crypt.h>
<rpc/key_prot.h>
<rpc/netdb.h>
<rpc/pmap_clnt.h>
<rpc/pmap_prot.h>
<rpc/pmap_rmt.h>
<rpc/rpc_msg.h>
<rpc/svc.h>
svc_exit
svc_fdset
svc_getreq
svc_getreq_common
svc_getreq_poll
svc_getreqset
svc_max_pollfd
svc_pollfd
svc_register
svc_run
svc_sendreply
svc_unregister
svcerr_auth
svcerr_decode
svcerr_noproc
svcerr_noprog
svcerr_progvers
svcerr_systemerr
svcerr_weakauth
svcraw_create
svctcp_create
svcudp_bufcreate
svcudp_create
svcunix_create
xprt_register
xprt_unregister
<rpc/xdr.h>
xdr_array
xdr_bool
xdr_bytes
xdr_char
xdr_double
xdr_enum
xdr_float
xdr_free
xdr_hyper
xdr_int
xdr_int16_t
xdr_int32_t
xdr_int64_t
xdr_int8_t
xdr_long
xdr_longlong_t
xdr_netobj
xdr_opaque
xdr_pointer
xdr_quad_t
xdr_reference
xdr_short
xdr_sizeof
xdr_string
xdr_u_char
xdr_u_hyper
xdr_u_int
xdr_u_long
xdr_u_longlong_t
xdr_u_quad_t
xdr_u_short
xdr_uint16_t
xdr_uint32_t
xdr_uint64_t
xdr_uint8_t
xdr_union
xdr_vector
xdr_void
xdr_wrapstring
xdrmem_create
xdrrec_create
xdrrec_endofrecord
xdrrec_eof
xdrrec_skiprecord
xdrstdio_create
<rpcsvc/nislib.h>
nis_add
nis_add_entry
nis_addmember
nis_checkpoint
nis_clone_object
nis_creategroup
nis_destroy_object
nis_destroygroup
nis_dir_cmp
nis_domain_of
nis_domain_of_r
nis_first_entry
nis_freenames
nis_freeresult
nis_freeservlist
nis_freetags
nis_getnames
nis_getservlist
nis_ismember
nis_leaf_of
nis_leaf_of_r
nis_lerror
nis_list
nis_local_directory
nis_local_group
nis_local_host
nis_local_principal
nis_lookup
nis_mkdir
nis_modify
nis_modify_entry
nis_name_of
nis_name_of_r
nis_next_entry
nis_perror
nis_ping
nis_print_directory
nis_print_entry
nis_print_group
nis_print_group_entry
nis_print_link
nis_print_object
nis_print_result
nis_print_rights
nis_print_table
nis_remove
nis_remove_entry
nis_removemember
nis_rmdir
nis_servstate
nis_sperrno
nis_sperror
nis_sperror_r
nis_stats
nis_verifygroup
<rpcsvc/nis_callback.h>
<rpcsvc/yp.h>
xdr_domainname
xdr_keydat
xdr_mapname
xdr_peername
xdr_valdat
xdr_ypbind_binding
xdr_ypbind_resp
xdr_ypbind_resptype
xdr_ypbind_setdom
xdr_ypmap_parms
xdr_ypmaplist
xdr_yppush_status
xdr_yppushresp_xfr
xdr_ypreq_key
xdr_ypreq_nokey
xdr_ypreq_xfr
xdr_ypresp_all
xdr_ypresp_key_val
xdr_ypresp_maplist
xdr_ypresp_master
xdr_ypresp_order
xdr_ypresp_val
xdr_ypresp_xfr
xdr_ypstat
xdr_ypxfrstat
<rpcsvc/yp_prot.h>
<rpcsvc/ypclnt.h>
<rpcsvc/ypupd.h>
<sched.h>
<search.h>
<selinux/selinux.h>
<shadow.h>
<signal.h>
<stdio.h>
asprintf
cuserid
clearerr_unlocked
fcloseall
feof_unlocked
ferror_unlocked
fflush_unlocked
fgetc_unlocked
fgets_unlocked
fileno_unlocked
fopencookie
fputc_unlocked
fputs_unlocked
fread_unlocked
fwrite_unlocked
getw
putw
setbuffer
setlinebuf
sys_errlist
sys_nerr
tmpnam_r
vasprintf
<stdlib.h>
canonicalize_file_name
cfree
clearenv
drand48_r
ecvt_r
erand48_r
fcvt_r
getloadavg
getpt
initstate_r
jrand48_r
lcong48_r
lrand48_r
mkostemp
mkostemps
mrand48_r
mkstemps
nrand48_r
on_exit
ptsname_r
qecvt
qecvt_r
qfcvt
qfcvt_r
qgcvt
random_r
rpmatch
seed48_r
setstate_r
srand48_r
srandom_r
strtod_l
strtof_l
strtol_l
strtold_l
strtoll_l
strtoq
strtoul_l
strtoull_l
strtouq
valloc
<string.h>
<sys/capability.h>
<sys/epoll.h>
<sys/file.h>
<sys/fsuid.h>
<sys/gmon.h>
<sys/io.h>, <sys/perm.h>
<sys/kdaemon.h>
<sys/klog.h>
<sys/mman.h>
<sys/mount.h>
<sys/personality.h>
<sys/prctl.h>
<sys/profil.h>
<sys/ptrace.h>
<sys/quota.h>
<sys/reboot.h>
<sys/sem.h>
<sys/sendfile.h>
<sys/socket.h>
<sys/stat.h>
<sys/statfs.h>
<sys/swap.h>
<sys/sysctl.h>
<sys/sysinfo.h>
<sys/syslog.h>
<sys/sysmacros.h>
<sys/time.h>
<sys/timex.h>
<sys/ustat.h>
<sys/vlimit.h>
<sys/vm86.h>
<sys/vtimes.h>
<sys/wait.h>
<sys/xattr.h>
<termios.h>
<time.h>
<ttyent.h>
<unistd.h>
acct
brk
chroot
daemon
dup3
endusershell
euidaccess
execvpe
get_current_dir_name
getdomainname
getdtablesize
getpagesize
getpass
getresgid
getresuid
getusershell
group_member
pipe2
profil
revoke
sbrk
setlogin
setdomainname
sethostid
sethostname
setresgid
setresuid
setusershell
syscall
ttyslot
vhangup
<utmp.h>
<utmpx.h>
<wchar.h>
fgetwc_unlocked
fgetws_unlocked
fputwc_unlocked
fputws_unlocked
getwc_unlocked
getwchar_unlocked
putwc_unlocked
putwchar_unlocked
wcschrnul
wcsftime_l
wcstod_l
wcstof_l
wcstol_l
wcstold_l
wcstoll_l
wcstoq
wcstoul_l
wcstoull_l
wcstouq
wmempcpy
This manual is for GNU Gnulib (updated 2010-07-04 02:04:12), which is a library of common routines intended to be shared at the source level.
Copyright © 2004-2010 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled “GNU Free Documentation License”.
Gnulib is a source code library. It provides basic functionalities to programs and libraries. Currently (as of October 2006) more than 30 packages make use of Gnulib.
Resources:
Gnulib is useful to enhance various aspects of a package:
asprintf, canonicalize_file_name are not affected
by buffer sizing problems that affect sprintf, realpath.
openat does not have the race conditions that open has. Etc.
xalloc,
xprintf, xstrtod, xgetcwd.
Classical libraries are installed as binary object code. Gnulib is
different: It is used as a source code library. Each package that uses
Gnulib thus ships with part of the Gnulib source code. The used portion
of Gnulib is tailored to the package: A build tool, called
gnulib-tool, is provided that copies a tailored subset of Gnulib
into the package.
One of the goals of Gnulib is to make portable programming easy, on the basis of the standards relevant for GNU (and Unix). The objective behind that is to avoid a fragmentation of the user community into disjoint user communities according to the operating system, and instead allow synergies between users on different operating systems.
Another goal of Gnulib is to provide application code that can be shared between several applications. Some people wonder: "What? glibc doesn't have a function to copy a file?" Indeed, the scope of a system's libc is to implement the relevant standards (ISO C99, POSIX:2001) and to provide access functions to the kernel's system calls, and little more.
There is no clear borderline between both areas.
For example, Gnulib has a facility for generating the name of backup files. While this task is entirely at the application level — no standard specifies an API for it — the naïve code has some portability problems because on some platforms the length of file name components is limited to 30 characters or so. Gnulib handles that.
Similarly, Gnulib has a facility for executing a command in a
subprocess. It is at the same time a portability enhancement (it
works on GNU, Unix, and Windows, compared to the classical
fork/exec idiom which is not portable to Windows), as well
as an application aid: it takes care of redirecting stdin and/or
stdout if desired, and emits an error message if the subprocess
failed.
Gnulib is divided into modules. Every module implements a single facility. Modules can depend on other modules.
A module consists of a number of files and a module description. The
files are copied by gnulib-tool into the package that will use it,
usually verbatim, without changes. Source code files (.h, .c files)
reside in the lib/ subdirectory. Autoconf macro files reside in
the m4/ subdirectory. Build scripts reside in the
build-aux/ subdirectory.
The module description contains the list of files — gnulib-tool
copies these files. It contains the module's
dependencies — gnulib-tool installs them as well. It also
contains the autoconf macro invocation (usually a single line or
nothing at all) — gnulib-tool ensures this is invoked from the
package's configure.ac file. And also a Makefile.am
snippet — gnulib-tool collects these into a Makefile.am
for the tailored Gnulib part. The module description and include file
specification are for documentation purposes; they are combined into
MODULES.html.
The module system serves two purposes:
getopt_long function — this is a common way to implement parsing
of command line options in a way that complies with the GNU standards —
needs the source code (lib/getopt.c and others), the autoconf macro
which detects whether the system's libc already has this function (in
m4/getopt.m4), and a few Makefile.am lines that create the
substitute getopt.h if not. These three pieces belong together.
They cannot be used without each other. The module description and
gnulib-tool ensure that they are copied altogether into the
destination package.
In other words, the module is the elementary unit of code in Gnulib, comparable to a class in object-oriented languages like Java or C#.
The module system is the basis of gnulib-tool. When
gnulib-tool copies a part of Gnulib into a package, it first
compiles a module list, starting with the requested modules and adding all
the dependencies, and then collects the files, configure.ac
snippets and Makefile.am snippets.
There are modules of various kinds in Gnulib. For a complete list of the modules, see in MODULES.html.
When a function is not implemented by a system, the Gnulib module provides an implementation under the same name. Examples are the ‘snprintf’ and ‘readlink’ modules.
Similarly, when a function is not correctly implemented by a system, Gnulib provides a replacement. For functions, we use the pattern
#if !HAVE_WORKING_FOO
# define foo rpl_foo
#endif
and implement the foo function under the name rpl_foo. This
renaming is needed to avoid conflicts at compile time (in case the system
header files declare foo) and at link/run time (because the code
making use of foo could end up residing in a shared library, and
the executable program using this library could be defining foo
itself).
For header files, such as stdbool.h or stdint.h, we provide
the substitute only if the system doesn't provide a correct one. The
template of this replacement is distributed in a slightly different name,
with ‘.in’ inserted before the ‘.h’ extension, so that on
systems which do provide a correct
header file the system's one is used.
These are sometimes POSIX functions with GNU extensions also found in glibc — examples: ‘getopt’, ‘fnmatch’ — and often new APIs — for example, for all functions that allocate memory in one way or the other, we have variants which also include the error checking against the out-of-memory condition.
Examples are a module for copying a file — the portability problems
relate to the copying of the file's modification time, access rights,
and extended attributes — or a module for extracting the tail
component of a file name — here the portability to Woe32 requires a
different API than the classical POSIX basename function.
Examples are an error reporting function, a module that allows output of numbers with K/M/G suffixes, or cryptographic facilities.
Examples are data structures like ‘list’, or abstract output stream
classes that work around the fact that an application cannot implement an
stdio FILE with its logic. Here, while staying in C, we use
implementation techniques like tables of function pointers, known from the
C++ language or from the Linux kernel.
Examples are the ‘iconv’ module, which interfaces to the
iconv facility, regardless whether it is contained in libc or in
an external libiconv. Or the ‘readline’ module, which
interfaces to the GNU readline library.
An example is the ‘maintainer-makefile’ module, which provides extra Makefile tags for maintaining a package.
Gnulib is maintained collaboratively. The mailing list is
<bug-gnulib at gnu dot org>. Be warned that some people on the
list may be very active at some times and unresponsive at other times.
Every module has one or more maintainers. While issues are discussed collaboratively on the list, the maintainer of a module nevertheless has a veto right regarding changes in his module.
All patches should be posted the list, regardless whether they are proposed patches or whether they are committed immediately by the maintainer of the particular module. The purpose is not only to inform the other users of the module, but mainly to allow peer review. It is not uncommon that several people contribute comments or spot bugs after a patch was proposed.
Conversely, if you are using Gnulib, and a patch is posted that affects one of the modules that your package uses, you have an interest in proofreading the patch.
Most modules are under the GPL. Some, mostly modules which can reasonably be used in libraries, are under LGPL. The source files always say "GPL", but the real license specification is in the module description file. If the module description file says "GPL", it means "GPLv3+" (GPLv3 or newer, at the licensee's choice); if it says "LGPL", it means "LGPLv3+" (LGPLv3 or newer, at the licensee's choice).
More precisely, the license specification in the module description file applies to the files in lib/ and build-aux/. Different licenses apply to files in special directories:
Copyright © 200X-200Y Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification, in any medium, are permitted without royalty provided the copyright notice and this notice are preserved.
Copyright © 200X-200Y Free Software Foundation, Inc.
This file is free software; the Free Software Foundation gives unlimited permission to copy and/or distribute it, with or without modifications, as long as this notice is preserved.
Copyright © 2004-200Y Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled “GNU Free Documentation License”.
If you want to use some Gnulib modules under LGPL, you can do so by
passing the option ‘--lgpl’ to gnulib-tool. This will
replace the GPL header with an LGPL header while copying the source
files to your package. Similarly, if you want some Gnulib modules
under LGPLv2+ (Lesser GPL version 2.1 or newer), you can do so by
passing the option ‘--lgpl=2’ to gnulib-tool.
Keep in mind that when you submit patches to files in Gnulib, you should license them under a compatible license. This means that sometimes the contribution will have to be LGPL, if the original file is available under LGPL. You can find out about it by looking for a "License: LGPL" information in the corresponding module description.
Gnulib modules are continually adapted, to match new practices, to be consistent with newly added modules, or simply as a response to build failure reports. Gnulib is available in two qualities:
If you are willing to report an occasional regression, we recommend to use the newest version always, except in periods of major changes. Most Gnulib users do this. If you prefer stable releases, please use the newest stable release.
Gnulib is open in the sense that we gladly accept contributions if they are generally useful, well engineered, and if the contributors have signed the obligatory papers with the FSF.
The module system is open in the sense that a package using Gnulib can
gnulib-tool.
This is achieved by the ‘--local-dir’ option of gnulib-tool
(see Extending Gnulib).
The gnulib-tool command is the recommended way to import Gnulib modules. It is possible to borrow Gnulib modules in a package without using gnulib-tool, relying only on the meta-information stored in the modules/* files, but with a growing number of modules this becomes tedious. gnulib-tool simplifies the management of source files, Makefile.ams and configure.ac in packages incorporating Gnulib modules.
gnulib-tool is not installed in a standard directory that is
contained in the PATH variable. It needs to be run directly in
the directory that contains the Gnulib source code. You can do this
either by specifying the absolute filename of gnulib-tool, or
you can also use a symbolic link from a place inside your PATH
to the gnulib-tool file of your preferred and most up-to-date
Gnulib checkout, like this:
$ ln -s $HOME/gnu/src/gnulib.git/gnulib-tool $HOME/bin/gnulib-tool
Run ‘gnulib-tool --help’ for information. To get familiar with
gnulib-tool without affecting your sources, you can also try
some commands with the option ‘--dry-run’; then
gnulib-tool will only report which actions it would perform in
a real run without changing anything.
There are three ways of finding the names of Gnulib modules that you can use in your package:
Gnulib assumes that your project uses Autoconf. When using Gnulib, you will need to have Autoconf and Automake among your build tools. Note that while the use of Automake in your project's top level directory is an easy way to fulfil the Makefile conventions of the GNU coding standards, Gnulib does not require it. But when you use Gnulib, Automake will be used at least in a subdirectory of your project.
Invoking ‘gnulib-tool --import’ will copy source files, create a Makefile.am to build them, generate a file gnulib-comp.m4 with Autoconf M4 macro declarations used by configure.ac, and generate a file gnulib-cache.m4 containing the cached specification of how Gnulib is used.
Our example will be a library that uses Autoconf, Automake and
Libtool. It calls strdup, and you wish to use gnulib to make
the package portable to C89 and C99 (which don't have strdup).
~/src/libfoo$ gnulib-tool --import strdup
Module list with included dependencies:
absolute-header
extensions
strdup
string
File list:
lib/dummy.c
lib/strdup.c
lib/string.in.h
m4/absolute-header.m4
m4/extensions.m4
m4/gnulib-common.m4
m4/strdup.m4
m4/string_h.m4
Creating directory ./lib
Creating directory ./m4
Copying file lib/dummy.c
Copying file lib/strdup.c
Copying file lib/string.in.h
Copying file m4/absolute-header.m4
Copying file m4/extensions.m4
Copying file m4/gnulib-common.m4
Copying file m4/gnulib-tool.m4
Copying file m4/strdup.m4
Copying file m4/string_h.m4
Creating lib/Makefile.am
Creating m4/gnulib-cache.m4
Creating m4/gnulib-comp.m4
Finished.
You may need to add #include directives for the following .h files.
#include <string.h>
Don't forget to
- add "lib/Makefile" to AC_CONFIG_FILES in ./configure.ac,
- mention "lib" in SUBDIRS in Makefile.am,
- mention "-I m4" in ACLOCAL_AMFLAGS in Makefile.am,
- invoke gl_EARLY in ./configure.ac, right after AC_PROG_CC,
- invoke gl_INIT in ./configure.ac.
~/src/libfoo$
By default, the source code is copied into lib/ and the M4
macros in m4/. You can override these paths by using
--source-base=DIRECTORY and --m4-base=DIRECTORY. Some
modules also provide other files necessary for building. These files
are copied into the directory specified by ‘AC_CONFIG_AUX_DIR’ in
configure.ac or by the --aux-dir=DIRECTORY option. If
neither is specified, the current directory is assumed.
gnulib-tool can make symbolic links instead of copying the
source files. The option to specify for this is ‘--symlink’, or
‘-s’ for short. This can be useful to save a few kilobytes of disk
space. But it is likely to introduce bugs when gnulib is updated;
it is more reliable to use ‘gnulib-tool --update’ (see below)
to update to newer versions of gnulib. Furthermore it requires
extra effort to create self-contained tarballs, and it may disturb some
mechanism the maintainer applies to the sources. For these reasons,
this option is generally discouraged.
gnulib-tool will overwrite any pre-existing files, in
particular Makefile.am. Unfortunately, separating the
generated Makefile.am content (for building the gnulib library)
into a separate file, say gnulib.mk, that could be included
by your handwritten Makefile.am is not possible, due to how
variable assignments are handled by Automake.
Consequently, it is a good idea to choose directories that are not
already used by your projects, to separate gnulib imported files from
your own files. This approach is also useful if you want to avoid
conflicts between other tools (e.g., gettextize that also copy
M4 files into your package. Simon Josefsson successfully uses a source
base of gl/, and a M4 base of gl/m4/, in several
packages.
After the ‘--import’ option on the command line comes the list of Gnulib modules that you want to incorporate in your package. The names of the modules coincide with the filenames in Gnulib's modules/ directory.
Some Gnulib modules depend on other Gnulib modules. gnulib-tool
will automatically add the needed modules as well; you need not list
them explicitly. gnulib-tool will also memorize which dependent
modules it has added, so that when someday a dependency is dropped, the
implicitly added module is dropped as well (unless you have explicitly
requested that module).
If you want to cut a dependency, i.e., not add a module although one of your requested modules depends on it, you may use the option ‘--avoid=module’ to do so. Multiple uses of this option are possible. Of course, you will then need to implement the same interface as the removed module.
A few manual steps are required to finish the initial import.
gnulib-tool printed a summary of these steps.
First, you must ensure Autoconf can find the macro definitions in
gnulib-comp.m4. Use the ACLOCAL_AMFLAGS specifier in
your top-level Makefile.am file, as in:
ACLOCAL_AMFLAGS = -I m4
You are now ready to call the M4 macros in gnulib-comp.m4 from
configure.ac. The macro gl_EARLY must be called as soon
as possible after verifying that the C compiler is working.
Typically, this is immediately after AC_PROG_CC, as in:
...
AC_PROG_CC
gl_EARLY
...
The core part of the gnulib checks are done by the macro
gl_INIT. Place it further down in the file, typically where
you normally check for header files or functions. It must come after
other checks which may affect the compiler invocation, such as
AC_MINIX. For example:
...
# For gnulib.
gl_INIT
...
gl_INIT will in turn call the macros related with the
gnulib functions, be it specific gnulib macros, like gl_FUNC_ALLOCA
or autoconf or automake macros like AC_FUNC_ALLOCA or
AM_FUNC_GETLINE. So there is no need to call those macros yourself
when you use the corresponding gnulib modules.
You must also make sure that the gnulib library is built. Add the
Makefile in the gnulib source base directory to
AC_CONFIG_FILES, as in:
AC_CONFIG_FILES(... lib/Makefile ...)
You must also make sure that make will recurse into the gnulib
directory. To achieve this, add the gnulib source base directory to a
SUBDIRS Makefile.am statement, as in:
SUBDIRS = lib
or if you, more likely, already have a few entries in SUBDIRS,
you can add something like:
SUBDIRS += lib
Finally, you have to add compiler and linker flags in the appropriate source directories, so that you can make use of the gnulib library. Since some modules (‘getopt’, for example) may copy files into the build directory, top_builddir/lib is needed as well as top_srcdir/lib. For example:
...
AM_CPPFLAGS = -I$(top_builddir)/lib -I$(top_srcdir)/lib
...
LDADD = lib/libgnu.a
...
Don't forget to #include the various header files. In this
example, you would need to make sure that ‘#include <string.h>’
is evaluated when compiling all source code files, that want to make
use of strdup.
In the usual case where Autoconf is creating a config.h file, you should include config.h first, before any other include file. That way, for example, if config.h defines ‘restrict’ to be the empty string on a pre-C99 host, or a macro like ‘_FILE_OFFSET_BITS’ that affects the layout of data structures, the definition is consistent for all include files. Also, on some platforms macros like ‘_FILE_OFFSET_BITS’ and ‘_GNU_SOURCE’ may be ineffective, or may have only a limited effect, if defined after the first system header file is included.
Finally, note that you can not use AC_LIBOBJ or
AC_REPLACE_FUNCS in your configure.ac and expect the
resulting object files to be automatically added to lib/libgnu.a.
This is because your AC_LIBOBJ and AC_REPLACE_FUNCS invocations
from configure.ac augment a variable @LIBOBJS@ (and/or
@LTLIBOBJS@ if using Libtool), whereas lib/libgnu.a
is built from the contents of a different variable, usually
@gl_LIBOBJS@ (or @gl_LTLIBOBJS@ if using Libtool).
You can at any moment decide to use Gnulib differently than the last time.
If you only want to use more Gnulib modules, simply invoke
gnulib-tool --import new-modules. gnulib-tool
remembers which modules were used last time. The list of modules that
you pass after ‘--import’ is added to the previous list of
modules.
For most changes, such as added or removed modules, or even different choices of ‘--lib’, ‘--source-base’ or ‘--aux-dir’, there are two ways to perform the change.
The standard way is to modify manually the file gnulib-cache.m4 in the M4 macros directory, then launch ‘gnulib-tool --import’.
The other way is to call gnulib-tool again, with the changed
command-line options. Note that this doesn't let you remove modules,
because as you just learned, the list of modules is always cumulated.
Also this way is often impractical, because you don't remember the way
you invoked gnulib-tool last time.
The only change for which this doesn't work is a change of the
‘--m4-base’ directory. Because, when you pass a different value of
‘--m4-base’, gnulib-tool will not find the previous
gnulib-cache.m4 file any more... A possible solution is to manually
copy the gnulib-cache.m4 into the new M4 macro directory.
In the gnulib-cache.m4, the macros have the following meaning:
gl_MODULESgl_AVOIDgl_SOURCE_BASEgl_M4_BASEgl_TESTS_BASEgl_LIBgl_LGPLgl_LIBTOOLgl_MACRO_PREFIXWhen you want to update to a more recent version of Gnulib, without changing the list of modules or other parameters, a simple call does it:
$ gnulib-tool --import
This will create, update or remove files, as needed.
Note: From time to time, changes are made in Gnulib that are not backward compatible. When updating to a more recent Gnulib, you should consult Gnulib's NEWS file to check whether the incompatible changes affect your project.
Gnulib contains some header file overrides. This means that when building on systems with deficient header files in /usr/include/, it may create files named string.h, stdlib.h, stdint.h or similar in the build directory. In the other source directories of your package you will usually pass ‘-I’ options to the compiler, so that these Gnulib substitutes are visible and take precedence over the files in /usr/include/.
These Gnulib substitute header files rely on <config.h> being already included. Furthermore <config.h> must be the first include in every compilation unit. This means that to all your source files and likely also to all your tests source files you need to add an ‘#include <config.h>’ at the top. Which source files are affected? Exactly those whose compilation includes a ‘-I’ option that refers to the Gnulib library directory.
This is annoying, but inevitable: On many systems, <config.h> is
used to set system dependent flags (such as _GNU_SOURCE on GNU systems),
and these flags have no effect after any system header file has been included.
gettextize and autopoint usersThe programs gettextize and autopoint, part of
GNU gettext, import or update the internationalization infrastructure.
Some of this infrastructure, namely ca. 20 autoconf macro files and the
config.rpath file, is also contained in Gnulib and may be imported
by gnulib-tool. The use of gettextize or autopoint
will therefore overwrite some of the files that gnulib-tool has
imported, and vice versa.
Avoiding to use gettextize (manually, as package maintainer) or
autopoint (as part of a script like autoreconf or
autogen.sh) is not the solution: These programs also import the
infrastructure in the po/ and optionally in the intl/ directory.
The copies of the conflicting files in Gnulib are more up-to-date than
the copies brought in by gettextize and autopoint. When a
new gettext release is made, the copies of the files in Gnulib will
be updated immediately.
The solution is therefore:
gettextize, always use the gettextize from the
matching GNU gettext release. For the most recent Gnulib checkout, this is
the newest release found on http://ftp.gnu.org/gnu/gettext/. For an
older Gnulib snapshot, it is the release that was the most recent release
at the time the Gnulib snapshot was taken. Then, after gettextize,
invoke gnulib-tool.
autopoint, invoke gnulib-tool
afterwards.
*** error: gettext infrastructure mismatch:
using a Makefile.in.in from gettext version ...
but the autoconf macros are from gettext version ...,
it means that a new GNU gettext release was made, and its autoconf macros
were integrated into Gnulib and now mismatch the po/ infrastructure.
In this case, fetch and install the new GNU gettext release and run
gettextize followed by gnulib-tool.
Gnulib provides some functions that emit translatable messages using GNU
gettext. The ‘gnulib’ domain at the
Translation Project collects
translations of these messages, which you should incorporate into your
own programs.
There are two basic ways to achieve this. The first, and older, method is to list all the source files you use from Gnulib in your own po/POTFILES.in file. This will cause all the relevant translatable strings to be included in your POT file. When you send this POT file to the Translation Project, translators will normally fill in the translations of the Gnulib strings from their “translation memory”, and send you back updated PO files.
However, this process is error-prone: you might forget to list some source files, or the translator might not be using a translation memory and provide a different translation than another translator, or the translation might not be kept in sync between Gnulib and your package. It is also slow and causes substantial extra work, because a human translator must be in the loop for each language and you will need to incorporate their work on request.
For these reasons, a new method was designed and is now recommended. If
you pass the --po-base=directory and --po-domain=domain
options to gnulib-tool, then gnulib-tool will create a
separate directory with its own POTFILES.in, and fetch current
translations directly from the Translation Project (using
rsync or wget, whichever is available).
The POT file in this directory will be called
domain-gnulib.pot, depending on the domain you gave to the
--po-domain option (typically the same as the package name).
This causes these translations to reside in a separate message domain,
so that they do not clash either with the translations for the main part
of your package nor with those of other packages on the system that use
possibly different versions of Gnulib.
When you use these options, the functions in Gnulib are built
in such a way that they will always use this domain regardless of the
default domain set by textdomain.
In order to use this method, you must – in each program that might use Gnulib code – add an extra line to the part of the program that initializes locale-dependent behavior. Where you would normally write something like:
setlocale (LC_ALL, "");
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
you should add an additional bindtextdomain call to inform
gettext of where the MO files for the extra message domain may be found:
bindtextdomain (PACKAGE "-gnulib", LOCALEDIR);
(This example assumes that the domain that you specified
to gnulib-tool is the same as the value of the PACKAGE
preprocessor macro.)
Since you do not change the textdomain call, the default message
domain for your program remains the same and your own use of gettext
functions will not be affected.
If a project stores its source files in a version control system (VCS), such as CVS, Subversion, or Git, one needs to decide which files to commit.
In principle, all files created by gnulib-tool, except
gnulib-cache.m4, can be treated like generated source files,
like for example a parser.c file generated from
parser.y. Alternatively, they can be considered source files
and updated manually.
Here are the three different approaches in common use. Each has its place, and you should use whichever best suits your particular project and development methods.
gnulib-tool generated files should all be
committed. In this case, you should pass the option
‘--no-vc-files’ to gnulib-tool, which avoids alteration of
VCS-related files such as .cvsignore.
Gnulib also contains files generated by make (and removed by
make clean), using information determined by
configure. For a Gnulib source file of the form
lib/foo.in.h, the corresponding lib/foo.h is such a
make-generated file. These should not be checked
into the VCS, but instead added to .cvsignore or equivalent.
$ gnulib-tool --update
The ‘--update’ option operates much like the ‘--import’ option, but it does not offer the possibility to change the way Gnulib is used. Also it does not report in the ChangeLogs the files that it had to add because they were missing.
Gnulib includes the file build-aux/bootstrap to aid a developer in using this setup. Furthermore, in projects that use git for version control, it is possible to use a git submodule containing the precise commit of the gnulib repository, so that each developer running bootstrap will get the same version of all gnulib-provided files. The location of the submodule can be chosen to fit the package's needs; here's how to initially create the submodule in the directory .gnulib:
$ dir=.gnulib
$ git submodule add -- git://git.sv.gnu.org/gnulib.git $dir
$ git config alias.syncsub "submodule foreach git pull origin master"
Thereafter, bootstrap can run this command to update the submodule to the recorded checkout level:
git submodule update --init $dir
and a developer can use this sequence to update to a newer version of gnulib:
$ git syncsub
$ git add $dir
$ ./bootstrap
Makefile.in generated by Automake. This
increases the size and complexity of the repository, but can help
occasional contributors by not requiring them to have a full Gnulib
checkout to do a build, and all developers by ensuring that all
developers are working with the same version of Gnulib in the
repository. It also supports multiple Gnulib instances within a
project. It remains important not to commit the
make-generated files, as described above.
You can bundle the unit tests of the Gnulib modules together with your
package, through the ‘--with-tests’ option. Together with
‘--with-tests’, you also specify the directory for these tests
through the ‘--tests-base’ option. Of course, you need to add this
directory to the SUBDIRS variable in the Makefile.am of
the parent directory.
The advantage of having the unit tests bundled is that when your program has a problem on a particular platform, running the unit tests may help determine quickly if the problem is on Gnulib's side or on your package's side. Also, it helps verifying Gnulib's portability, of course.
The unit tests will be compiled and run when the user runs ‘make check’. When the user runs only ‘make’, the unit tests will not be compiled.
In the SUBDIRS variable, it is useful to put the Gnulib tests directory
after the directory containing the other tests, not before:
SUBDIRS = gnulib-lib src man tests gnulib-tests
This will ensure that on platforms where there are test failures in either directory, users will see and report the failures from the tests of your program.
Note: In packages which use more than one invocation of gnulib-tool
in the scope of the same configure.ac, you cannot use
‘--with-tests’. You will have to use a separate configure.ac
in this case.
This chapter explains how to write modules of your own, either to extend Gnulib for your own package (see Extending Gnulib), or for inclusion in gnulib proper.
The guidelines in this chapter do not necessarily need to be followed for
using gnulib-tool. They merely represent a set of good practices.
Following them will result in a good structure of your modules and in
consistency with gnulib.
Every API (C functions or variables) provided should be declared in a header file (.h file) and implemented in one or more implementation files (.c files). The separation has the effect that users of your module need to read only the contents of the .h file and the module description in order to understand what the module is about and how to use it - not the entire implementation. Furthermore, users of your module don't need to repeat the declarations of the functions in their code, and are likely to receive notification through compiler errors if you make incompatible changes to the API (like, adding a parameter or changing the return type of a function).
The .h file should declare the C functions and variables that the module provides.
The .h file should be stand-alone. That is, it does not require other .h files to be included before. Rather, it includes all necessary .h files by itself.
It is a tradition to use CPP tricks to avoid parsing the same header file more than once, which might cause warnings. The trick is to wrap the content of the header file (say, foo.h) in a block, as in:
#ifndef FOO_H
# define FOO_H
...
body of header file goes here
...
#endif /* FOO_H */
Whether to use FOO_H or _FOO_H is a matter of taste and
style. The C89 and C99 standards reserve all identifiers that begin with an
underscore and either an uppercase letter or another underscore, for
any use. Thus, in theory, an application might not safely assume that
_FOO_H has not already been defined by a library. On the other
hand, using FOO_H will likely lead the higher risk of
collisions with other symbols (e.g., KEY_H, XK_H, BPF_H,
which are CPP macro constants, or COFF_LONG_H, which is a CPP
macro function). Your preference may depend on whether you consider
the header file under discussion as part of the application (which has
its own namespace for CPP symbols) or a supporting library (that
shouldn't interfere with the application's CPP symbol namespace).
Adapting C header files for use in C++ applications can use another CPP trick, as in:
# ifdef __cplusplus
extern "C"
{
# endif
...
body of header file goes here
...
# ifdef __cplusplus
}
# endif
The idea here is that __cplusplus is defined only by C++
implementations, which will wrap the header file in an ‘extern "C"’
block. Again, whether to use this trick is a matter of taste and
style. While the above can be seen as harmless, it could be argued
that the header file is written in C, and any C++ application using it
should explicitly use the ‘extern "C"’ block itself. Your
preference might depend on whether you consider the API exported by
your header file as something available for C programs only, or for C
and C++ programs alike.
Note that putting a #include in an extern "C" { ... }
block yields a syntax error in C++ mode on some platforms (e.g., glibc
systems with g++ v3.3 to v4.2, AIX, OSF/1, IRIX). For this reason, it
is recommended to place the #include before the extern
"C" block.
The .c file or files implement the functions and variables declared in the .h file.
Every implementation file must start with ‘#include <config.h>’.
This is necessary for activating the preprocessor macros that are defined
on behalf of the Autoconf macros. Some of these preprocessor macros,
such as _GNU_SOURCE, would have no effect if defined after a system
header file has already been included.
Then comes the ‘#include "..."’ specifying the header file that is being implemented. Putting this right after ‘#include <config.h>’ has the effect that it verifies that the header file is self-contained.
Then come the system and application headers. It is customary to put all the system headers before all application headers, so as to minimize the risk that a preprocessor macro defined in an application header confuses the system headers on some platforms.
In summary:
The specification of a function should answer at least the following questions:
Where to put the specification describing exported functions? Three practices are used in gnulib:
In any case, the specification should appear in just one place, unless you can ensure that the multiple copies will always remain identical.
The advantage of putting it in the header file is that the user only has to read the include file normally never needs to peek into the implementation file(s).
The advantage of putting it in the implementation file is that when reviewing or changing the implementation, you have both elements side by side.
The advantage of texinfo formatted documentation is that it is easily published in HTML or Info format.
Currently (as of 2010), half of gnulib uses the first practice, nearly half of gnulib uses the second practice, and a small minority uses the texinfo practice.
For the module description, you can start from an existing module's description, or from a blank one: module/TEMPLATE for a normal module, or module/TEMPLATE-TESTS for a unit test module. Some more fields are possible but rarely used. Use module/TEMPLATE-EXTENDED if you want to use one of them.
Module descriptions have the following fields. Absent fields are equivalent to fields with empty contents.
--with-obsolete is given, omit it when it used as a dependency. It is
good practice to also notify the user about an obsolete module. This is done
by putting into the ‘Notice’ section (see below) text like
‘This module is obsolete.’
Makefile.am the module is applied. By default,
a normal module is applied to source_base/Makefile.am
(normally lib/Makefile.am), whereas a module ending in -tests
is applied to tests_base/Makefile.am (normally
tests/Makefile.am). If this field is ‘all’, it is applied to
both Makefile.ams. This is useful for modules which provide
Makefile.am macros rather than compiled source code.
gnulib-tool copies these files into the package that
uses the module.
This list is typically ordered by importance: First comes the header file, then the implementation files, then other files.
It is possible to have the same file mentioned in multiple modules. That is,
if the maintainers of that module agree on the purpose and future of said
file.
gnulib-tool includes each
required module automatically, unless it is specified with option
--avoid or it is marked as obsolete and the option
--with-obsolete is not given.
A test modules foo-tests implicity depends on the corresponding non-test
module foo. foo implicitly depends on foo-tests if the
latter exists and if the option --with-tests has been given.
Tests modules can depend on non-tests modules. Non-tests modules should not
depend on tests modules. (Recall that tests modules are built in a separate
directory.)
AC_PROG_CC invocation. This section is adequate
for statements that modify CPPFLAGS, as these can affect the results of
other Autoconf macros.
It is forbidden to add items to the CPPFLAGS variable here, other than
temporarily, as these could affect the results of other Autoconf macros.
We avoid adding items to the LIBS variable, other than temporarily.
Instead, the module can export an Autoconf-substituted variable that contains
link options. The user of the module can then decide to which executables
to apply which link options. Recall that a package can build executables of
different kinds and purposes; having all executables link against all
libraries is inappropriate.
If the statements in this section grow larger than a couple of lines, we
recommend moving them to a .m4 file of their own.
Makefile.am statements. Variables like
lib_SOURCES are transformed to match the name of the library
being built in that directory. For example, lib_SOURCES may become
libgnu_a_SOURCES (for a plain library) or libgnu_la_SOURCES
(for a libtool library). Therefore, the normal way of having an
implementation file lib/foo.c compiled unconditionally is to write
lib_SOURCES += foo.c
"foo.h"
$(POW_LIBM)
$(LTLIBICONV) when linking with libtool, $(LIBICONV) otherwise
ChangeLog file.
Please put at least one person here. We don't like unmaintained modules.
For a module foo, an Autoconf macro file m4/foo.m4 is typically
created when the Autoconf macro invocations for the module are longer than
one or two lines.
The name of the main entry point into this Autoconf macro file is typically
gl_FOO. For modules outside Gnulib that are not likely to be moved
into Gnulib, please use a prefix specific to your package: gt_ for
GNU gettext, cu_ for GNU coreutils, etc.
For modules that define a function foo, the entry point is called
gl_FUNC_FOO instead of gl_FOO. For modules that provide a
header file with multiple functions, say foo.h, the entry point is
called gl_FOO_H or gl_HEADER_FOO_H. This convention is useful
because sometimes a header and a function name coincide (for example,
fcntl and fcntl.h).
For modules that provide a replacement, it is useful to split the Autoconf
macro into two macro definitions: one that detects whether the replacement
is needed and requests the replacement using AC_LIBOBJ (this is the
entry point, say gl_FUNC_FOO), and one that arranges for the macros
needed by the replacement code lib/foo.c (typically called
gl_PREREQ_FOO). The reason of this separation is
lib/foo.c, all you have to review
is the Depends-on section of the module description and the
gl_PREREQ_FOO macro in the Autoconf macro file.
A unit test that is a simple C program usually has a module description as simple as this:
Files:
tests/test-foo.c
tests/macros.h
Depends-on:
configure.ac:
Makefile.am:
TESTS += test-foo
check_PROGRAMS += test-foo
The test program tests/test-foo.c often has the following structure:
ASSERT macro.
The body of the test, then, contains many ASSERT invocations. When
a test fails, the ASSERT macro prints the line number of the failing
statement, thus giving you as a developer a idea which part of the test
failed, even when you don't have access to the machine where the test failed
and the reporting user cannot run a debugger.
Sometimes it is convenient to write part of the test as a shell script. (For example, in areas related to process control or interprocess communication, or when different locales should be tried.) In these cases, the typical module description is like this:
Files:
tests/test-foo.sh
tests/test-foo.c
tests/macros.h
Depends-on:
configure.ac:
Makefile.am:
TESTS += test-foo.sh
TESTS_ENVIRONMENT += FOO_BAR='@FOO_BAR@'
check_PROGRAMS += test-foo
Here, the TESTS_ENVIRONMENT variable can be used to pass values
determined by configure or by the Makefile to the shell
script, as environment variables. The values of EXEEXT and of
srcdir, from Autoconf and Automake, are already provided as
environment variables, through an initial value of TESTS_ENVIRONMENT
that gnulib-tool puts in place.
Regardless of the specific form of the unit test, the following guidelines should be respected:
ASSERT macro already does so.
fputs ("Skipping test: multithreading not enabled\n", stderr);
return 77;
Such a message helps detecting bugs in the autoconf macros: A simple message ‘SKIP: test-foo’ does not sufficiently catch the attention of the user.
Incompatible changes to Gnulib modules should be mentioned in Gnulib's NEWS file. Incompatible changes here mean that existing source code may not compile or work any more.
We don't mean changes in the binary interface (ABI), since
Gnulib modules are intended to be suitable for widespread use. Most problems with Gnulib can and should be fixed in a generic way, so that all of Gnulib's users can benefit from the change. But occasionally a problem arises that is difficult or undesirable to fix generically, or a project that uses Gnulib may need to work around an issue before the Gnulib maintainers commit a final fix. Maintainers may also want to add their own pools of modules to projects as Gnulib “staging areas.”
The obvious way to make local changes to Gnulib modules is to use gnulib-tool to check out pristine modules, then to modify the results in-place. This works well enough for short-lived experiments. It is harder to keep modified versions of Gnulib modules for a long time, even though Git (or another distributed version control systems) can help out a lot with this during the development process.
Git, however, doesn't address the distribution issue. When a package
“foobar” needs a modified version of, say, stdint.in.h, it
either has to put a comment into foobar/autogen.sh saying
“Attention! This doesn't work with a pristine Gnulib, you need this
and that patch after checking out Gnulib,” or it has to use the
‘--avoid=stdint’ option and provide the modified stdint
module in a different directory.
The --local-dir option to gnulib-tool solves this problem. It allows the package to override or augment Gnulib. This means:
In a release tarball, you can distribute the contents of this --local-dir directory that will be combinable with newer versions of Gnulib, barring incompatible changes to Gnulib.
If the ‘--local-dir=directory’ option is specified, then gnulib-tool looks in directory whenever it reads a file from the Gnulib directory. Suppose gnulib-tool is looking for file. Then:
Please make wise use of this option. It also allows you to easily hold back modifications you make to Gnulib macros in cases it may be better to share them.
The GSS API does not have a standard error code for the out of memory error condition. Instead of adding a non-standard error code, this library has chosen to adopt a different strategy. Out of memory handling happens in rare situations, but performing the out of memory error handling after almost all API function invocations pollute your source code and might make it harder to spot more serious problems. The strategy chosen improves code readability and robustness.
For most applications, aborting the application with an error message when the out of memory situation occurs is the best that can be wished for. This is how the library behaves by default.
However, we realize that some applications may not want to have the
GSS library abort execution in any situation. The GSS library supports
a hook to let the application regain control and perform its own
cleanups when an out of memory situation has occurred. The application
can define a function (having a void prototype, i.e., no return
value and no parameters) and set the library variable
xalloc_fail_func to that function. The variable should be
declared as follows.
extern void (*xalloc_fail_func) (void);
The GSS library will invoke this function if an out of memory error occurs. Note that after this the GSS library is in an undefined state, so you must unload or restart the application to continue call GSS library functions. The hook is only intended to allow the application to log the situation in a special way. Of course, care must be taken to not allocate more memory, as that will likely also fail.
Modules can be marked obsolete. This means that the problems they fix
don't occur any more on the platforms that are reasonable porting targets
now. gnulib-tool warns when obsolete modules are mentioned on the
command line, and by default ignores dependencies from modules to obsolete
modules. When you pass the option --with-obsolete to
gnulib-tool, dependencies to obsolete modules will be included,
however, unless blocked through an --avoid option. This option
is useful if your package should be portable even to very old platforms.
In order to mark a module obsolete, you need to add this to the module description:
Status:
obsolete
Notice:
This module is obsolete.
Test modules can be marked with some special status attributes. When a
test module has such an attribute, gnulib-tool --import will not
include it by default.
The supported status attributes are:
c++-testlongrunning-testprivileged-testunportable-testgnulib-tool --import will not include tests marked with these
attributes by default. When gnulib-tool is invoked with one
of the options --with-c++-tests, --with-longrunning-tests,
--with-privileged-tests, --with-unportable-tests, it
will include tests despite the corresponding special status attribute.
When gnulib-tool receives the option --with-all-tests,
it will include all tests regardless of their status attributes.
gnulib-tool --create-testdir and
gnulib-tool --create-megatestdir by default include all tests of
modules specified on the command line, regardless of their status
attributes. Tests of modules occurring as dependencies are not included
by default if they have one of these status attributes. The options
--with-c++-tests, --with-longrunning-tests,
--with-privileged-tests, --with-unportable-tests are
recognized here as well. Additionally, gnulib-tool also
understands the options --without-c++-tests,
--without-longrunning-tests, --without-privileged-tests,
--without-unportable-tests.
In order to mark a module with a status attribute, you need to add it to the module description, like this:
Status:
longrunning-test
If only a part of a test deserves a particular status attribute, you
can split the module into a primary and a secondary test module,
say foo-tests and foo-extra-tests. Then add a dependency
from foo-tests to foo-extra-tests, and mark the
foo-extra-tests with the particular status attribute.
The function definitions provided by Gnulib (.c code) are meant
to be compiled by a C compiler. The header files (.h files),
on the other hand, can be used in either C or C++.
By default, when used in a C++ compilation unit, the .h files
declare the same symbols and overrides as in C mode, except that functions
defined by Gnulib or by the system are declared as ‘extern "C"’.
It is also possible to indicate to Gnulib to provide many of its symbols
in a dedicated C++ namespace. If you define the macro
GNULIB_NAMESPACE to an identifier, many functions will be defined
in the namespace specified by the identifier instead of the global
namespace. For example, after you have defined
#define GNULIB_NAMESPACE gnulib
at the beginning of a compilation unit, Gnulib's <fcntl.h> header
file will make available the open function as gnulib::open.
The symbol open will still refer to the system's open function,
with its platform specific bugs and limitations.
The symbols provided in the Gnulib namespace are those for which the
corresponding header file contains a _GL_CXXALIAS_RPL or
_GL_CXXALIAS_SYS macro invocation.
The benefits of this namespace mode are:
open has to be overridden, Gnulib normally does
#define open rpl_open. If your package has a class with a member
open, for example a class foo with a method foo::open,
then if you define this member in a compilation unit that includes
<fcntl.h> and use it in a compilation unit that does not include
<fcntl.h>, or vice versa, you will get a link error. Worse: You
will not notice this problem on the platform where the system's open
function works fine. This problem goes away in namespace mode.
gnulib::open in your code, and you forgot to request the module
‘open’ from Gnulib, you will get a compilation error (regardless of
the platform).
The drawback of this namespace mode is that the system provided symbols in
the global namespace are still present, even when they contain bugs that
Gnulib fixes. For example, if you call open (...) in your code,
it will invoke the possibly buggy system function, even if you have
requested the module ‘open’ from gnulib-tool.
You can turn on the namespace mode in some compilation units and keep it turned off in others. This can be useful if your package consists of an application layer that does not need to invoke POSIX functions and an operating system interface layer that contains all the OS function calls. In such a situation, you will want to turn on the namespace mode for the application layer — to avoid many preprocessor macro definitions — and turn it off for the OS interface layer — to avoid the drawback of the namespace mode, mentioned above.
The module ‘check-version’ can be useful when your gnulib
application is a system library. You will typically wrap the call to
the check_version function through a library API, your library
header file may contain:
#define STRINGPREP_VERSION "0.5.18"
...
extern const char *stringprep_check_version (const char *req_version);
To avoid ELF symbol collisions with other libraries that use the ‘check-version’ module, add to config.h through a AC_DEFINE something like:
AC_DEFINE(check_version, stringprep_check_version,
[Rename check_version.])
The stringprep_check_version function will thus be implemented
by the check_version module.
There are two uses of the interface. The first is a way to provide for applications to find out the version number of the library it uses. The application may contain diagnostic code such as:
printf ("Stringprep version: header %s library %s",
STRINGPREP_VERSION,
stringprep_check_version (NULL));
Separating the library and header file version can be useful when searching for version mismatch related problems.
The second uses is as a rudimentary test of proper library version, by making sure the application get a library version that is the same, or newer, than the header file used when building the application. This doesn't catch all problems, libraries may change backwards incompatibly in later versions, but enable applications to require a certain minimum version before it may proceed.
Typical uses look like:
/* Check version of libgcrypt. */
if (!gcry_check_version (GCRYPT_VERSION))
die ("version mismatch\n");
There are several issues when building applications that should work under Windows. The most problematic part is for applications that use sockets.
Hopefully, we can add helpful notes to this section that will help you port your application to Windows using gnulib.
This was written for the getaddrinfo module, but may be applicable to other functions too.
The getaddrinfo function exists in ws2tcpip.h and -lws2_32 on Windows
XP. The function declaration is present if WINVER >= 0x0501.
Windows 2000 does not have getaddrinfo in its WS2_32.DLL.
Thus, if you want to assume Windows XP or later, you can add AC_DEFINE(WINVER, 0x0501) to avoid compiling to (partial) getaddrinfo implementation.
If you want to support Windows 2000, don't do anything. The replacement function will open WS2_32.DLL during run-time to see if there is a getaddrinfo function available, and use it when available.
If you want it to be possible to cross-compile your program to MinGW and you use Libtool, you need to put:
AC_LIBTOOL_WIN32_DLL
in your configure.ac. This sets the correct names for the
OBJDUMP, DLLTOOL, and AS tools for the build.
If you are building a library, you will also need to pass
-no-undefined to make sure Libtool produces a DLL for your
library. From a Makefile.am:
libgsasl_la_LDFLAGS += -no-undefined
Gnulib provides copies of the GNU GPL, GNU LGPL, and GNU FDL licenses
in Texinfo form. (The master location is
http://www.gnu.org/licenses/). These Texinfo documents do not
have any node names and structures built into them; for your manual,
you should @include them in an appropriate @node.
The conventional name for the GPL node is ‘Copying’ and for the FDL ‘GNU Free Documentation License’. The LGPL doesn't seem to have a conventional node name.
Of course the license texts themselves should not be changed at all.
To simplify testing on a wide set of platforms, gnulib is built on many platforms every day and the results are uploaded to:
http://autobuild.josefsson.org/gnulib/
If you wish to help the gnulib development effort with build logs for your favorite platform, you may perform these steps:
On a machine with recent automake, autoconf, m4 installed and with a gnulib git or cvs checkout (typically a Linux machine), use
gnulib-tool --create-megatestdir --with-tests --dir=...
Note: The created directory uses ca. 512 MB on disk.
Transfer this directory to a build machine (HP-UX, Cygwin, or whatever). Often it is easier to transfer one file, and this can be achieved by running, inside the directory the following commands:
./configure
make dist
And then transferring the dummy-0.tar.gz file.
On the build machine, run ./do-autobuild (or "nohup ./do-autobuild"). It creates a directory 'logs/' with a log file for each module.
Submit each log file to Simon's site, either through a
mail `echo gnulib__at__autobuild.josefsson.org | sed -e s/__at__/@/`
or through netcat
autobuild-submit logs/*
This section shows a radically different way to use Gnulib.
You can extract the ISO C / POSIX substitutes part of gnulib by running the command
gnulib-tool --create-testdir --source-base=lib \
--dir=/tmp/posixlib `posix-modules`
The command ‘posix-modules’ is found in the same directory as
gnulib-tool.
The resulting directory can be built on a particular platform,
independently of the program being ported. Then you can configure and
build any program, by setting CPPFLAGS and LDFLAGS at
configure time accordingly: set CPPFLAGS="-I.../posixlib/lib", plus
any essential type definitions and flags that you find in
.../posixlib/config.h, and set
LDFLAGS=".../posixlib/lib/libgnu.a".
This way of using Gnulib is useful when you don't want to modify the program's
source code, or when the program uses a mix between C and C++ sources
(requiring separate builds of the posixlib for the C compiler and
for the C++ compiler).
This chapter describes which header files specified by ISO C or POSIX are substituted by Gnulib, which portability pitfalls are fixed by Gnulib, and which (known) portability problems are not worked around by Gnulib.
The notation “Gnulib module: —” means that Gnulib does not provide a
module providing a substitute for the header file. When the list
“Portability problems not fixed by Gnulib” is empty, such a module is
not needed: No portability problems are known. Otherwise, it indicates
that such a module would be useful but is not available: No one so far
found this header file important enough to contribute a substitute for it.
If you need this particular header file, you may write to
<bug-gnulib at gnu dot org>.
POSIX specification: http://www.opengroup.org/susv3xbd/aio.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/arpa/inet.h.html
Gnulib module: arpa_inet
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/assert.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/complex.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/cpio.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/ctype.h.html
Gnulib module: ctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/dirent.h.html
Gnulib module: dirent
Portability problems fixed by Gnulib:
ino_t is missing on some platforms:
glibc 2.8 and others.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/dlfcn.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/errno.h.html
Gnulib module: errno
Portability problems fixed by Gnulib:
EOVERFLOW, ENOLINK, EMULTIHOP are not defined
on some platforms:
OpenBSD 4.0, OSF/1 5.1, mingw.
ECANCELED is not defined on some platforms:
OpenBSD 4.0, Cygwin, mingw.
ENOMSG, EIDRM, EPROTO, EBADMSG,
ENOTSUP are not defined on some platforms:
OpenBSD 4.0, mingw.
ESTALE is not defined on some platforms:
mingw, Interix 3.5.
EWOULDBLOCK, ETXTBSY, ELOOP, ENOTSOCK,
EDESTADDRREQ, EMSGSIZE, EPROTOTYPE, ENOPROTOOPT,
EPROTONOSUPPORT, EOPNOTSUPP, EAFNOSUPPORT,
EADDRINUSE, EADDRNOTAVAIL, ENETDOWN, ENETUNREACH,
ENETRESET, ECONNABORTED, ECONNRESET, ENOBUFS,
EISCONN, ENOTCONN, ETIMEDOUT, ECONNREFUSED,
EHOSTUNREACH, EALREADY, EINPROGRESS, EDQUOT are
not defined on some platforms:
mingw.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/fcntl.h.html
Gnulib module: fcntl-h
Portability problems fixed by Gnulib:
int on some
platforms:
Solaris 10.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/fenv.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/float.h.html
Gnulib module: float
Portability problems fixed by Gnulib:
LDBL_* macros are incorrect on some platforms:
On OpenBSD 4.0 and BeOS, they are the same as the values of the
DBL_* macros, although ‘long double’ is a larger type than
‘double’.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/fmtmsg.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/fnmatch.h.html
Gnulib module: fnmatch-posix or fnmatch-gnu
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/ftw.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/glob.h.html
Gnulib module: glob
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/grp.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/iconv.h.html
Gnulib module: iconv
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/inttypes.h.html
Gnulib module: inttypes
Portability problems fixed by Gnulib:
imaxabs and imaxdiv are missing on some
platforms:
NetBSD 3.0, OpenBSD 3.8, AIX 5.1, HP-UX 11, IRIX 6.5, OSF/1 5.1, BeOS.
strtoimax and strtoumax are missing on some
platforms:
OpenBSD 3.8, AIX 4.3.2, AIX 5.1 (missing only strtoumax), OSF/1 5.1.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/iso646.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/langinfo.h.html
Gnulib module: langinfo
Portability problems fixed by Gnulib:
CODESET is not defined on some platforms:
glibc 2.0.6, OpenBSD 3.8.
ERA, ERA_D_FMT, ERA_D_T_FMT,
ERA_T_FMT, ALT_DIGITS are not defined on some platforms:
OpenBSD 3.8.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/libgen.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/limits.h.html
Gnulib module: gethostname
Portability problems fixed by Gnulib:
HOST_NAME_MAX macro is not defined on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, OpenBSD 3.8, AIX 5.1, HP-UX 11,
IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw, Interix 3.5, BeOS.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/locale.h.html
Gnulib module: locale
Portability problems fixed by Gnulib:
locale_t type is not defined on some platforms:
glibc 2.11, MacOS X 10.5.
NULL macro that cannot be used in arbitrary
expressions:
NetBSD 5.0
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/math.h.html
Gnulib module: math
Portability problems fixed by Gnulib:
NAN is not defined on some platforms:
OpenBSD 4.0, AIX 5.1, IRIX 6.5, OSF/1 5.1.
NAN is not exposed outside of C99 compilation on some
platforms:
glibc.
NAN and HUGE_VAL expand to a function address
rather than a floating point constant on some platforms:
Solaris 10.
Portability problems not fixed by Gnulib:
NAN is not a compile time constant with some compilers:
OSF/1 with Compaq (ex-DEC) C 6.4.
POSIX specification: http://www.opengroup.org/susv3xbd/monetary.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/mqueue.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/ndbm.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/net/if.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/netdb.h.html
Gnulib module: netdb
Portability problems fixed by Gnulib:
AI_ALL, AI_V4MAPPED,
AI_ADDRCONFIG on some platforms:
NetBSD 5.0.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/netinet/in.h.html
Gnulib module: netinet_in
Portability problems fixed by Gnulib:
<sys/types.h> to be included first.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/netinet/tcp.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/nl/types.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/poll.h.html
Gnulib module: poll
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/pthread.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/pwd.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/regex.h.html
Gnulib module: regex
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/types.h> to be included first.
POSIX specification: http://www.opengroup.org/susv3xbd/sched.h.html
Gnulib module: sched
Portability problems fixed by Gnulib:
struct sched_param is not defined on some platforms:
Haiku.
SCHED_FIFO, SCHED_RR, SCHED_OTHER are not defined on
some platforms:
Haiku.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/search.h.html
Gnulib module: search
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/semaphore.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/setjmp.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/signal.h.html
Gnulib module: signal
Portability problems fixed by Gnulib:
volatile sig_atomic_t is rejected by older compilers on some
platforms:
AIX.
sigset_t is only declared in <sys/types.h> on some platforms:
mingw.
struct sigaction and siginfo_t are missing on some
platforms:
mingw.
struct sigaction lacks the sa_sigaction member on some
platforms:
Irix 5.3, Interix 3.5.
SIGPIPE is not defined on some platforms:
mingw.
SA_NODEFER is not defined on some platforms:
Interix 3.5.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/spawn.h.html
Gnulib module: spawn
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/stdarg.h.html
Gnulib module: stdarg
Portability problems fixed by Gnulib:
va_copy to work.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/stdbool.h.html
Gnulib module: stdbool
Portability problems fixed by Gnulib:
true incorrectly on some platforms:
OpenBSD 4.7 with gcc 2.95.
Portability problems not fixed by Gnulib:
<stdbool.h> must be #included before ‘_Bool’ can be used.
_Bool is a typedef; it might be a macro.
POSIX specification: http://www.opengroup.org/susv3xbd/stddef.h.html
Gnulib module: stddef
Portability problems fixed by Gnulib:
wchar_t.
NULL macro that cannot be used in arbitrary
expressions:
NetBSD 5.0
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/stdint.h.html
Gnulib module: stdint
Portability problems fixed by Gnulib:
SIG_ATOMIC_MIN and SIG_ATOMIC_MAX are incorrect
on some platforms:
FreeBSD 6.2 / ia64.
WINT_MAX is incorrect on some platforms:
mingw.
INT8_MAX, UINT8_MAX etc. are not usable in
preprocessor expressions on some platforms:
HP-UX 11.23.
Portability problems not fixed by Gnulib:
{uint,int}_fast{8,16,32,64}_t may not correspond to the fastest
types available on the system.
long int.
For example, as of 2007, Sun C mishandles #if LLONG_MIN < 0 on
a platform with 32-bit long int and 64-bit long long int.
Some older preprocessors mishandle constants ending in LL.
To work around these problems, compute the value of expressions like
LONG_MAX < LLONG_MAX at configure-time rather than at
#if-time.
The stdint.h module uses #include_next. If you wish to install
the generated stdint.h file under another name, typically in order to
be able to use some of the types defined by stdint.h in your public
header file, you could use the following Makefile.am-snippet:
BUILT_SOURCES += idn-int.h
DISTCLEANFILES += idn-int.h
nodist_include_HEADERS += idn-int.h
idn-int.h:
if test -n "$(STDINT_H)"; then \
sed -e s/include_next/include/ gl/stdint.h > idn-int.h; \
else \
echo '#include <stdint.h>' > idn-int.h; \
fi
POSIX specification: http://www.opengroup.org/susv3xbd/stdio.h.html
Gnulib module: stdio
Portability problems fixed by Gnulib:
off_t is missing on some platforms:
glibc 2.8 and others.
ssize_t is missing on some platforms:
glibc 2.8, MacOS X 10.5, Solaris 10, and others.
va_list is missing on some platforms:
glibc 2.8, OpenBSD 4.0, Solaris 10, and others.
NULL macro that cannot be used in arbitrary
expressions:
NetBSD 5.0
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/stdlib.h.html
Gnulib module: stdlib
Portability problems fixed by Gnulib:
EXIT_SUCCESS and EXIT_FAILURE are not defined on
some platforms.
EXIT_FAILURE is incorrectly defined on Tandem/NSK.
NULL macro that cannot be used in arbitrary
expressions:
NetBSD 5.0
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/string.h.html
Gnulib module: string
Portability problems fixed by Gnulib:
NULL macro that cannot be used in arbitrary
expressions:
NetBSD 5.0
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/strings.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/stropts.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/ipc.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/mman.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/msg.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/resource.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/select.h.html
Gnulib module: sys_select
Portability problems fixed by Gnulib:
<sys/types.h> to be included first.
struct timeval on some platforms:
OSF/1 4.0.
<string.h>
before FD_ZERO can be used — on some platforms:
Solaris 10.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/sem.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/shm.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/socket.h.html
Gnulib module: sys_socket
Portability problems fixed by Gnulib:
<sys/types.h> to be included first.
SHUT_RD, SHUT_WR,
SHUT_RDWR macros on some platforms, despite having the shutdown
functions:
emx+gcc.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/stat.h.html
Gnulib module: sys_stat
Portability problems fixed by Gnulib:
S_IFMT, are missing on some platforms.
S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO,
S_ISLNK, S_ISREG, S_ISSOCK are broken on some platforms.
S_ISDOOR, that are not defined
on other platforms.
lstat and mkdir are not declared on mingw.
UTIME_NOW and UTIME_OMIT are missing on some
platforms.
struct stat does not include st_atim,
st_mtim, or st_ctim members. Use the gnulib module
‘stat-time’ for accessors to portably get at subsecond resolution.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/statvfs.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/time.h.html
Gnulib module: sys_time
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/timeb.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/times.h.html
Gnulib module: sys_times
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/types.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/uio.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/un.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/utsname.h.html
Gnulib module: sys_utsname
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/sys/wait.h.html
Gnulib module: sys_wait
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/syslog.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/tar.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/termios.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/tgmath.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/time.h.html
Gnulib module: time
Portability problems fixed by Gnulib:
NULL macro that cannot be used in arbitrary
expressions:
NetBSD 5.0
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/trace.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/ucontext.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/ulimit.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/unistd.h.html
Gnulib module: unistd
Portability problems fixed by Gnulib:
_exit function is not declared in this file on some platforms:
mingw.
NULL macro that cannot be used in arbitrary
expressions:
NetBSD 5.0
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/utime.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/utime.h>
if <utime.h> is missing.
POSIX specification: http://www.opengroup.org/susv3xbd/utmpx.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/wchar.h.html
Gnulib module: wchar
Portability problems fixed by Gnulib:
wint_t and macro WEOF are missing on some platforms:
IRIX 5.3.
NULL macro that cannot be used in arbitrary
expressions:
NetBSD 5.0
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/wctype.h.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
wint_t and macro WEOF are missing on some platforms:
IRIX 5.3.
isw* are missing on some platforms:
FreeBSD 4.11.
isw* are actually defined as macros that don't work,
on IRIX 5.3.
Portability problems not fixed by Gnulib:
POSIX specification: http://www.opengroup.org/susv3xbd/wordexp.h.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
This chapter describes which functions and function-like macros specified by ISO C or POSIX are substituted by Gnulib, which portability pitfalls are fixed by Gnulib, and which (known) portability problems are not worked around by Gnulib.
The notation “Gnulib module: —” means that Gnulib does not provide a
module providing a substitute for the function. When the list
“Portability problems not fixed by Gnulib” is empty, such a module is
not needed: No portability problems are known. Otherwise, it indicates
that such a module would be useful but is not available: No one so far
found this function important enough to contribute a substitute for it.
If you need this particular function, you may write to
<bug-gnulib at gnu dot org>.
FD_CLRPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/FD_CLR.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
FD_ISSETPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/FD_ISSET.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
FD_SETPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/FD_SET.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
FD_ZEROPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/FD_ZERO.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
_ExitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/_Exit.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
_exitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/_exit.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
_longjmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/_longjmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: A future revision of POSIX later than the 2008/2009 one may drop the
functions _setjmp and _longjmp. Still, in 2008, on all
systems which have _setjmp, it is the fastest way to save the
registers but not the signal mask (up to 30 times faster than setjmp
on some systems).
_setjmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/_setjmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: A future revision of POSIX later than the 2008/2009 one may drop the
functions _setjmp and _longjmp. Still, in 2008, on all
systems which have _setjmp, it is the fastest way to save the
registers but not the signal mask (up to 30 times faster than setjmp
on some systems).
_tolowerPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/_tolower.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
_toupperPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/_toupper.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
a64lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/a64l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
abortPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/abort.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
absPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/abs.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
acceptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/accept.html
Gnulib module: accept
Portability problems fixed by Gnulib:
accept function can not be used in calls to read,
write, and close; you have to use recv, send,
closesocket in these cases instead.
accept
are not placed in errno, and WSAGetLastError must be
used instead.
Portability problems not fixed by Gnulib:
accept function can not be used
in calls to read, write, and close; you have to use
recv, send, closesocket in these cases instead.
socklen_t type; in this case this function's
third argument type is ‘int *’.
accessPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/access.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Other problems of this function:
stat versus lstat). If you need this option, use
the Gnulib module faccessat with the AT_EACCESS flag.
acosPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/acos.html
Gnulib module: acos
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
acosfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/acosf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
acoshPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/acosh.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
acoshfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/acoshf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
acoshlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/acoshl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
acoslPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/acosl.html
Gnulib module: acosl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
aio_cancelPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/aio_cancel.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
aio_errorPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/aio_error.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
aio_fsyncPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/aio_fsync.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
aio_readPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/aio_read.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
aio_returnPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/aio_return.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
aio_suspendPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/aio_suspend.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
aio_writePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/aio_write.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
alarmPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/alarm.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
alphasortPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/alphasort.html
Gnulib module: alphasort
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
const void * on some platforms:
glibc 2.3.6, MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, OpenBSD 3.8, Interix 3.5.
void * on some platforms:
AIX 5.1.
asctimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/asctime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
asctime_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/asctime_r.html
Gnulib module: extensions
Portability problems fixed by Gnulib:
_POSIX_PTHREAD_SEMANTICS is not defined).
Portability problems not fixed by Gnulib:
asinPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/asin.html
Gnulib module: asin
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
asinfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/asinf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
asinhPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/asinh.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
asinhfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/asinhf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
asinhlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/asinhl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
asinlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/asinl.html
Gnulib module: asinl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
assertPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/assert.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Extension: Gnulib offers a module ‘assert’ that allows the installer to disable assertions through a ‘configure’ option: ‘--disable-assert’.
atanPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atan.html
Gnulib module: atan
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atan2POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atan2.html
Gnulib module: atan2
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atan2fPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atan2f.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atan2lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atan2l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atanhPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atanh.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atanhfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atanhf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atanhlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atanhl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atanlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atanl.html
Gnulib module: atanl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atexitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atexit.html
Gnulib module: atexit
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atofPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atof.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atoiPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atoi.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atolPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atol.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
atollPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/atoll.html
Gnulib module: atoll
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
basenamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/basename.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
basename: the POSIX version and
the GNU version.
basename assumes file names in POSIX syntax; it does not work with file
names in Windows syntax.
bindPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/bind.html
Gnulib module: bind
Portability problems fixed by Gnulib:
bind
are not placed in errno, and WSAGetLastError must be
used instead.
Portability problems not fixed by Gnulib:
bsearchPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/bsearch.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
btowcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/btowc.html
Gnulib module: btowc
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
cabsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cabs.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cabsfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cabsf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cabslPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cabsl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cacosPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cacos.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cacosfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cacosf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cacoshPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cacosh.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cacoshfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cacoshf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cacoshlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cacoshl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cacoslPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cacosl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
callocPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/calloc.html
Gnulib module: calloc-posix
Portability problems fixed by Gnulib:
errno to ENOMEM on
some platforms:
mingw.
Portability problems not fixed by Gnulib:
Extension: Gnulib provides a module ‘calloc’ that substitutes a
calloc implementation that behaves more like the glibc implementation.
cargPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/carg.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cargfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cargf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
carglPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cargl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
casinPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/casin.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
casinfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/casinf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
casinhPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/casinh.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
casinhfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/casinhf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
casinhlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/casinhl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
casinlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/casinl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
catanPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/catan.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
catanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/catanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
catanhPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/catanh.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
catanhfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/catanhf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
catanhlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/catanhl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
catanlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/catanl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
catclosePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/catclose.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
catgetsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/catgets.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
catopenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/catopen.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cbrtPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cbrt.html
Gnulib module: cbrt
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cbrtfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cbrtf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cbrtlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cbrtl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ccosPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ccos.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ccosfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ccosf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ccoshPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ccosh.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ccoshfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ccoshf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ccoshlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ccoshl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ccoslPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ccosl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ceilPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ceil.html
Gnulib module: ceil
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ceilfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ceilf.html
Gnulib module: ceilf
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ceillPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ceill.html
Gnulib module: ceill
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cexpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cexp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cexpfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cexpf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cexplPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cexpl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cfgetispeedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cfgetispeed.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cfgetospeedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cfgetospeed.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cfsetispeedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cfsetispeed.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cfsetospeedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cfsetospeed.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
chdirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/chdir.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
chmodPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/chmod.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
chownPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/chown.html
Gnulib module: chown
Portability problems fixed by Gnulib:
chown("link-to-file/",uid,gid):
FreeBSD 7.2, Solaris 9.
lchown.
ENOSYS:
mingw.
Portability problems not fixed by Gnulib:
cimagPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cimag.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cimagfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cimagf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cimaglPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cimagl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clearerrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/clearerr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/clock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clock_getcpuclockidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/clock_getcpuclockid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clock_getresPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/clock_getres.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clock_gettimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/clock_gettime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clock_nanosleepPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/clock_nanosleep.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clock_settimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/clock_settime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clogPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/clog.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clogfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/clogf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cloglPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/clogl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
closePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/close.html
Gnulib module: close
Portability problems fixed by Gnulib:
socket and accept
do not return file descriptors that can be closed by close.
Instead, closesocket must be used.
Portability problems not fixed by Gnulib:
socket and accept do not return file descriptors
that can be closed by close. Instead, closesocket must be
used.
closedirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/closedir.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
closelogPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/closelog.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
confstrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/confstr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
conjPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/conj.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
conjfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/conjf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
conjlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/conjl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
connectPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/connect.html
Gnulib module: connect
Portability problems fixed by Gnulib:
connect are not placed in errno, and
WSAGetLastError must be used instead.
Portability problems not fixed by Gnulib:
copysignPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/copysign.html
Gnulib module: copysign
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
copysignfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/copysignf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
copysignlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/copysignl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cosPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cos.html
Gnulib module: cos
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cosfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cosf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
coshPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cosh.html
Gnulib module: cosh
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
coshfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/coshf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
coshlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/coshl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
coslPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cosl.html
Gnulib module: cosl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cpowPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cpow.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cpowfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cpowf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cpowlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cpowl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cprojPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cproj.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cprojfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cprojf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cprojlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/cprojl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
crealPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/creal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
crealfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/crealf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
creallPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/creall.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
creatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/creat.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
O_TEXT mode. If you
need a file handle in O_BINARY mode, you need to use the function
open instead.
off_t is a 32-bit type, creat may not work
correctly to create files larger than 2 GB. The fix is to use the
AC_SYS_LARGEFILE macro.
cryptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/crypt.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
csinPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/csin.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
csinfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/csinf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
csinhPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/csinh.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
csinhfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/csinhf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
csinhlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/csinhl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
csinlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/csinl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
csqrtPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/csqrt.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
csqrtfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/csqrtf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
csqrtlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/csqrtl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ctanPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ctan.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ctanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ctanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ctanhPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ctanh.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ctanhfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ctanhf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ctanhlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ctanhl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ctanlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ctanl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ctermidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ctermid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ctimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ctime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ctime function need not be reentrant, and consequently is
not required to be thread safe. Implementations of ctime
typically write the time stamp into static buffer. If two threads
call ctime at roughly the same time, you might end up with the
wrong date in one of the threads, or some undefined string. There is
a re-entrant interface ctime_r.
A more flexible function is strftime. However, note that it is
locale dependent.
ctime_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ctime_r.html
Gnulib module: extensions
Portability problems fixed by Gnulib:
_POSIX_PTHREAD_SEMANTICS is not defined).
Portability problems not fixed by Gnulib:
ctime_r takes a pre-allocated buffer and length of the buffer,
and returns NULL on errors.
The input buffer should be at least 26 bytes in size. The output
string is locale-independent. However, years can have more than 4
digits if time_t is sufficiently wide, so the length of the
required output buffer is not easy to determine. Increasing the
buffer size when ctime_r returns NULL is not necessarily
sufficient. The NULL return value could mean some other error
condition, which will not go away by increasing the buffer size.
A more flexible function is strftime. However, note that it is
locale dependent.
daylightPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/daylight.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dbm_clearerrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dbm_clearerr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dbm_closePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dbm_close.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dbm_deletePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dbm_delete.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dbm_errorPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dbm_error.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dbm_fetchPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dbm_fetch.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dbm_firstkeyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dbm_firstkey.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dbm_nextkeyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dbm_nextkey.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dbm_openPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dbm_open.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dbm_storePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dbm_store.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
difftimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/difftime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dirfdPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dirfd.html
Gnulib module: dirfd
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
With the dirfd module, this functions always sets errno when it
fails. (POSIX does not require that dirfd sets errno when it
fails.)
dirnamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dirname.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dirname assumes file names in POSIX syntax; it does not work with file
names in Windows syntax.
The Gnulib module dirname provides similar API that also works with
Windows file names.
divPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/div.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dlclosePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dlclose.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dlerrorPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dlerror.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dlopenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dlopen.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dlsymPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dlsym.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dprintf.html
Gnulib module: dprintf or dprintf-posix
Portability problems fixed by either Gnulib module dprintf or dprintf-posix:
Portability problems fixed by Gnulib module dprintf-posix:
Portability problems not fixed by Gnulib:
drand48POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/drand48.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dupPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dup.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dup2POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/dup2.html
Gnulib module: dup2
Portability problems fixed by Gnulib:
dup2 (1, 1) on some platforms:
Cygwin 1.5.x.
-EBADF instead of -1 on some platforms:
Linux releases between July 2008 and May 2009 (versions 2.6.27 to 2.6.29).
EMFILE instead of EBADF for
extremely large targets, which interferes with using
dup2(fd,fd)==fd) as the minimal EBADF filter:
FreeBSD 6.1, Cygwin 1.5.
Portability problems not fixed by Gnulib:
duplocalePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/duplocale.html
Gnulib module: duplocale
Portability problems fixed by Gnulib:
LC_GLOBAL_LOCALE is not supported on some platforms:
glibc 2.11.
Portability problems not fixed by Gnulib:
encryptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/encrypt.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
endgrentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/endgrent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
endhostentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/endhostent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
endnetentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/endnetent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
endprotoentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/endprotoent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
endpwentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/endpwent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
endserventPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/endservent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
endutxentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/endutxent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
environPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/environ.html
Gnulib module: environ
Portability problems fixed by Gnulib:
extern char **environ;
to get the variable declared. This does not work any more, however, in shared libraries on MacOS X 10.5. Here is a workaround: Instead, one can use
#include <crt_externs.h>
#define environ (*_NSGetEnviron())
This works at all versions of MacOS X.
Portability problems not fixed by Gnulib:
erand48POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/erand48.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
erfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/erf.html
Gnulib module: erf
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
erfcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/erfc.html
Gnulib module: erfc
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
erfcfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/erfcf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
erfclPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/erfcl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
erffPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/erff.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
erflPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/erfl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errnoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/errno.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno; their error code is
available through WSAGetLastError() instead.
execlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/execl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
execlePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/execle.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
execlpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/execlp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
execvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/execv.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
execvePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/execve.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
execvpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/execvp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
exitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/exit.html
Gnulib module: stdlib
Portability problems fixed by Gnulib:
EXIT_SUCCESS and EXIT_FAILURE,
see stdlib.h.
Portability problems not fixed by Gnulib:
expPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/exp.html
Gnulib module: exp
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
exp2POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/exp2.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
exp2fPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/exp2f.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
exp2lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/exp2l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
expfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/expf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
explPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/expl.html
Gnulib module: expl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
expm1POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/expm1.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
expm1fPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/expm1f.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
expm1lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/expm1l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fabsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fabs.html
Gnulib module: fabs
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fabsfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fabsf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fabslPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fabsl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
faccessatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/faccessat.html
Gnulib module: faccessat
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Other problems of this function:
fattachPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fattach.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fchdirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fchdir.html
Gnulib module: fchdir
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fchmodPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fchmod.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fchmodatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fchmodat.html
Gnulib module: openat
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fchmodat(...,AT_SYMLINK_NOFOLLOW)
may fail with EOPNOTSUPP when called on a symlink, but some
platforms, as well as the gnulib replacement, fail for any use of
AT_SYMLINK_NOFOLLOW even if the target was not a symlink:
glibc, Cygwin.
fchownPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fchown.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fchownatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fchownat.html
Gnulib module: openat
Portability problems fixed by Gnulib:
fchown(dir,"link-to-file/",uid,gid,flag):
Solaris 9.
AT_SYMLINK_NOFOLLOW:
Linux kernel 2.6.17.
lchown is unsupported, or fail altogether if
chown is unsupported.
Portability problems not fixed by Gnulib:
fclosePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fclose.html
Gnulib module: fclose
Portability problems fixed by Gnulib:
socket and accept
followed by fdopen do not return streams that can be closed by
fclose.
Portability problems not fixed by Gnulib:
errno
upon failure.
fcntlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fcntl.html
Gnulib module: fcntl
Portability problems fixed by Gnulib:
F_DUPFD_CLOEXEC on some
platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, OpenBSD 3.8, AIX 5.1, HP-UX 11,
IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.7.1, mingw, Interix 3.5,
BeOS.
Note that the gnulib replacement code is functional but not atomic.
F_DUPFD action of this function does not reject
out-of-range targets properly on some platforms:
Cygwin 1.5.x.
Portability problems not fixed by Gnulib:
F_SETFD,
F_GETFL, F_SETFL, F_GETOWN, F_SETOWN,
F_GETLK, F_SETLK, and F_SETLKW on some platforms:
mingw
fdatasyncPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fdatasync.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fdetachPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fdetach.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fdimPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fdim.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fdimfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fdimf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fdimlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fdiml.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fdopenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fdopen.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
fdopendirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fdopendir.html
Gnulib module: fdopendir
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
feclearexceptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/feclearexcept.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fegetenvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fegetenv.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fegetexceptflagPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fegetexceptflag.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fegetroundPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fegetround.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
feholdexceptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/feholdexcept.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
feofPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/feof.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
feraiseexceptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/feraiseexcept.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ferrorPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ferror.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fesetenvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fesetenv.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fesetexceptflagPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fesetexceptflag.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fesetroundPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fesetround.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fetestexceptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fetestexcept.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
feupdateenvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/feupdateenv.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fexecvePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fexecve.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fflushPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fflush.html
Gnulib module: fflush
Portability problems fixed by Gnulib:
fflush followed by fseek or fseeko, applied to an input
stream, should have the effect of positioning the underlying file descriptor.
It doesn't do this on some platforms.
fflush on an input stream changes the position of the stream to the
end of the previous buffer, on some platforms: mingw.
fflush on an input stream right after ungetc does not discard
the ungetc buffer, on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, OpenBSD 3.8, Cygwin 1.5.25-10.
Portability problems not fixed by Gnulib:
fflush, ftell, ftello, fgetpos behave incorrectly
on input streams that are opened in O_TEXT mode and whose contents
contains Unix line terminators (LF), on some platforms: mingw.
errno
upon failure.
fflush on an input stream right after ungetc does not discard
the ungetc buffer, on some platforms:
AIX 5.1, HP-UX 11, IRIX 6.5, OSF/1 5.1, Solaris 10, mingw.
ffsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ffs.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fgetcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fgetc.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
fgetposPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fgetpos.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fflush, ftell, ftello, fgetpos behave incorrectly
on input streams that are opened in O_TEXT mode and whose contents
contains Unix line terminators (LF), on some platforms: mingw.
off_t is a 64-bit type, but fseeko is
not present, stream operations on files larger than 2 GB silently do
the wrong thing. This affects BSD/OS, which is mostly obsolete.
fgetsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fgets.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
fgetwcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fgetwc.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
fgetwsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fgetws.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
filenoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fileno.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
flockfilePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/flockfile.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
floorPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/floor.html
Gnulib module: floor
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
floorfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/floorf.html
Gnulib module: floorf
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
floorlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/floorl.html
Gnulib module: floorl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fmaPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fma.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fmafPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fmaf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fmalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fmal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fmaxPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fmax.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fmaxfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fmaxf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fmaxlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fmaxl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fmemopenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fmemopen.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fminPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fmin.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fminfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fminf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fminlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fminl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fmodPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fmod.html
Gnulib module: fmod
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fmodfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fmodf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fmodlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fmodl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fmtmsgPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fmtmsg.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fnmatchPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fnmatch.html
Gnulib module: fnmatch or fnmatch-gnu
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fopenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fopen.html
Gnulib module: fopen
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
'\n' to CR/LF by default. Use the
"b" flag if you need reliable binary I/O.
fstat after open and
fdopen, rather than fopen and fileno.
forkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fork.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fork followed by a call of the exec family
(execl, execlp, execle, execv, execvp,
or execve) is less efficient than vfork followed by the same
call. vfork is a variant of fork that has been introduced to
optimize the fork/exec pattern.
spawnvp instead.
fpathconfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fpathconf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fpclassifyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fpclassify.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fprintf.html
Gnulib module: fprintf-posix or stdio, sigpipe
Portability problems fixed by Gnulib module fprintf-posix:
hh, ll,
j, t, z) on some platforms:
AIX 5.1, HP-UX 11.23, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.24, mingw, BeOS.
"%f", "%e", "%g" of Infinity and NaN yields an
incorrect result on some platforms:
AIX 5.2, OSF/1 5.1, Solaris 10, mingw.
"%2$s", on some platforms:
NetBSD 3.0, mingw, BeOS.
' flag on some platforms:
NetBSD 3.0, Cygwin 1.5.24, mingw.
"%010f" of NaN and Infinity yields an incorrect result (padded
with zeroes) on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, AIX 5.2, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw.
Portability problems fixed by Gnulib module stdio or fprintf-posix, together with module sigpipe:
SIGPIPE handler, on some platforms:
mingw.
Portability problems not fixed by Gnulib:
fputcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fputc.html
Gnulib module: stdio, sigpipe
Portability problems fixed by Gnulib:
SIGPIPE handler, on some platforms:
mingw.
Portability problems not fixed by Gnulib:
errno
upon failure.
fputsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fputs.html
Gnulib module: stdio, sigpipe
Portability problems fixed by Gnulib:
SIGPIPE handler, on some platforms:
mingw.
Portability problems not fixed by Gnulib:
errno
upon failure.
fputwcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fputwc.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
fputwsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fputws.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
freadPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fread.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
freePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/free.html
Gnulib module: free
Portability problems fixed by Gnulib:
free (NULL) fails.
However, since all such systems are so old as to no longer
be considered “reasonable portability targets,”
this module is no longer useful.
Portability problems not fixed by Gnulib:
freeaddrinfoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/freeaddrinfo.html
Gnulib module: getaddrinfo
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
freelocalePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/freelocale.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
freopenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/freopen.html
Gnulib module: freopen
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
fileno(f) will be the same
before and after a call to freopen(name,mode,f). However, the
module freopen-safer can at least protect stdin, stdout,
and stderr.
frexpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/frexp.html
Gnulib module: frexp
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
frexpfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/frexpf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
frexplPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/frexpl.html
Gnulib module: frexpl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fscanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fscanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
hh, ll, j,
t, z size specifiers.
fseekPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fseek.html
Gnulib module: fseek
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
long is a 32-bit type, fseek does not work
correctly with files larger than 2 GB. The fix is to use fseeko
instead and to invoke the AC_SYS_LARGEFILE macro.
fseekoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fseeko.html
Gnulib module: fseeko
Portability problems fixed by Gnulib:
fseeko in <stdio.h> is not enabled by default
on some platforms: glibc 2.3.6.
Portability problems not fixed by Gnulib:
off_t is a 32-bit type, fseeko does not work
correctly with files larger than 2 GB. The fix is to use the
AC_SYS_LARGEFILE macro.
off_t is a 64-bit type, but fseeko is
not present, stream operations on files larger than 2 GB silently do
the wrong thing. This affects BSD/OS, which is mostly obsolete.
fsetposPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fsetpos.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fstatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fstat.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
off_t is a 32-bit type, stat may not correctly
report the size of files or block devices larger than 2 GB. The fix is to
use the AC_SYS_LARGEFILE macro.
fstat applied to the file descriptors 0 and 1, returns
different st_ino values, even if standard input and standard output
are not redirected and refer to the same terminal.
fstatatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fstatat.html
Gnulib module: openat
Portability problems fixed by Gnulib:
fstatat(fd,"file/",buf,flag) succeeds instead of
failing with ENOTDIR.
Solaris 9.
Portability problems not fixed by Gnulib:
off_t is a 32-bit type, fstatat may
not correctly report the size of files or block devices larger than 2
GB. The fix is to use the AC_SYS_LARGEFILE macro.
st_ino is always 0.
st_size contains bogus information for
symlinks; use the gnulib module areadlink-with-size for a better way
to get symlink contents.
fstatvfsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fstatvfs.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fsyncPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fsync.html
Gnulib module: fsync
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ftellPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ftell.html
Gnulib module: ftell
Portability problems fixed by Gnulib:
putc that followed a
getc call that reached EOF on some platforms:
Solaris 10.
Portability problems not fixed by Gnulib:
fseek on some
platforms:
HP-UX 11.
fflush, ftell, ftello, fgetpos behave incorrectly
on input streams that are opened in O_TEXT mode and whose contents
contains Unix line terminators (LF), on some platforms: mingw.
long is a 32-bit type, ftell does not work
correctly with files larger than 2 GB. The fix is to use ftello
instead and to invoke the AC_SYS_LARGEFILE macro.
ftelloPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ftello.html
Gnulib module: ftello
Portability problems fixed by Gnulib:
ftello in <stdio.h> is not enabled by default
on some platforms: glibc 2.3.6.
putc that followed a
getc call that reached EOF on some platforms:
Solaris 10.
Portability problems not fixed by Gnulib:
off_t is a 32-bit type, ftello does not work
correctly with files larger than 2 GB. The fix is to use the
AC_SYS_LARGEFILE macro.
fseek on some
platforms:
HP-UX 11.
fflush, ftell, ftello, fgetpos behave incorrectly
on input streams that are opened in O_TEXT mode and whose contents
contains Unix line terminators (LF), on some platforms: mingw.
off_t is a 64-bit type, but fseeko is
not present, stream operations on files larger than 2 GB silently do
the wrong thing. This affects BSD/OS, which is mostly obsolete.
ftokPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ftok.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ftruncatePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ftruncate.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ftrylockfilePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ftrylockfile.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ftwPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ftw.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
funlockfilePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/funlockfile.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
futimensPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/futimens.html
Gnulib module: futimens
Portability problems fixed by Gnulib:
ENOSYS on some platforms:
Linux kernel 2.6.21.
UTIME_OMIT or UTIME_NOW, some systems require
the tv_sec argument to be 0, and don't necessarily handle all
file permissions in the manner required by POSIX:
Linux kernel 2.6.25.
UTIME_OMIT for the modification time, but specifying
an access time, some systems fail to update the change time:
Linux kernel 2.6.32.
Portability problems not fixed by Gnulib:
ENOSYS; the gnulib
module ‘utimens’ provides a more reliable interface fdutimens.
stat modifies the access time of
directories on some platforms, so utimensat can only
effectively change directory modification time:
Cygwin 1.5.x.
fwidePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fwide.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
fwide is not guaranteed to be able to change a file stream's mode
to a different mode than the current one.
fwprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fwprintf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
fwritePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fwrite.html
Gnulib module: stdio, sigpipe
Portability problems fixed by Gnulib:
SIGPIPE handler, on some platforms:
mingw.
Portability problems not fixed by Gnulib:
errno
upon failure.
fwscanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/fwscanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
gai_strerrorPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/gai_strerror.html
Gnulib module: getaddrinfo
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getaddrinfoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getaddrinfo.html
Gnulib module: getaddrinfo
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<ws2tcpip.h> rather than in
<netdb.h>.
getcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getc.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
getc_unlockedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getc_unlocked.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getcharPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getchar.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
getchar_unlockedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getchar_unlocked.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getcwdPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getcwd.html
Gnulib module: getcwd
Portability problems fixed by Gnulib:
getcwd (NULL, n) allocates memory for the result.
On other platforms, this call is not allowed.
PATH_MAX)
correctly on some platforms.
Portability problems not fixed by Gnulib:
getdatePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getdate.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Gnulib provides a module getdate that contains a function get_date
that has similar functionality as the getdate function.
getdate_errPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getdate_err.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getdelimPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getdelim.html
Gnulib module: getdelim
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getegidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getegid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getenvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getenv.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
geteuidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/geteuid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getgidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getgid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getgrentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getgrent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getgrgidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getgrgid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getgrgid_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getgrgid_r.html
Gnulib module: extensions
Portability problems fixed by Gnulib:
_POSIX_PTHREAD_SEMANTICS is not defined).
Portability problems not fixed by Gnulib:
getgrnamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getgrnam.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getgrnam_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getgrnam_r.html
Gnulib module: extensions
Portability problems fixed by Gnulib:
_POSIX_PTHREAD_SEMANTICS is not defined).
Portability problems not fixed by Gnulib:
getgroupsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getgroups.html
Gnulib module: getgroups
Portability problems fixed by Gnulib:
getgroups (0, NULL) always fails. See macro
‘AC_FUNC_GETGROUPS’.
Portability problems not fixed by Gnulib:
gethostentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/gethostent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gethostidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/gethostid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gethostnamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/gethostname.html
Gnulib module: gethostname
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
EINVAL, instead of returning a truncated host name.
getitimerPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getitimer.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getlinePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getline.html
Gnulib module: getline
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getloginPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getlogin.html
Gnulib module: getlogin
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getlogin_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getlogin_r.html
Gnulib module: getlogin_r
Portability problems fixed by Gnulib:
_POSIX_PTHREAD_SEMANTICS is not defined).
Portability problems not fixed by Gnulib:
getmsgPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getmsg.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getnameinfoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getnameinfo.html
Gnulib module: getaddrinfo
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getnetbyaddrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getnetbyaddr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getnetbynamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getnetbyname.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getnetentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getnetent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getoptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getopt.html
Gnulib module: getopt-posix or getopt-gnu
The module getopt-gnu has support for “long options” and for
“options that take optional arguments”. Compared to the API defined by POSIX,
it adds a header file <getopt.h> and a function getopt_long.
Portability problems fixed by either Gnulib module getopt-posix or getopt-gnu:
getopt function keeps some internal state that cannot be explicitly
reset on some platforms:
mingw.
optind after a missing required argument is wrong
on some platforms:
MacOS 10.5.
Portability problems fixed by Gnulib module getopt-gnu:
getopt does not support the ‘+’ flag in the options
string on some platforms:
MacOS X 10.5, AIX 5.2, HP-UX 11, IRIX 6.5, OSF/1 5.1, Solaris 10.
getopt does not obey the combination of ‘+’
and ‘:’ flags in the options string on some platforms:
glibc 2.11.
getopt does not obey the ‘-’ flag in the options
string when POSIXLY_CORRECT is set on some platforms:
Cygwin 1.7.0.
getopt does not support options with optional arguments
on some platforms:
MacOS X 10.5, OpenBSD 4.0, AIX 5.2, HP-UX 11, IRIX 6.5, OSF/1 5.1,
Solaris 10, Cygwin 1.5.x.
getopt_long is missing on some platforms:
AIX 5.1, HP-UX 11, IRIX 6.5, OSF/1 5.1, Solaris 9, Interix 3.5.
getopt_long_only is missing on some platforms:
MacOS X 10.3, FreeBSD 5.2.1, NetBSD 3.0, AIX 5.1, HP-UX 11, IRIX 6.5,
OSF/1 5.1, Solaris 9, mingw, Interix 3.5.
Portability problems not fixed by Gnulib:
getopt allows
mixing option and non-option arguments on the command line in any order.
Other implementations, such as the one in Cygwin, enforce strict POSIX
compliance: they require that the option arguments precede the non-option
arguments. This is something to watch out in your program's
testsuite.
optind to 0. Several BSD implementations provide optreset,
causing a reset by setting it non-zero, although it does not
necessarily re-read POSIXLY_CORRECT. Solaris getopt does
not support either reset method, but does not maintain state that
needs the extra level of reset.
getpeernamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getpeername.html
Gnulib module: getpeername
Portability problems fixed by Gnulib:
getpeername are not placed in errno, and
WSAGetLastError must be used instead.
Portability problems not fixed by Gnulib:
socklen_t type; in this case this function's
third argument type is ‘int *’.
getpgidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getpgid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpgrpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getpgrp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getpid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpmsgPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getpmsg.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getppidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getppid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpriorityPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getpriority.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getprotobynamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getprotobyname.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getprotobynumberPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getprotobynumber.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getprotoentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getprotoent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpwentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getpwent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpwnamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getpwnam.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpwnam_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getpwnam_r.html
Gnulib module: extensions
Portability problems fixed by Gnulib:
_POSIX_PTHREAD_SEMANTICS is not defined).
Portability problems not fixed by Gnulib:
getpwuidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getpwuid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpwuid_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getpwuid_r.html
Gnulib module: extensions
Portability problems fixed by Gnulib:
_POSIX_PTHREAD_SEMANTICS is not defined).
Portability problems not fixed by Gnulib:
getrlimitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getrlimit.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getrusagePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getrusage.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
struct rusage with
meaningful values.
getsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/gets.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
getservbynamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getservbyname.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getservbyportPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getservbyport.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getserventPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getservent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getsidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getsid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getsocknamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getsockname.html
Gnulib module: getsockname
Portability problems fixed by Gnulib:
getsockname are not placed in errno, and
WSAGetLastError must be used instead.
Portability problems not fixed by Gnulib:
socklen_t type; in this case this function's
third argument type is ‘int *’.
getsockoptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getsockopt.html
Gnulib module: getsockopt
Portability problems fixed by Gnulib:
getsockopt are not placed in errno, and
WSAGetLastError must be used instead.
Portability problems not fixed by Gnulib:
socklen_t type; in this case this function's
fifth argument type is ‘int *’.
setsockopt function, but not the getsockopt
function.
getsuboptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getsubopt.html
Gnulib module: getsubopt
Portability problems fixed by Gnulib:
unistd.h instead of
stdlib.h on some platforms:
Cygwin 1.7.1.
Portability problems not fixed by Gnulib:
gettimeofdayPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/gettimeofday.html
Gnulib module: gettimeofday
Portability problems fixed by Gnulib:
struct
timezone* rather than void *, making it an error to redeclare
the function with the POSIX signature:
glibc.
However, rather than penalize these systems with a replacement
function, gnulib defines GETTIMEOFDAY_TIMEZONE to the
appropriate type for use in avoiding a compiler warning if assigning
gettimeofday to a function pointer.
gettimeofday clobbers the buffer in which
localtime returns its result:
MacOS X 10.0.
Portability problems not fixed by Gnulib:
gettimeofday
is not NULL.
getuidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getuid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getutxentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getutxent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getutxidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getutxid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getutxlinePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getutxline.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getwcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getwc.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
getwcharPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/getwchar.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
globPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/glob.html
Gnulib module: glob
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gl_flags field.
globfreePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/globfree.html
Gnulib module: glob
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gmtimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/gmtime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gmtime_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/gmtime_r.html
Gnulib module: time_r
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
grantptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/grantpt.html
Gnulib module: grantpt
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
hcreatePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/hcreate.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
hdestroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/hdestroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
hsearchPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/hsearch.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
htonlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/htonl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
htonsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/htons.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
hypotPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/hypot.html
Gnulib module: hypot
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
hypotfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/hypotf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
hypotlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/hypotl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
iconvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iconv.html
Gnulib module: iconv
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
iconv encounters an input character that is valid but that can
not be converted to the output character set, glibc's and GNU libiconv's
iconv stop the conversion. Some other implementations put an
implementation-defined character into the output buffer. —
Gnulib provides higher-level facilities striconv and striconveh
(wrappers around iconv) that deal with conversion errors in a platform
independent way.
iconv_closePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iconv_close.html
Gnulib module: iconv
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
iconv_openPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iconv_open.html
Gnulib module: iconv, iconv_open, iconv_open-utf
Portability problems fixed by either Gnulib module iconv or iconv_open:
Portability problems fixed by Gnulib module iconv_open:
Portability problems fixed by Gnulib module iconv_open-utf:
Portability problems not fixed by Gnulib:
striconveh (a wrapper around iconv) that deals with
this problem.
if_freenameindexPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/if_freenameindex.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
if_indextonamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/if_indextoname.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
if_nameindexPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/if_nameindex.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
if_nametoindexPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/if_nametoindex.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ilogbPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ilogb.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ilogbfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ilogbf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ilogblPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ilogbl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
imaxabsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/imaxabs.html
Gnulib module: imaxabs
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
imaxdivPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/imaxdiv.html
Gnulib module: imaxdiv
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_addrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/inet_addr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_ntoaPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/inet_ntoa.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_ntoa function need not be reentrant, and consequently
is not required to be thread safe. Implementations of
inet_ntoa typically write the time stamp into static buffer.
If two threads call inet_ntoa at roughly the same time, you
might end up with the wrong date in one of the threads, or some
undefined string.
Note: inet_ntoa is specific for IPv4 addresses.
A protocol independent function is inet_ntop.
inet_ntopPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/inet_ntop.html
Gnulib module: inet_ntop
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_ptonPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/inet_pton.html
Gnulib module: inet_pton
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
initstatePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/initstate.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
insquePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/insque.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ioctlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ioctl.html
Gnulib module: ioctl
Portability problems fixed by Gnulib:
ioctl is called
ioctlsocket, and error codes for this function are not placed in
errno, and WSAGetLastError must be used instead.
unsigned long
rather than int.
Portability problems not fixed by Gnulib:
ioctl requests are platform and hardware specific.
isalnumPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isalnum.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_isalnumiswalnummbrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_isalnumuc_is_alnumisalnum_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isalnum_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isalphaPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isalpha.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_isalphaiswalphambrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_isalphauc_is_alphaisalpha_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isalpha_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isasciiPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isascii.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but requires special
handling for the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are two alternative APIs:
c_isasciimb_isasciiisastreamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isastream.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isattyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isatty.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isatty also returns true for character devices such as
NUL.
isblankPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isblank.html
Gnulib module: isblank
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_isblankiswblankmbrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_isblankuc_is_blankisblank_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isblank_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
iscntrlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iscntrl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_iscntrliswcntrlmbrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_iscntrluc_is_cntrliscntrl_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iscntrl_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isdigitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isdigit.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_isdigitiswdigitmbrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_isdigituc_is_digitisdigit_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isdigit_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isfinitePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isfinite.html
Gnulib module: isfinite
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isfinite raises an
exception given a signaling NaN operand.
isgraphPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isgraph.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_isgraphiswgraphmbrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_isgraphuc_is_graphisgraph_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isgraph_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isgreaterPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isgreater.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isgreaterequalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isgreaterequal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isinfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isinf.html
Gnulib module: isinf
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
islessPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isless.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
islessequalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/islessequal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
islessgreaterPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/islessgreater.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
islowerPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/islower.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_isloweriswlowermbrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_isloweruc_is_lowerislower_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/islower_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isnanPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isnan.html
Gnulib module: isnan
Portability problems fixed by Gnulib:
isnan was introduced with C99 and is thus commonly not present
on pre-C99 systems.
cc, isnan does not recognize some NaNs.
isnan does not recognize some
forms of NaNs, such as pseudo-NaNs, pseudo-Infinities, and
unnormalized numbers.
__builtin_isnanl (and thus
isnan implementations based on it) in GCC 4.0 and later does
not recognize pseudo-denormals as NaNs, and similarly for
pseudo-zeroes, unnormalized numbers, and pseudo-denormals on ia64.
Portability problems not fixed by Gnulib:
isnormalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isnormal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isprintPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isprint.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_isprintiswprintmbrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_isprintuc_is_printisprint_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isprint_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ispunctPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ispunct.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_ispunctiswpunctmbrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_ispunctuc_is_punctispunct_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ispunct_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isspacePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isspace.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_isspaceiswspacembrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_isspaceuc_is_spaceisspace_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isspace_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isunorderedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isunordered.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isupperPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isupper.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_isupperiswuppermbrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_isupperuc_is_upperisupper_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isupper_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
iswalnumPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswalnum.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswalnum_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswalnum_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswalphaPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswalpha.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswalpha_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswalpha_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswblankPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswblank.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswblank_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswblank_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswcntrlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswcntrl.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswcntrl_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswcntrl_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswctypePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswctype.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswctype_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswctype_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswdigitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswdigit.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswdigit_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswdigit_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswgraphPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswgraph.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswgraph_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswgraph_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswlowerPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswlower.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswlower_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswlower_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswprintPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswprint.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswprint_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswprint_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswpunctPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswpunct.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswpunct_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswpunct_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswspacePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswspace.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswspace_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswspace_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswupperPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswupper.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswupper_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswupper_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswxdigitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswxdigit.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
iswxdigit_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/iswxdigit_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
isxdigitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isxdigit.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: This function's behaviour depends on the locale, but does not support
the multibyte characters that occur in strings in locales with
MB_CUR_MAX > 1 (this includes all the common UTF-8 locales).
There are four alternative APIs:
c_isxdigitiswxdigitmbrtowc function. It is provided by the Gnulib module
‘wctype’.
mb_isxdigituc_is_xdigitisxdigit_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/isxdigit_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
j0POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/j0.html
Gnulib module: j0
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
j1POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/j1.html
Gnulib module: j1
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
jnPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/jn.html
Gnulib module: jn
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
jrand48POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/jrand48.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
killPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/kill.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
killpgPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/killpg.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
l64aPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/l64a.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
labsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/labs.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lchownPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lchown.html
Gnulib module: lchown
Portability problems fixed by Gnulib:
lchown("link-to-file/",uid,gid):
FreeBSD 7.2, Solaris 9.
lchmod, the replacement only fixes this for non-symlinks:
OpenBSD 4.0.
chown is supported, and fails altogether
with ENOSYS otherwise:
MacOS X 10.3, mingw, BeOS.
Portability problems not fixed by Gnulib:
lcong48POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lcong48.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ldexpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ldexp.html
Gnulib module: ldexp
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ldexpfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ldexpf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ldexplPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ldexpl.html
Gnulib module: ldexpl
Portability problems fixed by Gnulib:
<math.h> on some platforms:
MacOS X.
Portability problems not fixed by Gnulib:
ldivPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ldiv.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lfindPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lfind.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lgammaPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lgamma.html
Gnulib module: lgamma
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lgammafPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lgammaf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lgammalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lgammal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
linkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/link.html
Gnulib module: link
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
linkatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/linkat.html
Gnulib module: linkat
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lio_listioPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lio_listio.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
listenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/listen.html
Gnulib module: listen
Portability problems fixed by Gnulib:
listen
are not placed in errno, and WSAGetLastError must be
used instead.
Portability problems not fixed by Gnulib:
llabsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/llabs.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lldivPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lldiv.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
llrintPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/llrint.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
llrintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/llrintf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
llrintlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/llrintl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
llroundPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/llround.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
llroundfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/llroundf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
llroundlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/llroundl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
localeconvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/localeconv.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
localtimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/localtime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
localtime_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/localtime_r.html
Gnulib module: time_r
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lockfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lockf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
logPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/log.html
Gnulib module: log
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
log10POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/log10.html
Gnulib module: log10
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
log10fPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/log10f.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
log10lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/log10l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
log1pPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/log1p.html
Gnulib module: log1p
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
log1pfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/log1pf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
log1plPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/log1pl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
log2POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/log2.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
log2fPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/log2f.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
log2lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/log2l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
logbPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/logb.html
Gnulib module: logb
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
logbfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/logbf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
logblPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/logbl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
logfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/logf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
loglPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/logl.html
Gnulib module: logl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
longjmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/longjmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigaltstack), on FreeBSD, NetBSD,
OpenBSD, you need to clear the SS_ONSTACK flag in the stack_t
structure managed by the kernel.
lrand48POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lrand48.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lrintPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lrint.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lrintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lrintf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lrintlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lrintl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lroundPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lround.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lroundfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lroundf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lroundlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lroundl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lsearchPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lsearch.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lseekPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lseek.html
Gnulib module: lseek
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
off_t is a 32-bit type, lseek does not work
correctly with files larger than 2 GB. The fix is to use the
AC_SYS_LARGEFILE macro.
lseek should set
errno to EINVAL and return -1, but in this situation a
SIGSYS signal is raised on some platforms:
IRIX 6.5.
lseek function fails, POSIX says that the file offset remains
unchanged. But on some platforms, attempting to set a negative file offset
fails and sets the file offset to 0:
BeOS.
lstatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/lstat.html
Gnulib module: lstat
Portability problems fixed by Gnulib:
lstat("file/",buf) succeeds instead of
failing with ENOTDIR.
Solaris 9.
lstat does not exist.
Portability problems not fixed by Gnulib:
off_t is a 32-bit type, lstat may not
correctly report the size of files or block devices larger than 2 GB. The fix
is to use the AC_SYS_LARGEFILE macro.
st_ino is always 0.
struct stat, it is not possible to
portably replace stat via an object-like macro. Therefore,
expressions such as (islnk ? lstat : stat) (name, buf) are not
portable, and should instead be written islnk ? lstat (name,
buf) : stat (name, buf).
st_size contains bogus information for
symlinks; use the gnulib module areadlink-with-size for a better way
to get symlink contents.
mallocPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/malloc.html
Gnulib module: malloc-posix
Portability problems fixed by Gnulib:
errno to ENOMEM on
some platforms:
mingw.
Portability problems not fixed by Gnulib:
malloc (0) always returns a NULL pointer on some platforms:
AIX 5.1, OSF/1 5.1.
Extension: Gnulib provides a module ‘malloc’ that substitutes a
malloc implementation that behaves more like the glibc implementation,
regarding the result of malloc (0).
mblenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mblen.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mbrlenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mbrlen.html
Gnulib module: mbrlen
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mbrtowcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mbrtowc.html
Gnulib module: mbrtowc
Portability problems fixed by Gnulib:
pwc argument if the string argument is
NULL on some platforms:
OSF/1 5.1.
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
mbsinitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mbsinit.html
Gnulib module: mbsinit
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mbsnrtowcsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mbsnrtowcs.html
Gnulib module: mbsnrtowcs
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
mbsrtowcsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mbsrtowcs.html
Gnulib module: mbsrtowcs
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
mbstowcsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mbstowcs.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
mbtowcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mbtowc.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
memccpyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/memccpy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memchrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/memchr.html
Gnulib module: memchr
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memcmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/memcmp.html
Gnulib module: memcmp
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memcpyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/memcpy.html
Gnulib module: memcpy
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memmovePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/memmove.html
Gnulib module: memmove
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memsetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/memset.html
Gnulib module: memset
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mkdirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mkdir.html
Gnulib module: mkdir
Portability problems fixed by Gnulib:
_mkdir
and takes only one argument. The fix (without Gnulib) is to define a macro
like this:
#define mkdir ((int (*)()) _mkdir)
or
#define mkdir(path,mode) _mkdir (path)
Portability problems not fixed by Gnulib:
mkdiratPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mkdirat.html
Gnulib module: openat
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mkdtempPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mkdtemp.html
Gnulib module: mkdtemp
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mkfifoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mkfifo.html
Gnulib module: mkfifo
Portability problems fixed by Gnulib:
ENOSYS:
mingw.
Portability problems not fixed by Gnulib:
mkfifoatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mkfifoat.html
Gnulib module: mkfifoat
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mknodPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mknod.html
Gnulib module: mknod
Portability problems fixed by Gnulib:
ENOSYS:
mingw.
Portability problems not fixed by Gnulib:
mknodatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mknodat.html
Gnulib module: mkfifoat
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mkstempPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mkstemp.html
Gnulib module: mkstemp
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mkstemp can create a
world or group writable or readable file, if you haven't set the process
umask to 077. This is a security risk.
mktimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mktime.html
Gnulib module: mktime
Portability problems fixed by Gnulib:
mktime may go into an endless loop on some platforms.
mktime may occasionally return wrong results on some platforms.
Portability problems not fixed by Gnulib:
mlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mlockallPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mlockall.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mmapPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mmap.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
MAP_ANONYMOUS | MAP_PRIVATE and -1 instead of a file descriptor;
on others you have to use a read-only file descriptor of /dev/zero.
MAP_FIXED, often causes mmap to fail. Better pass NULL
in this case.
MAP_FIXED basically never works. On other platforms, it depends
on the circumstances whether memory can be returned at a given address.
modfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/modf.html
Gnulib module: modf
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
modffPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/modff.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
modflPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/modfl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mprotectPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mprotect.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno on some platforms:
mingw.
mprotect on memory regions allocated
with malloc.
mq_closePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mq_close.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mq_getattrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mq_getattr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mq_notifyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mq_notify.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mq_openPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mq_open.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mq_receivePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mq_receive.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mq_sendPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mq_send.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mq_setattrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mq_setattr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mq_timedreceivePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mq_timedreceive.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mq_timedsendPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mq_timedsend.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mq_unlinkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mq_unlink.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mrand48POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/mrand48.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
msgctlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/msgctl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
msggetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/msgget.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
msgrcvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/msgrcv.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
msgsndPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/msgsnd.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
msyncPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/msync.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
msync takes only two arguments.
munlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/munlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
munlockallPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/munlockall.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
munmapPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/munmap.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nanPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nan.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nanlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nanl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nanosleepPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nanosleep.html
Gnulib module: nanosleep
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nearbyintPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nearbyint.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nearbyintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nearbyintf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nearbyintlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nearbyintl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
newlocalePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/newlocale.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nextafterPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nextafter.html
Gnulib module: nextafter
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nextafterfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nextafterf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nextafterlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nextafterl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nexttowardPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nexttoward.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nexttowardfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nexttowardf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nexttowardlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nexttowardl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nftwPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nftw.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nicePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nice.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nice returned 0 upon success.
nl_langinfoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nl_langinfo.html
Gnulib module: nl_langinfo
Portability problems fixed by Gnulib:
CODESET is not supported on some platforms:
glibc 2.0.6, OpenBSD 3.8.
ERA, ERA_D_FMT, ERA_D_T_FMT,
ERA_T_FMT, ALT_DIGITS are not supported on some platforms:
OpenBSD 3.8.
Portability problems not fixed by Gnulib:
nl_langinfo(CODESET) always
returns "US-ASCII".
nl_langinfo_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nl_langinfo_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nrand48POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/nrand48.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ntohlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ntohl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ntohsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ntohs.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
openPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/open.html
Gnulib module: open, fchdir
Portability problems fixed by the Gnulib module open:
Portability problems fixed by the Gnulib module fchdir:
Portability problems not fixed by Gnulib:
O_TEXT mode by
default; this means that it translates '\n' to CR/LF by default. Use the
O_BINARY flag if you need reliable binary I/O.
off_t is a 32-bit type, open may not work
correctly with files larger than 2 GB. The fix is to use the
AC_SYS_LARGEFILE macro.
openatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/openat.html
Gnulib module: openat
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
opendirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/opendir.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
openlogPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/openlog.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
open_memstreamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/open_memstream.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
open_wmemstreamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/open_wmemstream.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
optargPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/optarg.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
opterrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/opterr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
optindPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/optind.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
optoptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/optopt.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pathconfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pathconf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pausePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pause.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pclosePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pclose.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
perrorPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/perror.html
Gnulib module: perror
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pipePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pipe.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pollPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/poll.html
Gnulib module: poll
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
popenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/popen.html
Gnulib module: popen
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
popen calls into subsequent popen children:
Cygwin 1.5.x.
posix_fadvisePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_fadvise.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_fallocatePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_fallocate.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_madvisePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_madvise.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_mem_offsetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_mem_offset.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_memalignPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_memalign.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_openptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_openpt.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawn.html
Gnulib module: posix_spawn
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawn_file_actions_addclosePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawn_file_actions_addclose.html
Gnulib module: posix_spawn_file_actions_addclose
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawn_file_actions_adddup2POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawn_file_actions_adddup2.html
Gnulib module: posix_spawn_file_actions_adddup2
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawn_file_actions_addopenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawn_file_actions_addopen.html
Gnulib module: posix_spawn_file_actions_addopen
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawn_file_actions_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawn_file_actions_destroy.html
Gnulib module: posix_spawn_file_actions_destroy
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawn_file_actions_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawn_file_actions_init.html
Gnulib module: posix_spawn_file_actions_init
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_destroy.html
Gnulib module: posix_spawnattr_destroy
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_getflagsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_getflags.html
Gnulib module: posix_spawnattr_getflags
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_getpgroupPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_getpgroup.html
Gnulib module: posix_spawnattr_getpgroup
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_getschedparamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_getschedparam.html
Gnulib module: posix_spawnattr_getschedparam
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_getschedpolicyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_getschedpolicy.html
Gnulib module: posix_spawnattr_getschedpolicy
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_getsigdefaultPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_getsigdefault.html
Gnulib module: posix_spawnattr_getsigdefault
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_getsigmaskPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_getsigmask.html
Gnulib module: posix_spawnattr_getsigmask
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_init.html
Gnulib module: posix_spawnattr_init
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_setflagsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_setflags.html
Gnulib module: posix_spawnattr_setflags
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_setpgroupPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_setpgroup.html
Gnulib module: posix_spawnattr_setpgroup
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_setschedparamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_setschedparam.html
Gnulib module: posix_spawnattr_setschedparam
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_setschedpolicyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_setschedpolicy.html
Gnulib module: posix_spawnattr_setschedpolicy
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_setsigdefaultPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_setsigdefault.html
Gnulib module: posix_spawnattr_setsigdefault
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnattr_setsigmaskPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnattr_setsigmask.html
Gnulib module: posix_spawnattr_setsigmask
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_spawnpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_spawnp.html
Gnulib module: posix_spawnp
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getclockresPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getclockres.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getcreatetimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getcreatetime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getgenversionPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getgenversion.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getinheritedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getinherited.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getlogfullpolicyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getlogfullpolicy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getlogsizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getlogsize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getmaxdatasizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getmaxdatasize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getmaxsystemeventsizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getmaxsystemeventsize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getmaxusereventsizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getmaxusereventsize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getnamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getname.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getstreamfullpolicyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getstreamfullpolicy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_getstreamsizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_getstreamsize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_setinheritedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_setinherited.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_setlogfullpolicyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_setlogfullpolicy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_setlogsizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_setlogsize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_setmaxdatasizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_setmaxdatasize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_setnamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_setname.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_setstreamfullpolicyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_setstreamfullpolicy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_attr_setstreamsizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_attr_setstreamsize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_clearPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_clear.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_closePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_close.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_createPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_create.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_create_withlogPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_create_withlog.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_eventPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_event.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_eventid_equalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_eventid_equal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_eventid_get_namePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_eventid_get_name.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_eventid_openPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_eventid_open.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_eventset_addPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_eventset_add.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_eventset_delPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_eventset_del.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_eventset_emptyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_eventset_empty.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_eventset_fillPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_eventset_fill.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_eventset_ismemberPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_eventset_ismember.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_eventtypelist_getnext_idPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_eventtypelist_getnext_id.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_eventtypelist_rewindPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_eventtypelist_rewind.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_flushPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_flush.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_get_attrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_get_attr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_get_filterPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_get_filter.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_get_statusPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_get_status.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_getnext_eventPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_getnext_event.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_openPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_open.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_rewindPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_rewind.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_set_filterPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_set_filter.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_shutdownPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_shutdown.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_startPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_start.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_stopPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_stop.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_timedgetnext_eventPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_timedgetnext_event.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_trid_eventid_openPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_trid_eventid_open.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_trace_trygetnext_eventPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_trace_trygetnext_event.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_typed_mem_get_infoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_typed_mem_get_info.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
posix_typed_mem_openPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/posix_typed_mem_open.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
powPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pow.html
Gnulib module: pow
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
powfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/powf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
powlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/powl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
preadPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pread.html
Gnulib module: pread
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
printfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/printf.html
Gnulib module: printf-posix or stdio, sigpipe
Portability problems fixed by Gnulib module printf-posix:
hh, ll,
j, t, z) on some platforms:
AIX 5.1, HP-UX 11.23, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.24, mingw, BeOS.
"%f", "%e", "%g" of Infinity and NaN yields an
incorrect result on some platforms:
AIX 5.2, OSF/1 5.1, Solaris 10, mingw.
"%2$s", on some platforms:
NetBSD 3.0, mingw, BeOS.
' flag on some platforms:
NetBSD 3.0, Cygwin 1.5.24, mingw.
"%010f" of NaN and Infinity yields an incorrect result (padded
with zeroes) on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, AIX 5.2, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw.
Portability problems fixed by Gnulib module stdio or printf-posix, together with module sigpipe:
SIGPIPE handler, on some platforms:
mingw.
Portability problems not fixed by Gnulib:
pselectPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pselect.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
psiginfoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/psiginfo.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
psignalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/psignal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_atforkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_atfork.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_getdetachstatePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_getdetachstate.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_getguardsizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_getguardsize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_getinheritschedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_getinheritsched.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_getschedparamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_getschedparam.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_getschedpolicyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_getschedpolicy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_getscopePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_getscope.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_getstackPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_getstack.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_getstacksizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_getstacksize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_setdetachstatePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_setdetachstate.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_setguardsizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_setguardsize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_setinheritschedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_setinheritsched.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_setschedparamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_setschedparam.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_setschedpolicyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_setschedpolicy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_setscopePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_setscope.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_setstackPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_setstack.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_setstacksizePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_attr_setstacksize.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_barrier_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_barrier_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_barrier_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_barrier_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_barrier_waitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_barrier_wait.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_barrierattr_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_barrierattr_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_barrierattr_getpsharedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_barrierattr_getpshared.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_barrierattr_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_barrierattr_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_barrierattr_setpsharedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_barrierattr_setpshared.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_cancelPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_cancel.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_cleanup_popPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_cleanup_pop.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_cleanup_pushPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_cleanup_push.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_cond_broadcastPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_broadcast.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_cond_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_cond_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_cond_signalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_signal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_cond_timedwaitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_timedwait.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_cond_waitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_wait.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_condattr_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_condattr_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_condattr_getclockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_condattr_getclock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_condattr_getpsharedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_condattr_getpshared.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_condattr_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_condattr_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_condattr_setclockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_condattr_setclock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_condattr_setpsharedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_condattr_setpshared.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_createPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_create.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_detachPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_detach.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_equalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_equal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_exitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_exit.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_getconcurrencyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_getconcurrency.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_getcpuclockidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_getcpuclockid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_getschedparamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_getschedparam.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_getspecificPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_getspecific.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_joinPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_join.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_key_createPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_key_create.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_key_deletePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_key_delete.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_killPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_kill.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutex_consistentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_consistent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutex_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutex_getprioceilingPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_getprioceiling.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutex_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutex_lockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_lock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutex_setprioceilingPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_setprioceiling.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutex_timedlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_timedlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutex_trylockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_trylock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutex_unlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_unlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_getprioceilingPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_getprioceiling.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_getprotocolPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_getprotocol.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_getpsharedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_getpshared.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_getrobustPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_getrobust.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_gettypePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_gettype.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_setprioceilingPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_setprioceiling.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_setprotocolPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_setprotocol.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_setpsharedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_setpshared.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_setrobustPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_setrobust.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_mutexattr_settypePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_settype.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_oncePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_once.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlock_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlock_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlock_rdlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_rdlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlock_timedrdlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_timedrdlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlock_timedwrlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_timedwrlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlock_tryrdlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_tryrdlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlock_trywrlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_trywrlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlock_unlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_unlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlock_wrlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_wrlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlockattr_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlockattr_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlockattr_getpsharedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlockattr_getpshared.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlockattr_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlockattr_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlockattr_setpsharedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlockattr_setpshared.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_selfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_self.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_setcancelstatePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_setcancelstate.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_setcanceltypePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_setcanceltype.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_setconcurrencyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_setconcurrency.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_setschedparamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_setschedparam.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_setschedprioPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_setschedprio.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_setspecificPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_setspecific.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_sigmaskPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_sigmask.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_spin_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_spin_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_spin_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_spin_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_spin_lockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_spin_lock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_spin_trylockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_spin_trylock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_spin_unlockPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_spin_unlock.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_testcancelPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pthread_testcancel.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ptsnamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ptsname.html
Gnulib module: ptsname
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
putcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/putc.html
Gnulib module: stdio, sigpipe
Portability problems fixed by Gnulib:
SIGPIPE handler, on some platforms:
mingw.
Portability problems not fixed by Gnulib:
errno
upon failure.
putc_unlockedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/putc_unlocked.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
putcharPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/putchar.html
Gnulib module: stdio, sigpipe
Portability problems fixed by Gnulib:
SIGPIPE handler, on some platforms:
mingw.
Portability problems not fixed by Gnulib:
errno
upon failure.
putchar_unlockedPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/putchar_unlocked.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
putenvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/putenv.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Extension: Gnulib provides a module ‘putenv’ that substitutes a
putenv implementation that can also be used to remove environment
variables.
putmsgPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/putmsg.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
putpmsgPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/putpmsg.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
putsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/puts.html
Gnulib module: stdio, sigpipe
Portability problems fixed by Gnulib:
SIGPIPE handler, on some platforms:
mingw.
Portability problems not fixed by Gnulib:
errno
upon failure.
pututxlinePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pututxline.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
putwcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/putwc.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
putwcharPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/putwchar.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
pwritePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/pwrite.html
Gnulib module: pwrite
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
qsortPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/qsort.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
raisePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/raise.html
Gnulib module: raise
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
randPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/rand.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rand_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/rand_r.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
randomPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/random.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
readPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/read.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
readdirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/readdir.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
readdir_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/readdir_r.html
Gnulib module: extensions
Portability problems fixed by Gnulib:
_POSIX_PTHREAD_SEMANTICS is not defined).
Portability problems not fixed by Gnulib:
readlinkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/readlink.html
Gnulib module: readlink
Portability problems fixed by Gnulib:
readlink("link/",buf,len):
FreeBSD 7.2, Solaris 9.
readlink returns int instead of
ssize_t:
FreeBSD 6.0, OpenBSD 3.8, Cygwin 1.5.x.
Portability problems not fixed by Gnulib:
readlink is called on a directory: In the case of NFS mounted
directories, Cygwin sets errno to ENOENT or EIO instead of
EINVAL. To avoid this problem, check for a directory before calling
readlink.
readlink is called on a file that is not a symbolic link:
Irix may set errno to ENXIO instead of EINVAL. Cygwin
may set errno to EACCES instead of EINVAL.
errno to ERANGE rather than returning truncated
contents, and Linux sets errno to EINVAL if the
requested length is zero. Use the gnulib module areadlink for
improved ability to read symlink contents.
readlinkatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/readlinkat.html
Gnulib module: readlinkat
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
readlink is called on a directory: In the case of NFS mounted
directories, Cygwin sets errno to ENOENT or EIO instead of
EINVAL. To avoid this problem, check for a directory before calling
readlink.
readlink is called on a file that is not a symbolic link:
Irix may set errno to ENXIO instead of EINVAL. Cygwin
may set errno to EACCES instead of EINVAL.
errno to ERANGE rather than returning truncated
contents, and Linux sets errno to EINVAL if the
requested length is zero. Use the gnulib module areadlink for
improved ability to read symlink contents.
readvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/readv.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
reallocPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/realloc.html
Gnulib module: realloc-posix
Portability problems fixed by Gnulib:
errno to ENOMEM on
some platforms:
mingw.
Portability problems not fixed by Gnulib:
Extension: Gnulib provides a module ‘realloc’ that substitutes a
realloc implementation that behaves more like the glibc implementation.
realpathPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/realpath.html
Gnulib module: canonicalize-lgpl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
recvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/recv.html
Gnulib module: recv
Portability problems fixed by Gnulib:
recv
are not placed in errno, and WSAGetLastError must be
used instead.
Portability problems not fixed by Gnulib:
recvfromPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/recvfrom.html
Gnulib module: recvfrom
Portability problems fixed by Gnulib:
recvfrom are not placed in errno, and
WSAGetLastError must be used instead.
Portability problems not fixed by Gnulib:
socklen_t type; in this case this function's
sixth argument type is ‘int *’.
recvmsgPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/recvmsg.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
regcompPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/regcomp.html
Gnulib module: regex
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
regerrorPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/regerror.html
Gnulib module: regex
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
regexecPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/regexec.html
Gnulib module: regex
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
regfreePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/regfree.html
Gnulib module: regex
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
remainderPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/remainder.html
Gnulib module: remainder
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
remainderfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/remainderf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
remainderlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/remainderl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
removePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/remove.html
Gnulib module: remove
Portability problems fixed by Gnulib:
remove("dir/./") on some platforms:
Cygwin 1.5.x.
Portability problems not fixed by Gnulib:
remquePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/remque.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
remquoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/remquo.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
remquofPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/remquof.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
remquolPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/remquol.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
renamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/rename.html
Gnulib module: rename
Portability problems fixed by Gnulib:
rename("dir","new/"):
NetBSD 1.6.
rename("file","new/"):
Solaris 10, Cygwin 1.5.x, mingw.
rename("link-to-file/","f"):
FreeBSD 7.2.
rename("link/","new") corrupts link:
Solaris 9.
Portability problems not fixed by Gnulib:
rename("symlink-to-dir/","dir2") rename
dir and leave symlink-to-dir dangling; likewise, it
requires that rename("dir","dangling/") rename dir so
that dangling is no longer a dangling symlink. This behavior
is counter-intuitive, so on some systems, rename fails with
ENOTDIR if either argument is a symlink with a trailing slash:
glibc, OpenBSD, Cygwin 1.7.
renameatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/renameat.html
Gnulib module: renameat
Portability problems fixed by Gnulib:
renameat(fd,"file",fd,"new/"):
Solaris 10.
renameat(fd,"link/",fd,"new") corrupts link:
Solaris 9.
Portability problems not fixed by Gnulib:
renameat(fd,"symlink-to-dir/",fd,"dir2") rename
dir and leave symlink-to-dir dangling; likewise, it
requires that renameat(fd,"dir",fd,"dangling/") rename dir so
that dangling is no longer a dangling symlink. This behavior
is counter-intuitive, so on some systems, renameat fails with
ENOTDIR if either argument is a symlink with a trailing slash:
glibc, OpenBSD, Cygwin 1.7.
rewindPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/rewind.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
rewinddirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/rewinddir.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rintPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/rint.html
Gnulib module: rint
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/rintf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rintlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/rintl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rmdirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/rmdir.html
Gnulib module: rmdir
Portability problems fixed by Gnulib:
rmdir("dir/./") on some platforms:
Cygwin 1.5.x.
EINVAL instead of the expected
ENOTDIR for rmdir("file/") on some platforms:
mingw.
Portability problems not fixed by Gnulib:
rmdir fails because the specified directory is not empty, the
errno value is system dependent.
rmdir("link-to-empty/") remove empty
and leave link-to-empty as a dangling symlink. This is
counter-intuitive, so some systems fail with ENOTDIR instead:
glibc
roundPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/round.html
Gnulib module: round
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
roundfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/roundf.html
Gnulib module: roundf
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
roundlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/roundl.html
Gnulib module: roundl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
scalblnPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/scalbln.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
scalblnfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/scalblnf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
scalblnlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/scalblnl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
scalbnPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/scalbn.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
scalbnfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/scalbnf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
scalbnlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/scalbnl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
scandirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/scandir.html
Gnulib module: scandir
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
int (*) (const void *, const void *) on some platforms:
glibc 2.3.6, MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, OpenBSD 3.8, Interix 3.5.
int (*) (void *, void *) on some platforms:
AIX 5.1.
scanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/scanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
hh, ll, j,
t, z size specifiers.
sched_get_priority_maxPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sched_get_priority_max.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sched_get_priority_minPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sched_get_priority_min.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sched_getparamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sched_getparam.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sched_getschedulerPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sched_getscheduler.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sched_rr_get_intervalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sched_rr_get_interval.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sched_setparamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sched_setparam.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sched_setschedulerPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sched_setscheduler.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sched_yieldPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sched_yield.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
seed48POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/seed48.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
seekdirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/seekdir.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
selectPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/select.html
Gnulib module: select
Portability problems fixed by Gnulib:
select can only be
called on descriptors created by the socket function, not on regular
file descriptors.
accept are not
placed in errno, and WSAGetLastError must be used instead.
nfds argument is 0 on some platforms:
Interix 3.5.
Portability problems not fixed by Gnulib:
select with a timeout, some implementations modify the
timeout parameter so that upon return from the function, it contains the
amount of time not slept. Other implementations leave the timeout parameter
unmodified.
select can only be called on descriptors created by the
socket function, not on regular file descriptors.
select applied to a file descriptor opened
for reading and associated with /dev/null hangs, waiting for input,
when instead it should return immediately.
select
may fail, setting errno to EBADF.
sem_closePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sem_close.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sem_destroyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sem_destroy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sem_getvaluePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sem_getvalue.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sem_initPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sem_init.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sem_openPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sem_open.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sem_postPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sem_post.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sem_timedwaitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sem_timedwait.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sem_trywaitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sem_trywait.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sem_unlinkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sem_unlink.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sem_waitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sem_wait.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
semctlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/semctl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
semgetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/semget.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
semopPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/semop.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sendPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/send.html
Gnulib module: send
Portability problems fixed by Gnulib:
send
are not placed in errno, and WSAGetLastError must be
used instead.
Portability problems not fixed by Gnulib:
sendmsgPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sendmsg.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sendtoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sendto.html
Gnulib module: sendto
Portability problems fixed by Gnulib:
sendto
are not placed in errno, and WSAGetLastError must be
used instead.
Portability problems not fixed by Gnulib:
setbufPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setbuf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setegidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setegid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setenvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setenv.html
Gnulib module: setenv
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setenv(NULL,"",0) gracefully
fail with EINVAL, but not all implementations guarantee this,
and the requirement was removed.
seteuidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/seteuid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setgidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setgid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setgrentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setgrent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sethostentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sethostent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setitimerPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setitimer.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setjmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setjmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setjmp saves the signal mask in the
jmp_buf. It does on BSD platforms, and on glibc platforms when
_BSD_SOURCE is defined; in this case setjmp behaves like
sigsetjmp(.,1), and functions _setjmp and _longjmp are
available that don't save or restore the signal mask. On System V platforms
(excluding HP-UX), and on glibc platforms by default, setjmp doesn't
save the signal mask.
setkeyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setkey.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setlocalePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setlocale.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setlocale(LC_ALL,NULL) always returns "C".
setlogmaskPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setlogmask.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setnetentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setnetent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setpgidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setpgid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setpgrpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setpgrp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setpriorityPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setpriority.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setprotoentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setprotoent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setpwentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setpwent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setregidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setregid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setreuidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setreuid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setrlimitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setrlimit.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setserventPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setservent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setsidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setsid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setsockoptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setsockopt.html
Gnulib module: setsockopt
Portability problems fixed by Gnulib:
setsockopt are not placed in errno, and
WSAGetLastError must be used instead.
Portability problems not fixed by Gnulib:
setstatePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setstate.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setuidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setuid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setutxentPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setutxent.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setvbufPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/setvbuf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
shm_openPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/shm_open.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
shm_unlinkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/shm_unlink.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
shmatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/shmat.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
shmat into a previously malloc-ed region fail on SunOS 4,
with errno set to EINVAL, even if there is an munmap call
in between.
SHM_REMAP is needed in order to force shmat
to replace existing memory mappings in the specify address range. On other
platforms, it is not needed.
shmctlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/shmctl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
shmdtPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/shmdt.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
shmgetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/shmget.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
shmget requires superuser privileges.
shutdownPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/shutdown.html
Gnulib module: shutdown
Portability problems fixed by Gnulib:
shutdown are not placed in errno, and
WSAGetLastError must be used instead.
Portability problems not fixed by Gnulib:
sigactionPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigaction.html
Gnulib module: sigaction
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
SIG_IGN for the SIGCHLD signal is equivalent
to a signal handler
void handle_child (int sigchld)
{
while (waitpid (-1, NULL, WNOHANG) > 0)
;
}
except that SIG_IGN for SIGCHLD has the effect that the children
execution times are not accounted in the times function.
On some platforms (BSD? SystemV? Linux?), you need to use the sigaction
flag SA_NOCLDWAIT in order to obtain this behavior.
sigaddsetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigaddset.html
Gnulib module: sigprocmask
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigaltstackPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigaltstack.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigaltstack doesn't work on HP-UX 11/IA-64 and OpenBSD
3.6/Sparc64.
ss_sp member of stack_t as
the upper bound instead of the lower bound of the alternate stack on
some platforms:
Irix 6.5
sigdelsetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigdelset.html
Gnulib module: sigprocmask
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigemptysetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigemptyset.html
Gnulib module: sigprocmask
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigfillsetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigfillset.html
Gnulib module: sigprocmask
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigholdPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sighold.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigignorePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigignore.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
siginterruptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/siginterrupt.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Note: POSIX recommends using sigaction with SA_RESTART instead of
siginterrupt (sig, 0).
sigismemberPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigismember.html
Gnulib module: sigprocmask
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
siglongjmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/siglongjmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
signalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/signal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigaction instead of
signal.
signbitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/signbit.html
Gnulib module: signbit
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
signgamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/signgam.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigpausePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigpause.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigpendingPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigpending.html
Gnulib module: sigprocmask
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigprocmaskPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigprocmask.html
Gnulib module: sigprocmask
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigqueuePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigqueue.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigrelsePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigrelse.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigsetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigset.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigsetjmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigsetjmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigsuspendPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigsuspend.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigtimedwaitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigtimedwait.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigwaitinfo
does; other platforms may not do the same.
sigwaitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigwait.html
Gnulib module: extensions
Portability problems fixed by Gnulib:
_POSIX_PTHREAD_SEMANTICS is not defined).
Portability problems not fixed by Gnulib:
sigwaitinfoPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sigwaitinfo.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sinPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sin.html
Gnulib module: sin
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sinfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sinf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sinhPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sinh.html
Gnulib module: sinh
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sinhfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sinhf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sinhlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sinhl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sinlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sinl.html
Gnulib module: sinl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sleepPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sleep.html
Gnulib module: sleep
Portability problems fixed by Gnulib:
void on some
platforms:
mingw (2005 and older).
Portability problems not fixed by Gnulib:
sleep function may interfere with the program's
use of the SIGALRM signal. On Linux, it doesn't; on other platforms,
it may.
snprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/snprintf.html
Gnulib module: snprintf or snprintf-posix
Portability problems fixed by either Gnulib module snprintf or snprintf-posix:
Portability problems fixed by Gnulib module snprintf-posix:
hh, ll,
j, t, z) on some platforms:
AIX 5.1, HP-UX 11.23, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.24, mingw, BeOS.
"%f", "%e", "%g" of Infinity and NaN yields an
incorrect result on some platforms:
AIX 5.2, OSF/1 5.1, Solaris 10, mingw.
"%2$s", on some platforms:
NetBSD 3.0, mingw, BeOS.
' flag on some platforms:
NetBSD 3.0, Cygwin 1.5.24, mingw.
"%010f" of NaN and Infinity yields an incorrect result (padded
with zeroes) on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, AIX 5.2, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw.
Portability problems not fixed by Gnulib:
sockatmarkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sockatmark.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
socketPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/socket.html
Gnulib module: socket
Portability problems fixed by Gnulib:
socket function can not be used in calls to read,
write, and close; you have to use recv, send,
closesocket in these cases instead.
socket
are not placed in errno, and WSAGetLastError must be
used instead.
Portability problems not fixed by Gnulib:
socket function can not be used
in calls to read, write, and close; you have to use
recv, send, closesocket in these cases instead.
socketpairPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/socketpair.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sprintf.html
Gnulib module: sprintf-posix
Portability problems fixed by Gnulib:
hh, ll,
j, t, z) on some platforms:
AIX 5.1, HP-UX 11.23, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.24, mingw, BeOS.
"%f", "%e", "%g" of Infinity and NaN yields an
incorrect result on some platforms:
AIX 5.2, OSF/1 5.1, Solaris 10, mingw.
"%2$s", on some platforms:
NetBSD 3.0, mingw, BeOS.
' flag on some platforms:
NetBSD 3.0, Cygwin 1.5.24, mingw.
"%010f" of NaN and Infinity yields an incorrect result (padded
with zeroes) on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, AIX 5.2, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw.
Portability problems not fixed by Gnulib:
sqrtPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sqrt.html
Gnulib module: sqrt
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sqrtfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sqrtf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sqrtlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sqrtl.html
Gnulib module: sqrtl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
srandPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/srand.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
srand48POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/srand48.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
srandomPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/srandom.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sscanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sscanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
hh, ll, j,
t, z size specifiers.
statPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/stat.html
Gnulib module: stat
Portability problems fixed by Gnulib:
stat("link-to-file/",buf) succeeds instead
of failing with ENOTDIR.
FreeBSD 7.2, Solaris 9.
stat(".",buf) and stat("./",buf) give
different results:
mingw.
Portability problems not fixed by Gnulib:
off_t is a 32-bit type, stat may not correctly
report the size of files or block devices larger than 2 GB. The fix is to
use the AC_SYS_LARGEFILE macro.
stat function sometimes sets errno to EACCES when
ENOENT would be more appropriate.
st_ino is always 0.
struct stat, it is not possible to
portably replace stat via an object-like macro. Therefore,
expressions such as (islnk ? lstat : stat) (name, buf) are not
portable, and should instead be written islnk ? lstat (name,
buf) : stat (name, buf).
statvfsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/statvfs.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
stderrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/stderr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
stderr
can affect an unrelated file that happened to be assigned to fd 2.
The gnulib *-safer modules may be used to guarantee that fd 2 stays
reserved for stderr.
stdinPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/stdin.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
stdin
can affect an unrelated file that happened to be assigned to fd 0.
The gnulib *-safer modules may be used to guarantee that fd 0 stays
reserved for stdin.
stdoutPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/stdout.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
stdout
can affect an unrelated file that happened to be assigned to fd 1.
The gnulib *-safer modules may be used to guarantee that fd 1 stays
reserved for stdout.
stpcpyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/stpcpy.html
Gnulib module: stpcpy
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
stpncpyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/stpncpy.html
Gnulib module: stpncpy
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strcasecmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strcasecmp.html
Gnulib module: strcase
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mbscasecmp that does a case
insensitive comparison of character strings and that works in all locales.
strcasecmp_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strcasecmp_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strcatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strcat.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strchrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strchr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mbschr that works on
character strings in all locales.
strcmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strcmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strcollPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strcoll.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno to EILSEQ, on Solaris 10, in
UTF-8 locales, when at least one of the strings contains a Unicode character
in a block that was not assigned in Unicode 4.0.
strcoll_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strcoll_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strcpyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strcpy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strcspnPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strcspn.html
Gnulib module: strcspn
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mbscspn that works on character
strings in all locales.
strdupPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strdup.html
Gnulib module: strdup or strdup-posix
Portability problems fixed by either Gnulib module strdup or strdup-posix:
<string.h> on some old platforms.
Portability problems fixed by Gnulib module strdup-posix:
errno to ENOMEM on
some platforms:
mingw.
Portability problems not fixed by Gnulib:
strerrorPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strerror.html
Gnulib module: strerror
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strerror_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strerror_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strerror_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strerror_r.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
char *s = (strerror_r (err, buf, buflen) == 0 ? buf : NULL);
is essentially equivalent to this code using the glibc function:
char *s = strerror_r (err, buf, buflen);
strfmonPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strfmon.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strfmon_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strfmon_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strftimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strftime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Extension: Gnulib offers a module ‘strftime’ that provides an
nstrftime function with various GNU extensions.
strftime_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strftime_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strlenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strlen.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strncasecmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strncasecmp.html
Gnulib module: strcase
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mbsncasecmp and mbspcasecmp
that do a case insensitive comparison of character strings and that work in all
locales.
strncasecmp_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strncasecmp_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strncatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strncat.html
Gnulib module: strncat
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strncmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strncmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strncpyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strncpy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strndupPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strndup.html
Gnulib module: strndup
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strnlenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strnlen.html
Gnulib module: strnlen
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strpbrkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strpbrk.html
Gnulib module: strpbrk
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mbspbrk that works on character
strings in all locales.
strptimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strptime.html
Gnulib module: strptime
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strrchrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strrchr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mbsrchr that works
on character strings in all locales.
strsignalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strsignal.html
Gnulib module: strsignal
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
const char * instead of char * on
some platforms:
cygwin 1.5.25.
strspnPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strspn.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mbsspn that works on character
strings in all locales.
strstrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strstr.html
Gnulib module: strstr or strstr-simple
Portability problems fixed by either Gnulib module strstr-simple
or strstr:
Portability problems fixed by Gnulib strstr:
Portability problems not fixed by Gnulib:
mbsstr that works
on character strings in all locales.
strtodPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strtod.html
Gnulib module: strtod
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtofPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strtof.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtoimaxPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strtoimax.html
Gnulib module: strtoimax
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtokPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strtok.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtok_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strtok_r.html
Gnulib module: strtok_r
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mbstok_r that works on character
strings in all locales.
strtolPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strtol.html
Gnulib module: strtol
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtoldPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strtold.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtollPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strtoll.html
Gnulib module: strtoll
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtoulPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strtoul.html
Gnulib module: strtoul
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtoullPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strtoull.html
Gnulib module: strtoull
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtoumaxPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strtoumax.html
Gnulib module: strtoumax
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strxfrmPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strxfrm.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strxfrm_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/strxfrm_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
swabPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/swab.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
swprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/swprintf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
swscanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/swscanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
symlinkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/symlink.html
Gnulib module: symlink
Portability problems fixed by Gnulib:
symlink(value,"name/") mistakenly creates a
symlink:
FreeBSD 7.2, Solaris 9
EPERM:
mingw.
Portability problems not fixed by Gnulib:
symlinkatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/symlinkat.html
Gnulib module: symlinkat
Portability problems fixed by Gnulib:
stdio.h instead of
unistd.h:
Cygwin 1.7.1.
Portability problems not fixed by Gnulib:
syncPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sync.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sysconfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/sysconf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
syslogPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/syslog.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
systemPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/system.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
system function is cmd.exe, not /bin/sh. Accordingly,
the rules for quoting shell arguments containing spaces, quote or other special
characters are different.
tanPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tan.html
Gnulib module: tan
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tanhPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tanh.html
Gnulib module: tanh
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tanhfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tanhf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tanhlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tanhl.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tanlPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tanl.html
Gnulib module: tanl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tcdrainPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tcdrain.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tcdrain on a non-tty fails with errno set to
EINVAL or, on MacOS X, also EOPNOTSUPP or ENODEV, rather
than ENOTTY.
tcflowPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tcflow.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tcflushPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tcflush.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tcflush of TCIFLUSH on a non-tty fails with
errno set to EINVAL rather than ENOTTY.
tcflush of TCOFLUSH on a non-tty fails with
errno set to EINVAL or, on IRIX, also ENOSYS, or, on MacOS X,
also EOPNOTSUPP or ENODEV, rather than ENOTTY.
tcgetattrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tcgetattr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tcgetpgrpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tcgetpgrp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tcgetsidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tcgetsid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tcsendbreakPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tcsendbreak.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tcsetattrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tcsetattr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tcsetpgrpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tcsetpgrp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tdeletePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tdelete.html
Gnulib module: tsearch
Portability problems fixed by Gnulib:
tdelete returns NULL when removing the last element of a tree
on some platforms:
OpenBSD 4.0.
Portability problems not fixed by Gnulib:
telldirPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/telldir.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tempnamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tempnam.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mkstemp instead.
tfindPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tfind.html
Gnulib module: tsearch
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tgammaPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tgamma.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tgammafPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tgammaf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tgammalPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tgammal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
timePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/time.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
timer_createPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/timer_create.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
timer_deletePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/timer_delete.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
timer_getoverrunPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/timer_getoverrun.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
timer_gettimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/timer_gettime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
timer_settimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/timer_settime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
timesPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/times.html
Gnulib module: times
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tms_cutime and tms_cstime will always be
0 when the module is used.
timezonePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/timezone.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tmpfilePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tmpfile.html
Gnulib module: tmpfile
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tmpnamPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tmpnam.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mkstemp instead.
toasciiPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/toascii.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tolowerPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tolower.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
tolower_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tolower_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
toupperPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/toupper.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
toupper_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/toupper_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
towctransPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/towctrans.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
towctrans_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/towctrans_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
towlowerPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/towlower.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
towlower_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/towlower_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
towupperPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/towupper.html
Gnulib module: wctype
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
towupper_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/towupper_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
truncPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/trunc.html
Gnulib module: trunc
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
truncatePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/truncate.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
truncfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/truncf.html
Gnulib module: truncf
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
trunclPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/truncl.html
Gnulib module: truncl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tsearchPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tsearch.html
Gnulib module: tsearch
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ttynamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ttyname.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ttyname_rPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ttyname_r.html
Gnulib module: ttyname_r
Portability problems fixed by Gnulib:
_POSIX_PTHREAD_SEMANTICS is not defined).
Portability problems not fixed by Gnulib:
twalkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/twalk.html
Gnulib module: tsearch
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tznamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tzname.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tzsetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/tzset.html
Gnulib module: tzset
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ulimitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ulimit.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
umaskPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/umask.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
unamePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/uname.html
Gnulib module: uname
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ungetcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ungetc.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
ungetwcPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/ungetwc.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
unlinkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/unlink.html
Gnulib module: unlink
Portability problems fixed by Gnulib:
unlink("link-to-file/"):
GNU/Hurd, FreeBSD 7.2, Solaris 9.
unlink("..") succeeds
without doing anything.
Portability problems not fixed by Gnulib:
EPERM. Meanwhile, if a process
has the ability to unlink directories, POSIX requires that
unlink("symlink-to-dir/") remove dir and leave
symlink-to-dir dangling; this behavior is counter-intuitive.
The gnulib module unlinkdir can help determine whether code must be
cautious of unlinking directories.
unlinkatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/unlinkat.html
Gnulib module: openat
Portability problems fixed by Gnulib:
unlinkat(fd,"file/",flag):
GNU/Hurd, Solaris 9.
fcntl.h instead of
unistd.h:
Cygwin 1.7.1.
Portability problems not fixed by Gnulib:
unlinkat(fd,name,AT_REMOVEDIR) fails because the specified
directory is not empty, the errno value is system dependent.
unlinkdir(fd,"link-to-empty/",AT_REMOVEDIR)
remove empty and leave link-to-empty as a dangling
symlink. This is counter-intuitive, so some systems fail with
ENOTDIR instead:
glibc
EPERM. Meanwhile, if a process
has the ability to unlink directories, POSIX requires that
unlinkat(fd,"symlink-to-dir/",0) remove dir and leave
symlink-to-dir dangling; this behavior is counter-intuitive.
The gnulib module unlinkdir can help determine whether code must be
cautious of unlinking directories.
unlockptPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/unlockpt.html
Gnulib module: unlockpt
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
unsetenvPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/unsetenv.html
Gnulib module: setenv
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
unsetenv(NULL) gracefully
fail with EINVAL, but not all implementations guarantee this,
and the requirement was removed.
uselocalePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/uselocale.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
utimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/utime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
utime (file, NULL) fails to set the
file's timestamp to the current time.
utimensat(AT_FDCWD,file,times,0), or the gnulib module utimens,
instead.
utime omits const
for the second argument. Fortunately, the argument is not modified,
so it is safe to cast away const:
mingw.
utimensatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/utimensat.html
Gnulib module: utimensat
Portability problems fixed by Gnulib:
ENOSYS on some platforms:
Linux kernel 2.6.21.
ENOSYS if passed the flag
AT_SYMLINK_NOFOLLOW on a regular file:
Linux kernel 2.6.22.
UTIME_OMIT or UTIME_NOW, some systems require
the tv_sec argument to be 0, and don't necessarily handle all
file permissions in the manner required by POSIX:
Linux kernel 2.6.25.
UTIME_OMIT for the modification time, but specifying
an access time, some systems fail to update the change time:
Linux kernel 2.6.32.
Portability problems not fixed by Gnulib:
ENOSYS if passed the flag
AT_SYMLINK_NOFOLLOW on a symlink.
lstat modifies the access time of
symlinks on some platforms, so utimensat with
AT_SYMLINK_NOFOLLOW can only effectively change modification time:
Cygwin.
stat modifies the access time of
directories on some platforms, so utimensat can only
effectively change directory modification time:
Cygwin 1.5.x.
The gnulib module fdutimensat provides a similar interface.
utimesPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/utimes.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
const in the second argument
on some platforms:
OSF/1 5.1.
utimensat(AT_FDCWD,file,times,0), or the gnulib module utimens,
instead.
utimes (file, NULL) fails to set the
file's timestamp to the current time:
glibc 2.3.3.
utimes failed on read-only files when
utime worked fine.
glibc 2.2.5.
Extension: Gnulib provides a module ‘utimens’ that works around these problems and allows to set the time with nanosecond resolution (as far as supported by the file system).
va_argPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/va_arg.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
va_arg must be a type that is invariant under
the “default argument promotions” (ISO C 99 6.5.2.2 paragraph 6). This
means that the following are not valid here:
This is a portability problem because you don't know the width of some
abstract types like uid_t, gid_t, mode_t. So, instead of
mode = va_arg (ap, mode_t);
you have to write
mode = (sizeof (mode_t) < sizeof (int)
? va_arg (ap, int)
: va_arg (ap, mode_t));
va_copyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/va_copy.html
Gnulib module: stdarg
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
va_endPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/va_end.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
va_startPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/va_start.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
vdprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vdprintf.html
Gnulib module: vdprintf or vdprintf-posix
Portability problems fixed by either Gnulib module vdprintf or vdprintf-posix:
Portability problems fixed by Gnulib module vdprintf-posix:
hh, ll,
j, t, z) on some platforms:
BeOS.
"%2$s", on some platforms:
BeOS.
Portability problems not fixed by Gnulib:
vfprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vfprintf.html
Gnulib module: vfprintf-posix or stdio, sigpipe
Portability problems fixed by Gnulib module vfprintf-posix:
hh, ll,
j, t, z) on some platforms:
AIX 5.1, HP-UX 11.23, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.24, mingw, BeOS.
"%f", "%e", "%g" of Infinity and NaN yields an
incorrect result on some platforms:
AIX 5.2, OSF/1 5.1, Solaris 10, mingw.
"%2$s", on some platforms:
NetBSD 3.0, mingw, BeOS.
' flag on some platforms:
NetBSD 3.0, Cygwin 1.5.24, mingw.
"%010f" of NaN and Infinity yields an incorrect result (padded
with zeroes) on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, AIX 5.2, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw.
Portability problems fixed by Gnulib module stdio or vfprintf-posix, together with module sigpipe:
SIGPIPE handler, on some platforms:
mingw.
Portability problems not fixed by Gnulib:
vfscanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vfscanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
hh, ll, j,
t, z size specifiers.
vfwprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vfwprintf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
vfwscanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vfwscanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
vprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vprintf.html
Gnulib module: vprintf-posix or stdio, sigpipe
Portability problems fixed by Gnulib module vprintf-posix:
hh, ll,
j, t, z) on some platforms:
AIX 5.1, HP-UX 11.23, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.24, mingw, BeOS.
"%f", "%e", "%g" of Infinity and NaN yields an
incorrect result on some platforms:
AIX 5.2, OSF/1 5.1, Solaris 10, mingw.
"%2$s", on some platforms:
NetBSD 3.0, mingw, BeOS.
' flag on some platforms:
NetBSD 3.0, Cygwin 1.5.24, mingw.
"%010f" of NaN and Infinity yields an incorrect result (padded
with zeroes) on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, AIX 5.2, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw.
Portability problems fixed by Gnulib module stdio or vprintf-posix, together with module sigpipe:
SIGPIPE handler, on some platforms:
mingw.
Portability problems not fixed by Gnulib:
vscanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vscanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
hh, ll, j,
t, z size specifiers.
vsnprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vsnprintf.html
Gnulib module: vsnprintf or vsnprintf-posix
Portability problems fixed by either Gnulib module vsnprintf or vsnprintf-posix:
Portability problems fixed by Gnulib module vsnprintf-posix:
hh, ll,
j, t, z) on some platforms:
AIX 5.1, HP-UX 11.23, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.24, mingw, BeOS.
"%f", "%e", "%g" of Infinity and NaN yields an
incorrect result on some platforms:
AIX 5.2, OSF/1 5.1, Solaris 10, mingw.
"%2$s", on some platforms:
NetBSD 3.0, mingw, BeOS.
' flag on some platforms:
NetBSD 3.0, Cygwin 1.5.24, mingw.
"%010f" of NaN and Infinity yields an incorrect result (padded
with zeroes) on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, AIX 5.2, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw.
Portability problems not fixed by Gnulib:
vsprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vsprintf.html
Gnulib module: vsprintf-posix
Portability problems fixed by Gnulib:
hh, ll,
j, t, z) on some platforms:
AIX 5.1, HP-UX 11.23, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.24, mingw, BeOS.
"%f", "%e", "%g" of Infinity and NaN yields an
incorrect result on some platforms:
AIX 5.2, OSF/1 5.1, Solaris 10, mingw.
"%2$s", on some platforms:
NetBSD 3.0, mingw, BeOS.
' flag on some platforms:
NetBSD 3.0, Cygwin 1.5.24, mingw.
"%010f" of NaN and Infinity yields an incorrect result (padded
with zeroes) on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, AIX 5.2, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw.
Portability problems not fixed by Gnulib:
vsscanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vsscanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errno
upon failure.
hh, ll, j,
t, z size specifiers.
vswprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vswprintf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
vswscanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vswscanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
vwprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vwprintf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
vwscanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/vwscanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
waitPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wait.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
waitidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/waitid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
waitid with flag WNOWAIT
works correctly.
waitpidPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/waitpid.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wcpcpyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcpcpy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcpncpyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcpncpy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcrtombPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcrtomb.html
Gnulib module: wcrtomb
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcscasecmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcscasecmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcscasecmp_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcscasecmp_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcscatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcscat.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcschrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcschr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcscmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcscmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcscollPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcscoll.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcscoll_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcscoll_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcscpyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcscpy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcscspnPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcscspn.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsdupPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsdup.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsftimePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsftime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcslenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcslen.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsncasecmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsncasecmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsncasecmp_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsncasecmp_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsncatPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsncat.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsncmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsncmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsncpyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsncpy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsnlenPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsnlen.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsnrtombsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsnrtombs.html
Gnulib module: wcsnrtombs
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcspbrkPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcspbrk.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsrchrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsrchr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsrtombsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsrtombs.html
Gnulib module: wcsrtombs
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsspnPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsspn.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsstrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsstr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstodPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcstod.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstofPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcstof.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstoimaxPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcstoimax.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstokPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcstok.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstolPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcstol.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstoldPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcstold.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstollPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcstoll.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstombsPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcstombs.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstoulPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcstoul.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstoullPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcstoull.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstoumaxPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcstoumax.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcswidthPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcswidth.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsxfrmPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsxfrm.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsxfrm_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcsxfrm_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wctobPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wctob.html
Gnulib module: wctob
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wctombPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wctomb.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wctransPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wctrans.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wctrans_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wctrans_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wctypePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wctype.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wctype_lPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wctype_l.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcwidthPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wcwidth.html
Gnulib module: wcwidth
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wmemchrPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wmemchr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wmemcmpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wmemcmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wmemcpyPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wmemcpy.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wmemmovePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wmemmove.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wmemsetPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wmemset.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wordexpPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wordexp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wordfreePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wordfree.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wprintfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wprintf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
writePOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/write.html
Gnulib module: write, sigpipe
Portability problems fixed by Gnulib:
EINVAL, instead of obeying the current SIGPIPE handler, on
some platforms:
mingw.
Portability problems not fixed by Gnulib:
writevPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/writev.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wscanfPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/wscanf.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
y0POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/y0.html
Gnulib module: y0
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
y1POSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/y1.html
Gnulib module: y1
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ynPOSIX specification: http://www.opengroup.org/onlinepubs/9699919799/functions/yn.html
Gnulib module: yn
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
This chapter describes which functions and function-like macros specified by older versions of POSIX (POSIX:2001) are substituted by Gnulib, which portability pitfalls are fixed by Gnulib, and which (known) portability problems are not worked around by Gnulib.
The notation “Gnulib module: —” means that Gnulib does not provide a
module providing a substitute for the function. When the list
“Portability problems not fixed by Gnulib” is empty, such a module is
not needed: No portability problems are known. Otherwise, it indicates
that such a module would be useful but is not available: No one so far
found this function important enough to contribute a substitute for it.
If you need this particular function, you may write to
<bug-gnulib at gnu dot org>.
bcmpPOSIX specification: http://www.opengroup.org/susv3xsh/bcmp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memcmp
instead.
bcopyPOSIX specification: http://www.opengroup.org/susv3xsh/bcopy.html
Gnulib module: bcopy
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memcpy
or memmove instead.
bsd_signalPOSIX specification: http://www.opengroup.org/susv3xsh/bsd_signal.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
bzeroPOSIX specification: http://www.opengroup.org/susv3xsh/bzero.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memset
instead.
ecvtPOSIX specification: http://www.opengroup.org/susv3xsh/ecvt.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sprintf
instead.
fcvtPOSIX specification: http://www.opengroup.org/susv3xsh/fcvt.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sprintf
instead.
ftimePOSIX specification: http://www.opengroup.org/susv3xsh/ftime.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gettimeofday
or clock_gettime instead, and use ftime only as a fallback for
portability to Windows platforms.
gcvtPOSIX specification: http://www.opengroup.org/susv3xsh/gcvt.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sprintf
instead.
getcontextPOSIX specification: http://www.opengroup.org/susv3xsh/getcontext.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gethostbyaddrPOSIX specification: http://www.opengroup.org/susv3xsh/gethostbyaddr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gethostbynamePOSIX specification: http://www.opengroup.org/susv3xsh/gethostbyname.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getwdPOSIX specification: http://www.opengroup.org/susv3xsh/getwd.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getcwd function instead.
h_errnoPOSIX specification: http://www.opengroup.org/susv3xsh/h_errno.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
indexPOSIX specification: http://www.opengroup.org/susv3xsh/index.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strchr
instead.
makecontextPOSIX specification: http://www.opengroup.org/susv3xsh/makecontext.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mktempPOSIX specification: http://www.opengroup.org/susv3xsh/mktemp.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mkstemp instead.
pthread_attr_getstackaddrPOSIX specification: http://www.opengroup.org/susv3xsh/pthread_attr_getstackaddr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_attr_setstackaddrPOSIX specification: http://www.opengroup.org/susv3xsh/pthread_attr_setstackaddr.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rindexPOSIX specification: http://www.opengroup.org/susv3xsh/rindex.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strrchr
instead.
scalbPOSIX specification: http://www.opengroup.org/susv3xsh/scalb.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setcontextPOSIX specification: http://www.opengroup.org/susv3xsh/setcontext.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
swapcontextPOSIX specification: http://www.opengroup.org/susv3xsh/swapcontext.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ualarmPOSIX specification: http://www.opengroup.org/susv3xsh/ualarm.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
usleepPOSIX specification: http://www.opengroup.org/susv3xsh/usleep.html
Gnulib module: usleep
Portability problems fixed by Gnulib:
usleep rejects attempts to sleep longer than 1
second, as allowed by POSIX:
mingw.
select or nanosleep if better resolution is needed:
IRIX 5.3, Solaris 2.4, older mingw, BeOS.
Portability problems not fixed by Gnulib:
usleep function may interfere with the program's
use of the SIGALRM signal. On Linux, it doesn't; on other platforms,
it may.
vforkPOSIX specification: http://www.opengroup.org/susv3xsh/vfork.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wcswcsPOSIX specification: http://www.opengroup.org/susv3xsh/wcswcs.html
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsstr
instead.
This chapter describes which header files contained in GNU libc but not specified by ISO C or POSIX are substituted by Gnulib, which portability pitfalls are fixed by Gnulib, and which (known) portability problems are not worked around by Gnulib.
The notation “Gnulib module: —” means that Gnulib does not provide a
module providing a substitute for the header file. When the list
“Portability problems not fixed by Gnulib” is empty, such a module is
not needed: No portability problems are known. Otherwise, it indicates
that such a module would be useful but is not available: No one so far
found this header file important enough to contribute a substitute for it.
If you need this particular header file, you may write to
<bug-gnulib at gnu dot org>.
Describes the structure of executables (and object files?) in the old
a.out format.
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Defines the type struct aliasent and declares the functions
setaliasent, endaliasent,
getaliasent, getaliasent_r,
getaliasbyname, getaliasbyname_r.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Declares the alloca function of function-like macro.
Documentation:
Gnulib module: alloca
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Describes the structure of files produced by the ‘ar’ program.
Defines the type struct ar_hdr and the macros ARMAG,
SARMAG, ARFMAG.
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Documentation:
Gnulib module: argp
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Documentation:
Gnulib module: argz
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Defines the functions or function-like macros bswap_16, bswap_32,
bswap_64.
Gnulib module: byteswap
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Defines the type struct crypt_data and declares the functions
crypt, crypt_r,
setkey, setkey_r,
encrypt, encrypt_r.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
crypt, setkey, encrypt are missing on some
platforms:
HP-UX 11, OSF/1 5.1.
struct crypt_data and the functions crypt_r,
setkey_r, encrypt_r are missing on some platforms:
IRIX 6.5, Solaris 10, Cygwin.
Describe's the platform's endianness (byte ordering of words stored in memory).
Defines the macros BYTE_ORDER, LITTLE_ENDIAN, BIG_ENDIAN,
PDP_ENDIAN.
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Declares the functions
warn, vwarn, warnx, vwarnx,
err, verr, errx, verrx.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Declares the functions error, error_at_line and the variables
error_print_progname, error_message_count,
error_one_per_line.
Documentation:
Gnulib module: error
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Declares the functions backtrace, backtrace_symbols,
backtrace_symbols_fd.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Handling of the FPU control word. Defines the fpu_control_t type,
declares the __fpu_control variable, and defines the _FPU_GETCW,
_FPU_SETCW macros.
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Defines the type struct fstab, the macros FSTAB_*,
_PATH_FSTAB, and declares the functions
setfsent, endfsent,
getfsent, getfsspec, getfsfile.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
_PATH_FSTAB is missing on some platforms:
AIX 5.1, HP-UX 11.
Defines the types FTS, FTSENT and the macros FTS_*,
and declares the functions fts_open, fts_read,
fts_children, fts_set, fts_close.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Defines the type struct option and declares the variables
optarg, optind, opterr, optopt
and the functions getopt, getopt_long, getopt_long_only.
Documentation:
Gnulib module: getopt-gnu
Portability problems fixed by Gnulib:
getopt_long is missing on some platforms:
IRIX 6.5, OSF/1 5.1, Solaris 9.
getopt_long_only is missing on some platforms:
MacOS X 10.3, FreeBSD 5.2.1, NetBSD 3.0, IRIX 6.5, OSF/1 5.1, Solaris 9, mingw.
getopt does not handle a leading ‘+’ character in
the options string on some platforms:
Solaris 10.
Portability problems not fixed by Gnulib:
Defines the types union ieee754_float, union ieee754_double,
union ieee854_long_double.
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Defines the type struct ifaddrs and declares the functions
getifaddrs, freeifaddrs.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Defines the macros __USE_GNU_GETTEXT,
__GNU_GETTEXT_SUPPORTED_REVISION, and declares the functions
gettext, dgettext, dcgettext,
ngettext, dngettext, dcngettext,
textdomain, bindtextdomain, bind_textdomain_codeset.
Documentation:
Gnulib module: gettext
Portability problems fixed by Gnulib, if GNU gettext is installed:
Portability problems not fixed by Gnulib:
Defines the type enum mcheck_status and declares the functions
mcheck, mcheck_pedantic, mcheck_check_all, mprobe,
mtrace, muntrace.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Defines the type struct mntent and the macros MNTTAB,
MOUNTED, MNTTYPE_*, MNTOPT_*, and declares the functions
setmntent, getmntent, getmntent_r, addmntent,
endmntent, hasmntopt.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getmntent_r is missing on all non-glibc platforms:
AIX 5.1, HP-UX 11, IRIX 6.5, Cygwin.
Gnulib module mountlist provides a higher-level abstraction.
Documentation:
Gnulib module: obstack
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Defines the macros _PATH_*.
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
_PATH_* macros is platform dependent.
Defines the type struct printf_info and the macros and enum values
PA_*, and declares the functions
printf_function, printf_arginfo_function,
register_printf_function, parse_printf_format,
printf_size, printf_size_info.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Declares the functions openpty and forkpty.
Documentation:
Gnulib module: pty
Portability problems fixed by Gnulib:
forkpty and openpty functions in util.h or
libutil.h instead: MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0,
OpenBSD 3.8.
Portability problems not fixed by Gnulib:
Defines the types res_sendhookact, res_send_qhook,
res_send_rhook, res_state, struct res_sym and the
macros _PATH_RESCONF, RES_*, and declares the functions
fp_nquery, fp_query,
hostalias,
p_query,
res_close, res_init, res_isourserver,
res_mkquery, res_query, res_querydomain,
res_search, res_send.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Defines the type struct spwd and declares the functions
setspent, endspent,
getspent, getspent_r,
getspnam, getspnam_r,
sgetspent, sgetspent_r,
fgetspent, fgetspent_r,
putspent,
lckpwdf, ulckpwdf.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getspent_r, getspnam_r, sgetspent_r,
fgetspent, fgetspent_r, putspent are missing on some
platforms:
HP-UX 11.
sgetspent, sgetspent_r are missing on some
platforms:
IRIX 6.5, Solaris 10.
Declares the function ioctl.
Documentation:
Gnulib module: sys_ioctl
Portability problems fixed by Gnulib:
ioctl function on some platforms:
AIX 5.1, Solaris 10.
Portability problems not fixed by Gnulib:
Defines the EX_* macros, including EX_OK.
Gnulib module: sysexits
Portability problems fixed by Gnulib:
EX_CONFIG is missing on some platforms:
HP-UX 11.
Portability problems not fixed by Gnulib:
Defines the type struct ttyent and declares the functions
setttyent, endttyent, getttyent, getttynam.
Documentation:
Gnulib module: —
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
This chapter describes which functions and function-like macros provided as extensions by at least GNU libc are also supported by Gnulib, which portability pitfalls are fixed by Gnulib, and which (known) portability problems are not worked around by Gnulib.
The notation “Gnulib module: —” means that Gnulib does not provide a
module providing a substitute for the function. When the list
“Portability problems not fixed by Gnulib” is empty, such a module is
not needed: No portability problems are known. Otherwise, it indicates
that such a module would be useful but is not available: No one so far
found this function important enough to contribute a substitute for it.
If you need this particular function, you may write to
<bug-gnulib at gnu dot org>.
This list of functions is sorted according to the header that declares them.
<aio.h>aio_initPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<aliases.h>endaliasentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getaliasbynamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getaliasbyname_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getaliasentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getaliasent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setaliasentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<argp.h>argp_err_exit_statusPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argp_errorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argp_failurePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argp_helpPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argp_parsePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argp_program_bug_addressPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argp_program_versionPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argp_program_version_hookPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argp_state_helpPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argp_usagePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<argz.h>argz_addPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argz_add_sepPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argz_appendPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argz_countPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argz_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argz_create_sepPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argz_deletePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argz_extractPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argz_insertPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argz_nextPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argz_replacePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
argz_stringifyPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<arpa/inet.h>inet_atonPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_lnaofPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_makeaddrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_net_ntopPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_net_ptonPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_netaPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_netofPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_networkPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_nsap_addrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet_nsap_ntoaPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<byteswap.h>bswap_16Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
bswap_32Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
bswap_64Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<complex.h>clog10Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clog10fPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clog10lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<crypt.h>crypt_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
encrypt_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setkey_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<ctype.h>isctypePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<dirent.h>getdirentriesPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
versionsortPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<dlfcn.h>dladdrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dladdr1Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dlinfoPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dlmopenPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dlvsymPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<envz.h>envz_addPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
envz_entryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
envz_getPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
envz_mergePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
envz_removePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
envz_stripPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<err.h>errPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
errxPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
verrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
verrxPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
vwarnPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
vwarnxPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
warnPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
warnxPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<errno.h>program_invocation_namePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
program_invocation_short_namePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<error.h>errorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
error_at_linePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
error_message_countPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
error_one_per_linePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
error_print_prognamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<execinfo.h>backtracePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
backtrace_symbolsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
backtrace_symbols_fdPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<fcntl.h>fallocatePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
readaheadPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<fenv.h>fedisableexceptPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
feenableexceptPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fegetexceptPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<fmtmsg.h>addseverityPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<fstab.h>endfsentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getfsentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getfsfilePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getfsspecPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setfsentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<fts.h>fts_childrenPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fts_closePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fts_openPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fts_readPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fts_setPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<getopt.h>getopt_longPortability problems fixed by Gnulib:
getopt_long does not obey the combination of
‘+’ and ‘:’ flags in the options string on some platforms:
glibc 2.11.
-W foo to behave synonymously with --foo:
glibc 2.11.
getopt_long does not support the ‘+’ flag in
the options string on some platforms:
MacOS X 10.5, AIX 5.2, OSF/1 5.1, Solaris 10.
optind after a missing required argument is wrong
on some platforms:
MacOS 10.5.
getopt_long does not obey the ‘-’ flag in the
options string when POSIXLY_CORRECT is set on some platforms:
Cygwin 1.7.0.
optind is set to ‘0’:
NetBSD, Cygwin 1.7.0.
getopt_long does not support options with optional
arguments on some platforms:
MacOS X 10.5, OpenBSD 4.0, AIX 5.2, IRIX 6.5, Solaris 10, Cygwin 1.5.x.
Portability problems not fixed by Gnulib:
getopt_long_onlyPortability problems fixed by Gnulib:
getopt_long_only does not obey the combination of
‘+’ and ‘:’ flags in the options string on some platforms:
glibc 2.11.
-W foo to behave synonymously with --foo:
glibc 2.11.
getopt_long_only does not support the ‘+’
flag in the options string on some platforms:
MacOS X 10.5, AIX 5.2, OSF/1 5.1, Solaris 10.
optind after a missing required argument is wrong
on some platforms:
MacOS 10.5.
getopt_long_only does not obey the ‘-’ flag
in the options string when POSIXLY_CORRECT is set on some platforms:
Cygwin 1.7.0.
optind is set to ‘0’:
NetBSD, Cygwin 1.7.0.
getopt_long_only does not support options with
optional arguments on some platforms:
MacOS X 10.5, OpenBSD 4.0, AIX 5.2, Solaris 10, Cygwin 1.5.x.
Portability problems not fixed by Gnulib:
getopt_long_only
in new programs.
<glob.h>glob_pattern_pPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<gnu/libc-version.h>gnu_get_libc_releasePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gnu_get_libc_versionPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<grp.h>fgetgrentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fgetgrent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getgrent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getgrouplistPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
initgroupsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
putgrentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setgroupsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
GETGROUPS_T to
the appropriate size (since getgroups and setgroups
share the same bug).
<ifaddrs.h>getifaddrsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
freeifaddrsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<libintl.h>bind_textdomain_codesetPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
bindtextdomainPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dcgettextPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dcngettextPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dgettextPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dngettextPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gettextPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ngettextPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
textdomainPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<link.h>dl_iterate_phdrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<malloc.h>mallinfoPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
malloc_get_statePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
malloc_set_statePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
malloc_statsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
malloc_trimPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
malloc_usable_sizePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
malloptPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memalignPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pvallocPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<math.h>dremPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dremfPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dremlPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
exp10Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
exp10fPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
exp10lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
finitePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
finitefPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
finitelPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gammaPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gammafPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gammalPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isinffPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isinflPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isnanfPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isnanlPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
j0fPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
j0lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
j1fPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
j1lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
jnfPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
jnlPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lgamma_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lgammaf_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lgammal_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
matherrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pow10Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pow10fPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pow10lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
scalbfPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
scalblPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
significandPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
significandfPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
significandlPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sincosPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sincosfPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sincoslPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
y0fPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
y0lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
y1fPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
y1lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ynfPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ynlPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<mcheck.h>mcheckPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mcheck_check_allPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mcheck_pedanticPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mprobePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mtracePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
muntracePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<mntent.h>addmntentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
endmntentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getmntentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getmntent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
hasmntoptPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setmntentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<netdb.h>endnetgrentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gethostbyaddr_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gethostbyname2Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gethostbyname2_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gethostbyname_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gethostent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getnetbyaddr_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getnetbyname_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getnetent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getnetgrentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getnetgrent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getprotobyname_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getprotobynumber_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getprotoent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getservbyname_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getservbyport_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getservent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
herrorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
hstrerrorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
innetgrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rcmdPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rcmd_afPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rexecPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rexec_afPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rresvportPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rresvport_afPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ruserokPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ruserok_afPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setnetgrentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<netinet/ether.h>ether_atonPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ether_aton_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ether_hosttonPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ether_linePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ether_ntoaPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ether_ntoa_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ether_ntohostPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<netinet/in.h>bindresvportPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getipv4sourcefilterPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getsourcefilterPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
in6addr_anyPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
in6addr_loopbackPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet6_option_allocPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet6_option_appendPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet6_option_findPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet6_option_initPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet6_option_nextPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
inet6_option_spacePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setipv4sourcefilterPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setsourcefilterPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<obstack.h>obstack_alloc_failed_handlerPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
obstack_exit_failurePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
obstack_freePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
obstack_printfGnulib module: obstack-printf or obstack-printf-posix
Portability problems fixed by either Gnulib module
obstack-printf or obstack-printf-posix:
Portability problems fixed by Gnulib module ostack-printf-posix:
hh, ll,
j, t, z) on some platforms:
AIX 5.1, HP-UX 11.23, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.24, mingw, BeOS.
"%f", "%e", "%g" of Infinity and NaN yields an
incorrect result on some platforms:
AIX 5.2, OSF/1 5.1, Solaris 10, mingw.
"%2$s", on some platforms:
NetBSD 3.0, mingw, BeOS.
' flag on some platforms:
NetBSD 3.0, Cygwin 1.5.24, mingw.
"%010f" of NaN and Infinity yields an incorrect result (padded
with zeroes) on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, AIX 5.2, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw.
Portability problems not fixed by Gnulib:
obstack_vprintfGnulib module: obstack-printf or obstack-printf-posix
Portability problems fixed by either Gnulib module
obstack-printf or obstack-printf-posix:
Portability problems fixed by Gnulib module ostack-printf-posix:
hh, ll,
j, t, z) on some platforms:
AIX 5.1, HP-UX 11.23, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.24, mingw, BeOS.
"%f", "%e", "%g" of Infinity and NaN yields an
incorrect result on some platforms:
AIX 5.2, OSF/1 5.1, Solaris 10, mingw.
"%2$s", on some platforms:
NetBSD 3.0, mingw, BeOS.
' flag on some platforms:
NetBSD 3.0, Cygwin 1.5.24, mingw.
"%010f" of NaN and Infinity yields an incorrect result (padded
with zeroes) on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, AIX 5.2, IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x, mingw.
Portability problems not fixed by Gnulib:
<printf.h>parse_printf_formatPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
printf_sizePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
printf_size_infoPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
register_printf_functionPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<pthread.h>pthread_getattr_npPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_kill_other_threads_npPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlockattr_getkind_npPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_rwlockattr_setkind_npPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pthread_yieldPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<pty.h>forkptyPortability problems fixed by Gnulib:
-lutil is not required.
-lutil is
required.
const.
FreeBSD, Cygwin 1.7.1.
Portability problems not fixed by Gnulib:
openptyPortability problems fixed by Gnulib:
-lutil is not required.
-lutil is
required.
const.
FreeBSD, Cygwin 1.7.1.
Portability problems not fixed by Gnulib:
openpty, the application needs to close
the master's file descriptor before closing the slave's file descriptor,
otherwise the process may hang in a state where it cannot be killed, on
some platforms: MacOS X 10.4.11.
<pwd.h>fgetpwentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fgetpwent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpwPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpwent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
putpwentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<regex.h>re_compPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
re_compile_fastmapPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
re_compile_patternPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
re_execPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
re_matchPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
re_match_2Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
re_searchPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
re_search_2Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
re_set_registersPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
re_set_syntaxPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
re_syntax_optionsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<regexp.h>advancePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
loc1Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
loc2Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
locsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
stepPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<resolv.h>dn_expandPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
res_initPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
res_mkqueryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
res_queryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
res_querydomainPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
res_searchPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/auth.h>authdes_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
authdes_pk_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
authnone_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
authunix_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
authunix_create_defaultPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getnetnamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
host2netnamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
key_decryptsessionPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
key_decryptsession_pkPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
key_encryptsessionPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
key_encryptsession_pkPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
key_gendesPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
key_get_convPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
key_secretkey_is_setPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
key_setsecretPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
netname2hostPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
netname2userPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
user2netnamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_des_blockPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_opaque_authPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/auth_des.h>authdes_getucredPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpublickeyPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getsecretkeyPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rtimePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/auth_unix.h>xdr_authunix_parmsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/clnt.h>callrpcPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clnt_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clnt_pcreateerrorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clnt_perrnoPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clnt_perrorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clnt_spcreateerrorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clnt_sperrnoPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clnt_sperrorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clntraw_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clnttcp_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clntudp_bufcreatePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clntudp_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clntunix_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
get_myaddressPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getrpcportPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rpc_createerrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/des_crypt.h>cbc_cryptPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
des_setparityPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ecb_cryptPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/key_prot.h>xdr_cryptkeyargPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_cryptkeyarg2Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_cryptkeyresPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_getcredresPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_key_netstargPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_key_netstresPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_keybufPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_keystatusPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_netnamestrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_unixcredPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/netdb.h>endrpcentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getrpcbynamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getrpcbyname_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getrpcbynumberPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getrpcbynumber_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getrpcentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getrpcent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setrpcentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/pmap_clnt.h>clnt_broadcastPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pmap_getmapsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pmap_getportPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pmap_rmtcallPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pmap_setPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pmap_unsetPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/pmap_prot.h>xdr_pmapPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_pmaplistPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/pmap_rmt.h>xdr_rmtcall_argsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_rmtcallresPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/rpc_msg.h>xdr_callhdrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_callmsgPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_replymsgPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/svc.h>svc_exitPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svc_fdsetPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svc_getreqPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svc_getreq_commonPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svc_getreq_pollPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svc_getreqsetPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svc_max_pollfdPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svc_pollfdPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svc_registerPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svc_runPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svc_sendreplyPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svc_unregisterPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svcerr_authPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svcerr_decodePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svcerr_noprocPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svcerr_noprogPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svcerr_progversPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svcerr_systemerrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svcerr_weakauthPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svcraw_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svctcp_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svcudp_bufcreatePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svcudp_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
svcunix_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xprt_registerPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xprt_unregisterPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpc/xdr.h>xdr_arrayPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_boolPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_bytesPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_charPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_doublePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_enumPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_floatPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_freePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_hyperPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_intPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_int16_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_int32_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_int64_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_int8_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_longPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_longlong_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_netobjPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_opaquePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_pointerPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_quad_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_referencePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_shortPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_sizeofPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_stringPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_u_charPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_u_hyperPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_u_intPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_u_longPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_u_longlong_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_u_quad_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_u_shortPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_uint16_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_uint32_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_uint64_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_uint8_tPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_unionPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_vectorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_voidPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_wrapstringPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdrmem_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdrrec_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdrrec_endofrecordPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdrrec_eofPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdrrec_skiprecordPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdrstdio_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpcsvc/nislib.h>nis_addPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_add_entryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_addmemberPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_checkpointPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_clone_objectPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_creategroupPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_destroy_objectPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_destroygroupPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_dir_cmpPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_domain_ofPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_domain_of_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_first_entryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_freenamesPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_freeresultPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_freeservlistPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_freetagsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_getnamesPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_getservlistPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_ismemberPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_leaf_ofPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_leaf_of_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_lerrorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_listPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_local_directoryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_local_groupPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_local_hostPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_local_principalPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_lookupPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_mkdirPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_modifyPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_modify_entryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_name_ofPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_name_of_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_next_entryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_perrorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_pingPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_print_directoryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_print_entryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_print_groupPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_print_group_entryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_print_linkPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_print_objectPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_print_resultPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_print_rightsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_print_tablePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_removePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_remove_entryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_removememberPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_rmdirPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_servstatePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_sperrnoPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_sperrorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_sperror_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_statsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nis_verifygroupPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpcsvc/nis_callback.h>xdr_cback_dataPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_obj_pPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpcsvc/yp.h>xdr_domainnamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_keydatPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_mapnamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_peernamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_valdatPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypbind_bindingPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypbind_respPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypbind_resptypePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypbind_setdomPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypmap_parmsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypmaplistPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_yppush_statusPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_yppushresp_xfrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypreq_keyPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypreq_nokeyPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypreq_xfrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypresp_allPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypresp_key_valPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypresp_maplistPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypresp_masterPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypresp_orderPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypresp_valPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypresp_xfrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypstatPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypxfrstatPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpcsvc/yp_prot.h>xdr_ypallPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpcsvc/ypclnt.h>yp_allPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
yp_bindPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
yp_firstPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
yp_get_default_domainPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
yp_masterPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
yp_matchPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
yp_nextPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
yp_orderPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
yp_unbindPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
yp_updatePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ypbinderr_stringPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
yperr_stringPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ypprot_errPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<rpcsvc/ypupd.h>xdr_yp_bufPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypdelete_argsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
xdr_ypupdate_argsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sched.h>clonePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sched_getaffinityPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sched_setaffinityPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<search.h>hcreate_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
hdestroy_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
hsearch_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tdestroyPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<selinux/selinux.h>fgetfileconPortability problems fixed by Gnulib:
errno to ENOTSUP and returns ‘-1’.
fgetfilecon function that insulates the caller from API-nonconforming behavior.
Without this wrapper, fgetfilecon can return ‘0’ and set
the context pointer to NULL, and in another scenario can return
‘10’ and set the context pointer to ‘unlabeled’.
This wrapper returns ‘-1’ in each case and sets errno to
ENOTSUP and ENODATA respectively.
While the conditions that can provoke such behavior are rare, the
average caller does not handle them because the possibility of such
behavior is not documented.
Portability problems not fixed by Gnulib:
getfileconPortability problems fixed by Gnulib:
errno to ENOTSUP and returns ‘-1’.
getfilecon function that insulates the caller from API-nonconforming behavior.
Without this wrapper, getfilecon can return ‘0’ and set
the context pointer to NULL, and in another scenario can return
‘10’ and set the context pointer to ‘unlabeled’.
This wrapper returns ‘-1’ in each case and sets errno to
ENOTSUP and ENODATA respectively.
While the conditions that can provoke such behavior are rare, the
average caller does not handle them because the possibility of such
behavior is not documented.
Portability problems not fixed by Gnulib:
lgetfileconPortability problems fixed by Gnulib:
errno to ENOTSUP and returns ‘-1’.
lgetfilecon function that insulates the caller from API-nonconforming behavior.
Without this wrapper, lgetfilecon can return ‘0’ and set
the context pointer to NULL, and in another scenario can return
‘10’ and set the context pointer to ‘unlabeled’.
This wrapper returns ‘-1’ in each case and sets errno to
ENOTSUP and ENODATA respectively.
While the conditions that can provoke such behavior are rare, the
average caller does not handle them because the possibility of such
behavior is not documented.
Portability problems not fixed by Gnulib:
<shadow.h>endspentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fgetspentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fgetspent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getspentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getspent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getspnamPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getspnam_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lckpwdfPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
putspentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setspentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sgetspentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sgetspent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ulckpwdfPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<signal.h>gsignalPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigandsetPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigblockPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
siggetmaskPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigisemptysetPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigorsetPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigreturnPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigsetmaskPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigstackPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sigvecPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ssignalPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sys_siglistPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sysv_signalPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<stdio.h>asprintfPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cuseridPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clearerr_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fcloseallPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
feof_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ferror_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fflush_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fgetc_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fgets_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fileno_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fopencookiePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fputc_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fputs_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fread_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fwrite_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getwPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
putwPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setbufferPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setlinebufPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sys_errlistPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sys_nerrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
tmpnam_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
vasprintfPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<stdlib.h>canonicalize_file_nameGnulib module: canonicalize-lgpl
Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cfreePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
clearenvPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
drand48_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ecvt_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
erand48_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fcvt_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getloadavgPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getptPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
initstate_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
jrand48_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lcong48_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lrand48_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mkostempPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mkostempsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mrand48_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mkstempsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
nrand48_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
on_exitPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ptsname_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
qecvtPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
qecvt_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
qfcvtPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
qfcvt_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
qgcvtPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
random_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rpmatchPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
seed48_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setstate_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
srand48_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
srandom_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtod_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtof_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtol_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtold_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtoll_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtoqPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtoul_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtoull_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strtouqPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
vallocPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<string.h>ffslPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ffsllPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memfrobPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memmemGnulib module: memmem or memmem-simple
Portability problems fixed by either Gnulib module memmem-simple
or memmem:
Portability problems fixed by Gnulib module memmem:
Portability problems not fixed by Gnulib:
mempcpyPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
memrchrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
rawmemchrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strcasestrGnulib module: strcasestr or strcasestr-simple
Portability problems fixed by either Gnulib module strcasestr-simple
or strcasestr:
Portability problems fixed by Gnulib module strcasestr:
Portability problems not fixed by Gnulib:
strchrnulPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strfryPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strsepPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strverscmpPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/capability.h>capgetPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
capsetPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/epoll.h>epoll_createPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
epoll_ctlPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
epoll_waitPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/file.h>flockPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/fsuid.h>setfsgidPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setfsuidPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/gmon.h>monstartupPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/io.h>, <sys/perm.h>iopermPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ioplPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/kdaemon.h>bdflushPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/klog.h>klogctlPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/mman.h>madvisePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mincorePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
mremapPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
remap_file_pagesPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/mount.h>mountPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
umountPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
umount2Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/personality.h>personalityPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/prctl.h>prctlPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/profil.h>sprofilPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/ptrace.h>ptracePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/quota.h>quotactlPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/reboot.h>rebootPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/sem.h>semtimedopPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/sendfile.h>sendfilePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/socket.h>accept4Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
isfdtypePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/stat.h>lchmodPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/statfs.h>fstatfsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
statfsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/swap.h>swapoffPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
swaponPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/sysctl.h>sysctlPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/sysinfo.h>get_avphys_pagesPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
get_nprocsPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Gnulib provides the module nproc that performs a similar
function but is portable to more systems.
get_nprocs_confPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
get_phys_pagesPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sysinfoPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/syslog.h>vsyslogPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/sysmacros.h>gnu_dev_majorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gnu_dev_makedevPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
gnu_dev_minorPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/time.h>adjtimePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
futimesPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
futimens(fd,times) instead.
futimesatPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
file ? utimensat(fd,file,times,0) : futimens(fd,times), or the
gnulib module fdutimensat, instead.
lutimesPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
utimensat(AT_FDCWD,file,times,AT_SYMLINK_NOFOLLOW), or the
gnulib module utimens, instead.
lstat modifies the access time of
symlinks on some platforms, so lutimes can only effectively
change modification time:
Cygwin.
settimeofdayPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/timex.h>adjtimexPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ntp_adjtimePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ntp_gettimePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/ustat.h>ustatPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/vlimit.h>vlimitPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/vm86.h>vm86Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/vtimes.h>vtimesPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/wait.h>wait3Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wait4Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<sys/xattr.h>fgetxattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
flistxattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fremovexattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
fsetxattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getxattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lgetxattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
listxattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
llistxattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lremovexattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
lsetxattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
removexattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setxattrPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<termios.h>cfmakerawPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
cfsetspeedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<time.h>dysizePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getdate_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
stimePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
strptime_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
timegmPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
timelocalPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<ttyent.h>endttyentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getttyentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getttynamPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setttyentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<unistd.h>acctPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
brkPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
chrootPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
daemonPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
dup3Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
endusershellPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
euidaccessPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
Other problems of this function:
stat versus lstat). If you need this option, use
the Gnulib module faccessat with the AT_EACCESS flag.
execvpePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
get_current_dir_namePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getdomainnamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getdtablesizePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpagesizePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getpassGnulib module: getpass or getpass-gnu
Portability problems fixed by either Gnulib module getpass or getpass-gnu:
Portability problems fixed by Gnulib module getpass-gnu:
Portability problems not fixed by Gnulib:
getresgidPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getresuidPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getusershellPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
group_memberPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pipe2Portability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
profilPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
revokePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sbrkPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setloginPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setdomainnamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sethostidPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
sethostnamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setresgidPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setresuidPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setusershellPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
syscallPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
ttyslotPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
vhangupPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<utmp.h>endutentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getutentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getutent_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getutidPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getutid_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getutlinePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getutline_rPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
pututlinePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
setutentPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
updwtmpPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
utmpnamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
login_ttyPortability problems fixed by Gnulib:
-lutil on some platforms:
glibc 2.3.6, FreeBSD 6.0, NetBSD 3.0, OpenBSD 3.8.
It is available without link options on other platforms:
MacOS X 10.3, OSF/1 5.1, Cygwin, Interix 3.5.
Portability problems not fixed by Gnulib:
<utmp.h> on glibc, Cygwin,
in <util.h> on MacOS X 10.3, NetBSD 3.0, OpenBSD 3.8,
in <libutil.h> on FreeBSD 6.0, Haiku, and not declared at all
on OSF/1 5.1, Interix 3.5.
<utmpx.h>getutmpPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
getutmpxPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
updwtmpxPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
utmpxnamePortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
<wchar.h>fgetwc_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
fgetws_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
fputwc_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
fputws_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
getwc_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
getwchar_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
putwc_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
putwchar_unlockedPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcschrnulPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcsftime_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstod_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstof_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstol_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstold_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstoll_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstoqPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstoul_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstoull_lPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wcstouqPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
wmempcpyPortability problems fixed by Gnulib:
Portability problems not fixed by Gnulib:
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
The alloca module provides for a function alloca which allocates
memory on the stack, where the system allows it. A memory block allocated with
alloca exists only until the function that calls alloca returns
or exits abruptly.
There are a few systems where this is not possible: HP-UX systems, and some
other platforms when the C++ compiler is used. On these platforms the alloca
module provides a malloc based emulation. This emulation will not free a
memory block immediately when the calling function returns, but rather will
wait until the next alloca call from a function with the same or a
shorter stack length. Thus, in some cases, a few memory blocks will be kept
although they are not needed any more.
The user can #include <alloca.h> and use alloca on all platforms.
Note that the #include <alloca.h> must be the first one after the
autoconf-generated config.h, for AIX 3 compatibility. Thanks to IBM for
this nice restriction!
Note that GCC 3.1 and 3.2 can inline functions that call alloca.
When this happens, the memory blocks allocated with alloca will not be
freed until the end of the calling function. If this calling function
runs a loop calling the function that uses alloca, the program easily
gets a stack overflow and crashes. To protect against this compiler behaviour,
you can mark the function that uses alloca with the following attribute:
#ifdef __GNUC__
__attribute__ ((__noinline__))
#endif
An alternative to this module is the ‘alloca-opt’ module.
The alloca-opt module provides for a function alloca which allocates
memory on the stack, where the system allows it. A memory block allocated with
alloca exists only until the function that calls alloca returns
or exits abruptly.
There are a few systems where this is not possible: HP-UX systems, and some other platforms when the C++ compiler is used. On these platforms the alloca-opt module provides no replacement, just a preprocessor macro HAVE_ALLOCA.
The user can #include <alloca.h> on all platforms, and use
alloca on those platforms where the preprocessor macro HAVE_ALLOCA
evaluates to true. If HAVE_ALLOCA is false, the code should use a heap-based
memory allocation based on malloc or - in C++ - new. Note that
the #include <alloca.h> must be the first one after the
autoconf-generated config.h, for AIX 3 compatibility. Thanks to IBM for
this nice restriction!
Note that GCC 3.1 and 3.2 can inline functions that call alloca.
When this happens, the memory blocks allocated with alloca will not be
freed until the end of the calling function. If this calling function
runs a loop calling the function that uses alloca, the program easily
gets a stack overflow and crashes. To protect against this compiler behaviour,
you can mark the function that uses alloca with the following attribute:
#ifdef __GNUC__
__attribute__ ((__noinline__))
#endif
The standard C library malloc/realloc/calloc/free APIs are prone to a
number of common coding errors. The safe-alloc module provides
macros that make it easier to avoid many of them. It still uses the
standard C allocation functions behind the scenes.
Some of the memory allocation mistakes that are commonly made are
malloc, especially
when allocating an array,
malloc and realloc for
errors,
malloc,
free by forgetting to set the pointer
variable to NULL,
realloc when that call fails.
The safe-alloc module addresses these problems in the following way:
__warn_unused_result__ attribute.
calloc instead of malloc.
Allocate
sizeof(*ptr)bytes of memory and store the address of allocated memory inptr. Fill the newly allocated memory with zeros.Returns -1 on failure, 0 on success.
Allocate an array of
countelements, eachsizeof(*ptr)bytes long, and store the address of allocated memory inptr. Fill the newly allocated memory with zeros.Returns -1 on failure, 0 on success.
Allocate an array of
countelements, eachsizeof(*ptr)bytes long, and store the address of allocated memory inptr. The allocated memory is not initialized.Returns -1 on failure, 0 on success.
Reallocate the memory pointed to by
ptrto be big enough to hold at leastcountelements, eachsizeof(*ptr)bytes long, and store the address of allocated memory inptr. If reallocation fails, theptrvariable is not modified.Returns -1 on failure, 0 on success.
The functions in this section are similar to the generic string functions from the standard C library, except that
The c-ctype module contains functions operating on single-byte
characters, like the functions in <ctype.h>, that operate as if the
locale encoding was ASCII. (The "C" locale on many systems has the locale
encoding "ASCII".)
The functions are:
extern bool c_isascii (int c);
extern bool c_isalnum (int c);
extern bool c_isalpha (int c);
extern bool c_isblank (int c);
extern bool c_iscntrl (int c);
extern bool c_isdigit (int c);
extern bool c_islower (int c);
extern bool c_isgraph (int c);
extern bool c_isprint (int c);
extern bool c_ispunct (int c);
extern bool c_isspace (int c);
extern bool c_isupper (int c);
extern bool c_isxdigit (int c);
extern int c_tolower (int c);
extern int c_toupper (int c);
These functions assign properties only to ASCII characters.
The c argument can be a char or unsigned char value,
whereas the corresponding functions in <ctype.h> take an argument
that is actually an unsigned char value.
The c_is* functions return ‘bool’, where the corresponding
functions in <ctype.h> return ‘int’ for historical reasons.
Note: The <ctype.h> functions support only unibyte locales.
The c-strcase module contains case-insensitive string comparison
functions operating on single-byte character strings, like the functions in
<strings.h>, that operate as if the locale encoding was ASCII.
(The "C" locale on many systems has the locale encoding "ASCII".)
The functions are:
extern int c_strcasecmp (const char *s1, const char *s2);
extern int c_strncasecmp (const char *s1, const char *s2, size_t n);
For case conversion here, only ASCII characters are considered to be upper case or lower case.
Note: The functions strcasecmp, strncasecmp from
<strings.h> support only unibyte locales; for multibyte locales,
you need the functions mbscasecmp, mbsncasecmp,
mbspcasecmp.
The c-strcaseeq module contains an optimized case-insensitive
string comparison function operating on single-byte character strings, that
operate as if the locale encoding was ASCII.
(The "C" locale on many systems has the locale encoding "ASCII".)
The functions is actually implemented as a macro:
extern int STRCASEEQ (const char *s1, const char *s2,
int s20, int s21, int s22, int s23, int s24, int s25,
int s26, int s27, int s28);
s2 should be a short literal ASCII string, and s20, s21, ... the individual characters of s2.
For case conversion here, only ASCII characters are considered to be upper case or lower case.
The c-strcasestr module contains a case-insensitive string search
function operating on single-byte character strings, that operate as if the
locale encoding was ASCII.
(The "C" locale on many systems has the locale encoding "ASCII".)
The function is:
extern char *c_strcasestr (const char *haystack, const char *needle);
For case conversion here, only ASCII characters are considered to be upper case or lower case.
Note: The function strcasestr from <string.h> supports only
unibyte locales; for multibyte locales, you need the function
mbscasestr.
The c-strstr module contains a substring search function operating
on single-byte character strings, that operate as if the locale encoding
was ASCII.
(The "C" locale on many systems has the locale encoding "ASCII".)
The function is:
extern char *c_strstr (const char *haystack, const char *needle);
Note: The function strstr from <string.h> supports only
unibyte locales; for multibyte locales, you need the function
mbsstr.
The c-strtod module contains a string to number (‘double’)
conversion function operating on single-byte character strings, that operates
as if the locale encoding was ASCII.
(The "C" locale on many systems has the locale encoding "ASCII".)
The function is:
extern double c_strtod (const char *string, char **endp);
In particular, only a period ‘.’ is accepted as decimal point, even when the current locale's notion of decimal point is a comma ‘,’, and no characters outside the basic character set are accepted.
On platforms without strtod_l, this function is not safe for use in
multi-threaded applications since it calls setlocale.
The c-strtold module contains a string to number (‘long double’)
conversion function operating on single-byte character strings, that operates
as if the locale encoding was ASCII.
(The "C" locale on many systems has the locale encoding "ASCII".)
The function is:
extern long double c_strtold (const char *string, char **endp);
In particular, only a period ‘.’ is accepted as decimal point, even when the current locale's notion of decimal point is a comma ‘,’.
Gnulib provides ‘quote’ and ‘quotearg’ modules to help with quoting text, such as file names, in messages to the user. Here's an example of using ‘quote’:
#include <quote.h>
...
error (0, errno, _("cannot change owner of %s"), quote (fname));
This differs from
error (0, errno, _("cannot change owner of `%s'"), fname);
in that quote escapes unusual characters in
fname, e.g., ‘'’ and control characters like ‘\n’.
However, a caveat: quote reuses the storage that it returns.
Hence if you need more than one thing quoted at the same time, you
need to use quote_n.
Also, the quote module is not suited for multithreaded applications.
In that case, you have to use quotearg_alloc, defined in the
‘quotearg’ module, which is decidedly less convenient.
The error function uses the program_name variable, but
does not depend on the progname module. Why? Because
error is released under the LGPL, whereas progname is
GPL. RMS does not want additional baggage accompanying the
error module, so an LGPL user must provide their own
replacement program_name, and a GPL user should manually
specify using the progname module.
Additionally, using the progname module is not something that
can be done implicitly. It requires that every main function
be modified to set program_name as one of its first actions.
The gcd function returns the greatest common divisor of two numbers
a > 0 and b > 0. It is the caller's responsibility to ensure
that the arguments are non-zero.
If you need a gcd function for an integer type larger than ‘unsigned long’, you can include the gcd.c implementation file with parametrization. The parameters are:
The created function has the prototype
WORD_T GCD (WORD_T a, WORD_T b);
If you need the least common multiple of two numbers, it can be computed
like this: lcm(a,b) = (a / gcd(a,b)) * b or
lcm(a,b) = a * (b / gcd(a,b)).
Avoid the formula lcm(a,b) = (a * b) / gcd(a,b) because - although
mathematically correct - it can yield a wrong result, due to integer overflow.
In some applications it is useful to have a function taking the gcd of two signed numbers. In this case, the gcd function result is usually normalized to be non-negative (so that two gcd results can be compared in magnitude or compared against 1, etc.). Note that in this case the prototype of the function has to be
unsigned long gcd (long a, long b);
and not
long gcd (long a, long b);
because gcd(LONG_MIN,LONG_MIN) = -LONG_MIN = LONG_MAX + 1 does not
fit into a signed ‘long’.
Gnulib supports many different types of regular expressions; although the underlying features are the same or identical, the syntax used varies. The descriptions given here for the different types are generated automatically.
The character ‘.’ matches any single character except the null character.
Bracket expressions are used to match ranges of characters. Bracket expressions where the range is backward, for example ‘[z-a]’, are invalid. Within square brackets, ‘\’ can be used to quote the following character. Character classes are not supported, so for example you would need to use ‘[0-9]’ instead of ‘[[:digit:]]’.
GNU extensions are not supported and so ‘\w’, ‘\W’, ‘\<’, ‘\>’, ‘\b’, ‘\B’, ‘\`’, and ‘\'’ match ‘w’, ‘W’, ‘<’, ‘>’, ‘b’, ‘B’, ‘`’, and ‘'’ respectively.
Grouping is performed with parentheses ‘()’. An unmatched ‘)’ matches just itself. A backslash followed by a digit matches that digit.
The alternation operator is ‘|’.
The characters ‘^’ and ‘$’ always represent the beginning and end of a string respectively, except within square brackets. Within brackets, ‘^’ can be used to invert the membership of the character class being specified.
‘*’, ‘+’ and ‘?’ are special at any point in a regular expression except:
The longest possible match is returned; this applies to the regular expression as a whole and (subject to this constraint) to subexpressions within groups.
The character ‘.’ matches any single character except newline.
Bracket expressions are used to match ranges of characters. Bracket expressions where the range is backward, for example ‘[z-a]’, are ignored. Within square brackets, ‘\’ is taken literally. Character classes are supported; for example ‘[[:digit:]]’ will match a single decimal digit. Non-matching lists ‘[^...]’ do not ever match newline.
GNU extensions are supported:
Grouping is performed with parentheses ‘()’. A backslash followed by a digit acts as a back-reference and matches the same thing as the previous grouped expression indicated by that number. For example ‘\2’ matches the second group expression. The order of group expressions is determined by the position of their opening parenthesis ‘(’.
The alternation operator is ‘|’.
The characters ‘^’ and ‘$’ always represent the beginning and end of a string respectively, except within square brackets. Within brackets, ‘^’ can be used to invert the membership of the character class being specified.
The characters ‘*’, ‘+’ and ‘?’ are special anywhere in a regular expression.
The longest possible match is returned; this applies to the regular expression as a whole and (subject to this constraint) to subexpressions within groups.
The character ‘.’ matches any single character except the null character.
Bracket expressions are used to match ranges of characters. Bracket expressions where the range is backward, for example ‘[z-a]’, are invalid. Within square brackets, ‘\’ is taken literally. Character classes are supported; for example ‘[[:digit:]]’ will match a single decimal digit.
GNU extensions are supported:
Grouping is performed with backslashes followed by parentheses ‘\(’, ‘\)’. A backslash followed by a digit acts as a back-reference and matches the same thing as the previous grouped expression indicated by that number. For example ‘\2’ matches the second group expression. The order of group expressions is determined by the position of their opening parenthesis ‘\(’.
The alternation operator is ‘\|’.
The character ‘^’ only represents the beginning of a string when it appears:
The character ‘$’ only represents the end of a string when it appears:
‘\*’, ‘\+’ and ‘\?’ are special at any point in a regular expression except:
Intervals are specified by ‘\{’ and ‘\}’. Invalid intervals such as ‘a\{1z’ are not accepted.
The longest possible match is returned; this applies to the regular expression as a whole and (subject to this constraint) to subexpressions within groups.
The character ‘.’ matches any single character except newline.
Bracket expressions are used to match ranges of characters. Bracket expressions where the range is backward, for example ‘[z-a]’, are ignored. Within square brackets, ‘\’ is taken literally. Character classes are not supported, so for example you would need to use ‘[0-9]’ instead of ‘[[:digit:]]’.
GNU extensions are supported:
Grouping is performed with backslashes followed by parentheses ‘\(’, ‘\)’. A backslash followed by a digit acts as a back-reference and matches the same thing as the previous grouped expression indicated by that number. For example ‘\2’ matches the second group expression. The order of group expressions is determined by the position of their opening parenthesis ‘\(’.
The alternation operator is ‘\|’.
The character ‘^’ only represents the beginning of a string when it appears:
The character ‘$’ only represents the end of a string when it appears:
‘*’, ‘+’ and ‘?’ are special at any point in a regular expression except:
The longest possible match is returned; this applies to the regular expression as a whole and (subject to this constraint) to subexpressions within groups.
The character ‘.’ matches any single character.
Bracket expressions are used to match ranges of characters. Bracket expressions where the range is backward, for example ‘[z-a]’, are invalid. Within square brackets, ‘\’ can be used to quote the following character. Character classes are supported; for example ‘[[:digit:]]’ will match a single decimal digit.
GNU extensions are supported:
Grouping is performed with parentheses ‘()’. An unmatched ‘)’ matches just itself. A backslash followed by a digit acts as a back-reference and matches the same thing as the previous grouped expression indicated by that number. For example ‘\2’ matches the second group expression. The order of group expressions is determined by the position of their opening parenthesis ‘(’.
The alternation operator is ‘|’.
The characters ‘^’ and ‘$’ always represent the beginning and end of a string respectively, except within square brackets. Within brackets, ‘^’ can be used to invert the membership of the character class being specified.
‘*’, ‘+’ and ‘?’ are special at any point in a regular expression except:
The longest possible match is returned; this applies to the regular expression as a whole and (subject to this constraint) to subexpressions within groups.
The character ‘.’ matches any single character except newline.
Bracket expressions are used to match ranges of characters. Bracket expressions where the range is backward, for example ‘[z-a]’, are ignored. Within square brackets, ‘\’ is taken literally. Character classes are supported; for example ‘[[:digit:]]’ will match a single decimal digit. Non-matching lists ‘[^...]’ do not ever match newline.
GNU extensions are supported:
Grouping is performed with backslashes followed by parentheses ‘\(’, ‘\)’. A backslash followed by a digit acts as a back-reference and matches the same thing as the previous grouped expression indicated by that number. For example ‘\2’ matches the second group expression. The order of group expressions is determined by the position of their opening parenthesis ‘\(’.
The alternation operator is ‘\|’.
The character ‘^’ only represents the beginning of a string when it appears:
The character ‘$’ only represents the end of a string when it appears:
‘\*’, ‘\+’ and ‘\?’ are special at any point in a regular expression except:
Intervals are specified by ‘\{’ and ‘\}’. Invalid intervals such as ‘a\{1z’ are not accepted.
The longest possible match is returned; this applies to the regular expression as a whole and (subject to this constraint) to subexpressions within groups.
The character ‘.’ matches any single character except the null character.
Bracket expressions are used to match ranges of characters. Bracket expressions where the range is backward, for example ‘[z-a]’, are invalid. Within square brackets, ‘\’ can be used to quote the following character. Character classes are supported; for example ‘[[:digit:]]’ will match a single decimal digit.
GNU extensions are not supported and so ‘\w’, ‘\W’, ‘\<’, ‘\>’, ‘\b’, ‘\B’, ‘\`’, and ‘\'’ match ‘w’, ‘W’, ‘<’, ‘>’, ‘b’, ‘B’, ‘`’, and ‘'’ respectively.
Grouping is performed with parentheses ‘()’. An unmatched ‘)’ matches just itself. A backslash followed by a digit acts as a back-reference and matches the same thing as the previous grouped expression indicated by that number. For example ‘\2’ matches the second group expression. The order of group expressions is determined by the position of their opening parenthesis ‘(’.
The alternation operator is ‘|’.
The characters ‘^’ and ‘$’ always represent the beginning and end of a string respectively, except within square brackets. Within brackets, ‘^’ can be used to invert the membership of the character class being specified.
‘*’, ‘+’ and ‘?’ are special at any point in a regular expression except the following places, where they are not allowed:
Intervals are specified by ‘{’ and ‘}’. Invalid intervals such as ‘a{1z’ are not accepted.
The longest possible match is returned; this applies to the regular expression as a whole and (subject to this constraint) to subexpressions within groups.
This is a synonym for ed.
The character ‘.’ matches any single character except newline.
Bracket expressions are used to match ranges of characters. Bracket expressions where the range is backward, for example ‘[z-a]’, are ignored. Within square brackets, ‘\’ is taken literally. Character classes are supported; for example ‘[[:digit:]]’ will match a single decimal digit. Non-matching lists ‘[^...]’ do not ever match newline.
GNU extensions are supported:
Grouping is performed with parentheses ‘()’. A backslash followed by a digit acts as a back-reference and matches the same thing as the previous grouped expression indicated by that number. For example ‘\2’ matches the second group expression. The order of group expressions is determined by the position of their opening parenthesis ‘(’.
The alternation operator is ‘|’.
The characters ‘^’ and ‘$’ always represent the beginning and end of a string respectively, except within square brackets. Within brackets, ‘^’ can be used to invert the membership of the character class being specified.
The characters ‘*’, ‘+’ and ‘?’ are special anywhere in a regular expression.
Intervals are specified by ‘{’ and ‘}’. Invalid intervals are treated as literals, for example ‘a{1’ is treated as ‘a\{1’
The longest possible match is returned; this applies to the regular expression as a whole and (subject to this constraint) to subexpressions within groups.
The character ‘.’ matches any single character except the null character.
Bracket expressions are used to match ranges of characters. Bracket expressions where the range is backward, for example ‘[z-a]’, are invalid. Within square brackets, ‘\’ is taken literally. Character classes are supported; for example ‘[[:digit:]]’ will match a single decimal digit.
GNU extensions are supported:
Grouping is performed with parentheses ‘()’. An unmatched ‘)’ matches just itself. A backslash followed by a digit acts as a back-reference and matches the same thing as the previous grouped expression indicated by that number. For example ‘\2’ matches the second group expression. The order of group expressions is determined by the position of their opening parenthesis ‘(’.
The alternation operator is ‘|’.
The characters ‘^’ and ‘$’ always represent the beginning and end of a string respectively, except within square brackets. Within brackets, ‘^’ can be used to invert the membership of the character class being specified.
‘*’, ‘+’ and ‘?’ are special at any point in a regular expression except the following places, where they are not allowed:
Intervals are specified by ‘{’ and ‘}’. Invalid intervals such as ‘a{1z’ are not accepted.
The longest possible match is returned; this applies to the regular expression as a whole and (subject to this constraint) to subexpressions within groups.
The character ‘.’ matches any single character except the null character.
Bracket expressions are used to match ranges of characters. Bracket expressions where the range is backward, for example ‘[z-a]’, are invalid. Within square brackets, ‘\’ is taken literally. Character classes are supported; for example ‘[[:digit:]]’ will match a single decimal digit.
GNU extensions are supported:
Grouping is performed with backslashes followed by parentheses ‘\(’, ‘\)’. A backslash followed by a digit acts as a back-reference and matches the same thing as the previous grouped expression indicated by that number. For example ‘\2’ matches the second group expression. The order of group expressions is determined by the position of their opening parenthesis ‘\(’.
The character ‘^’ only represents the beginning of a string when it appears:
The character ‘$’ only represents the end of a string when it appears:
Intervals are specified by ‘\{’ and ‘\}’. Invalid intervals such as ‘a\{1z’ are not accepted.
The longest possible match is returned; this applies to the regular expression as a whole and (subject to this constraint) to subexpressions within groups.
This is a synonym for ed.
The following macros check for the presence or location of certain C, C++, or Fortran library archive files.
The macros AC_CHECK_LIB, AC_SEARCH_LIBS from GNU Autoconf check
for the presence of certain C, C++, or Fortran library archive files.
The libraries are looked up in the default linker path – a system dependent
list of directories, that usually contains the /usr/lib directory –
and those directories given by -L options in the LDFLAGS
variable.
The following macros, defined in the Gnulib module havelib, search for
the location of certain C, C++, or Fortran library archive files and make the
found location available to the compilation process and to further Autoconf
tests.
AC_LIB_LINKFLAGS(name, [dependencies])Searches for
lib<name>and the libraries corresponding to explicit and implicit dependencies. Sets and AC_SUBSTs theLIB<NAME>andLTLIB<NAME>variables (with<NAME>in upper case) and augments theCPPFLAGSvariable by-Ioptions.This macro should be used when
lib<name>is expected to be found.
AC_LIB_HAVE_LINKFLAGS(name, [dependencies], [includes], [testcode], [missing-message])Searches for
lib<name>and the libraries corresponding to explicit and implicit dependencies, together with the specified include files and the ability to compile and link the specified testcode. The missing-message defaults tonoand may contain additional hints for the user. If found, it sets and AC_SUBSTsHAVE_LIB<NAME>=yesand theLIB<NAME>andLTLIB<NAME>variables (with<NAME>in upper case) and augments theCPPFLAGSvariable by-Ioptions, and #definesHAVE_LIB<NAME>to 1. Otherwise, it sets and AC_SUBSTsHAVE_LIB<NAME>=noandLIB<NAME>andLTLIB<NAME>to empty.
These macros assume that when a library is installed in
some_directory/lib, its include files are installed in
some_directory/include.
The complexities that AC_LIB_LINKFLAGS and AC_LIB_HAVE_LINKFLAGS
deal with are the following:
CPPFLAGS for
the include file search path, LDFLAGS for the library search path).
The macro provides a ‘--with-lib<name>’ option. The user of the
‘configure’ script can use this option to indicate the location of the
library and its include files. If not provided, the --prefix directory
is searched as well.
LD_LIBRARY_PATH, the macro adds the appropriate run time search path
options to the LIB<NAME> variable. This works on most systems.
It can also be inhibited: The user of ‘configure’ can use the
--disable-rpath option to force an installation that doesn't contain
hardcoded library search paths but instead may require the use of an
environment variable like LD_LIBRARY_PATH.
The macros also set a variable LTLIB<NAME>, that should be used
when linking with libtool. Both LTLIB<NAME> and
LIB<NAME> contain essentially the same option, but where
LIB<NAME> contains platform dependent flags like
‘-Wl,-rpath’, LTLIB<NAME> contains platform independent
flags like ‘-R’.
AC_LIB_LINKFLAGSSuppose you want to use libz, the compression library.
AC_CONFIG_AUX_DIR([build-aux])
AC_LIB_LINKFLAGS([z])
Note that since the AC_LIB_LINKFLAGS invocation modifies the CPPFLAGS,
it should precede all tests that check for header files, declarations,
structures or types.
havelib module.
(gnulib-tool will usually do this for you automatically.)
Makefile.in you add @LIBZ@ to the link command line of
your program. Or, if you are using Automake, you add $(LIBZ) to the
LDADD variable that corresponds to your program.
The dependencies list is a space separated list of library names that
libname is known to depend upon. Example: If libfooy
depends on libfoox, and libfooz depends on libfoox and
libfooy, you can write:
AC_LIB_LINKFLAGS([foox])
AC_LIB_LINKFLAGS([fooy], [foox])
AC_LIB_LINKFLAGS([fooz], [foox fooy])
Explicit dependencies are necessary if you cannot assume that a .la
file, created by libtool, is installed. If you can assume that
libfooy.la is installed by libtool (and has not been omitted by the
package distributor!), you can omit the explicit dependency and just write
AC_LIB_LINKFLAGS([fooy])
This way, you don't need to know in advance which libraries the needed library depends upon.
The macros find the libraries regardless whether they are installed as shared or static libraries.
CPPFLAGS vs. LDFLAGSThe macros determine the directories that should be added to the compiler
preprocessor's search path and to the linker's search path. For the
compiler preprocessor, -I options with the necessary directories are
added to the CPPFLAGS variable, for use by the whole package. For
the linker, appropriate options are added to the LIB<NAME> and
LTLIB<NAME> variables, for use during linking by those programs
and libraries that need the dependency on lib<name>. You need
to use the value of LIB<NAME> or LTLIB<NAME> in the
Makefiles. LTLIB<NAME> is for use with libtool, whereas
LIB<NAME> is for when libtool is not involved in linking.
The macros do not check whether the include files and the library found match. If you want to verify this at configure time, one technique is to have a version number in the include files and a version number in the library, like this:
#define LIBNAME_VERSION 10203
extern int libname_version; /* initialized to LIBNAME_VERSION */
and use a test like
AC_TRY_RUN([int main () { return libname_version != LIBNAME_VERSION; }])
A bi-arch system is one where
On several types of such systems, for historical reasons, the 32-bit libraries are installed in prefix/lib, whereas the 64-bit libraries are installed in
On such systems, in 64-bit mode, configure will search for the libraries in prefix/lib64 or prefix/lib/64, respectively, not in prefix/lib. A user can adhere to these system-wide conventions by using the ‘--libdir’ option when installing packages. When a user has already installed packages in 64-bit mode using the GNU default ‘--libdir=prefix/lib’, he can make this directory adhere to the system-wide convention by placing a symbolic link:
ln -s lib prefix/lib64
ln -s . prefix/lib/64
The lib-symbol-visibility module allows precise control of the
symbols exported by a shared library. This is useful because
LD_PRELOAD.) Whereas a call to a function for which the compiler
can assume that it is in the same shared library is just a direct “call”
instructions. Similarly for variables: A reference to a global variable
fetches a pointer in the so-called GOT (global offset table); this is a
pointer to the variable's memory. So the code to access it is two memory
load instructions. Whereas for a variable which is known to reside in the
same shared library, it is just a direct memory access: one memory load
instruction.
There are traditionally three ways to specify the exported symbols of a shared library.
The upside of this approach is flexibility: it allows the same code to be used in different libraries with different export lists. The downsides are: 1. it's a lot of maintenance overhead when the symbol list is platform dependent, 2. it doesn't work well with C++, due to name mangling.
The drawbacks of this approach are: Symbols are still exported from the library by default. It's a lot of maintenance work to mark every non- exported variable and function. But usually the exported API is quite small, compared to the internal API of the library. And it's the wrong paradigm: It doesn't force thinking when introducing new exported API.
This is perfect: It burdens the maintainer only for exported API, not for library-internal API. And it keeps the annotations in the source code.
GNU libtool's -export-symbols option implements the first approach.
This gnulib module implements the third approach. For this it relies on GNU GCC 4.0 or newer, namely on its ‘-fvisibility=hidden’ command-line option and the “visibility” attribute. (The “visibility” attribute was already supported in GCC 3.4, but without the command line option, introduced in GCC 4.0, the third approach could not be used.)
More explanations on this subject can be found in http://gcc.gnu.org/wiki/Visibility - which contains more details on the GCC features and additional advice for C++ libraries - and in Ulrich Drepper's paper http://people.redhat.com/drepper/dsohowto.pdf - which also explains other tricks for reducing the startup time impact of shared libraries.
The gnulib autoconf macro gl_VISIBILITY tests for GCC 4.0 or newer.
It defines a Makefile variable @CFLAG_VISIBILITY@ containing
‘-fvisibility=hidden’ or nothing. It also defines as a C macro and
as a substituted variable: @HAVE_VISIBILITY@. Its value is 1 when symbol
visibility control is supported, and 0 otherwise.
To use this module in a library, say libfoo, you will do these steps:
@CFLAG_VISIBILITY@ or (in a Makefile.am)
$(CFLAG_VISIBILITY) to the CFLAGS for the compilation of the sources
that make up the library.
#if BUILDING_LIBFOO && HAVE_VISIBILITY
#define LIBFOO_DLL_EXPORTED __attribute__((__visibility__("default")))
#else
#define LIBFOO_DLL_EXPORTED
#endif
This macro should be enabled in all public header files of your library.
Note that the precise control of the exported symbols will not work with other compilers than GCC >= 4.0, and will not work on systems where the assembler or linker lack the support of “hidden” visibility. Therefore, it's good if, in order to reduce the risk of collisions with symbols in other libraries, you continue to use a prefix specific to your library for all non-static variables and functions and for all C++ classes in your library.
Note about other compilers: MSVC support can be added easily, by extending the definition of the macro mentioned above, to something like this:
#if BUILDING_LIBFOO && HAVE_VISIBILITY
#define LIBFOO_DLL_EXPORTED __attribute__((__visibility__("default")))
#elif BUILDING_LIBFOO && defined _MSC_VER
#define LIBFOO_DLL_EXPORTED __declspec(dllexport)
#elif defined _MSC_VER
#define LIBFOO_DLL_EXPORTED __declspec(dllimport)
#else
#define LIBFOO_DLL_EXPORTED
#endif
i
The lib-symbol-versions module can be used to add shared
library versioning support. Currently, only GNU LD and the Solaris
linker supports this.
Version scripts provides information that can be used by GNU/Linux
distribution packaging tools. For example, Debian has a tool
dpkg-shlibdeps that can determine the minimal required version
of each dependency (by looking at the symbol list) and stuff the
information into the Debian specific packaging files.
For more information and other uses of version scripts, see Ulrich Drepper's paper http://people.redhat.com/drepper/dsohowto.pdf
You use the module by importing it to your library, and then add the
following lines to the Makefile.am that builds the library:
if HAVE_LD_VERSION_SCRIPT
libfoo_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libfoo.map
endif
The version script file format is documented in the GNU LD manual, but a small example would be:
LIBFOO_1.0 {
global:
libfoo_init; libfoo_doit; libfoo_done;
local:
*;
};
If you target platforms that do not support linker scripts (i.e., all
platforms that doesn't use GNU LD) you may want to consider a more
portable but less powerful alternative: libtool
-export-symbols. It will hide internal symbols from your
library, but will not add ELF versioning symbols. Your usage would
then be something like:
if HAVE_LD_VERSION_SCRIPT
libfoo_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libfoo.map
else
libfoo_la_LDFLAGS += -export-symbols $(srcdir)/libfoo.sym
endif
See the Libtool manual for the file syntax, but a small example would be:
libfoo_init
libfoo_doit
libfoo_done
To avoid the need for a *.sym file if your symbols are easily
expressed using a regular expression, you may use
-export-symbols-regex:
if HAVE_LD_VERSION_SCRIPT
libfoo_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libfoo.map
else
libfoo_la_LDFLAGS += -export-symbols-regex '^libfoo_.*'
endif
For more discussions about symbol visibility, rather than shared
library versioning, see the visibility module
(see Exported Symbols of Shared Libraries).
The lib-msvc-compat module detects whether the linker supports
--output-def when building a library. That parameter is used
to generate a DEF file for a shared library (DLL). DEF files are
useful for developers that use Visual Studio to develop programs that
links to your library. See the GNU LD manual for more information.
There are other ways to create a DEF file, but we believe they are all
sub-optimal to using --output-def during the build process.
The variants we have considered include:
$ { echo EXPORTS; \
dumpbin /EXPORTS libfoo-0.dll | tail -n+20 | awk '{ print $4 }'; \
} > libfoo-0.def
$ lib /def:libfoo-0.def
If you are using libtool to build your shared library, here is how to
use this module. Import lib-msvc-compat to your project, and
then add the following lines to the Makefile.am that builds the
library:
if HAVE_LD_OUTPUT_DEF
libfoo_la_LDFLAGS += -Wl,--output-def,libfoo-$(DLL_VERSION).def
defexecdir = $(bindir)
defexec_DATA = libfoo-$(DLL_VERSION).def
DISTCLEANFILES += $(defexec_DATA)
endif
The DLL_VERSION variable needs to be defined. It should be the
shared library version number used in the DLL filename. For Windows
targets you compute this value from the values you pass to Libtool's
-version-info. Assuming you have variables LT_CURRENT
and LT_AGE defined for the CURRENT and AGE
libtool version integers, you compute DLL_VERSION as follows:
DLL_VERSION=`expr ${LT_CURRENT} - ${LT_AGE}`
AC_SUBST(DLL_VERSION)
It has been a pain for many users of GNU packages for a long time that
packages are not relocatable. It means a user cannot copy a program,
installed by another user on the same machine, to his home directory,
and have it work correctly (including i18n). So many users need to go
through configure; make; make install with all its
dependencies, options, and hurdles.
Red Hat, Debian, and similar package systems solve the “ease of installation” problem, but they hardwire path names, usually to /usr or /usr/local. This means that users need root privileges to install a binary package, and prevents installing two different versions of the same binary package.
A relocatable program can be moved or copied to a different location on the file system. It is possible to make symlinks to the installed and moved programs, and invoke them through the symlink. It is possible to do the same thing with a hard link only if the hard link file is in the same directory as the real program.
The relocatable-prog module aims to ease the process of making a
GNU program relocatable. It helps overcome two obstacles. First, it aids
with relocating the hard-coded references to absolute file names that
GNU programs often contain. These references must be fixed up at
runtime if a program is to be successfully relocated. The
relocatable-prog module provides a function relocate that
does this job.
Second, the loader must be able to find shared libraries linked to
relocatable executables or referenced by other shared libraries linked
to relocatable executables. The relocatable-prog module helps out
here in a platform-specific way:
This approach does not always work. On OpenBSD and OpenServer, prereleases of Libtool 1.5 put absolute file names of libraries in executables, which prevents searching any other locations.
You can make your program relocatable by following these steps:
relocatable-prog module.
main as the first statement (even
before setting the locale or doing anything related to libintl):
set_program_name (argv[0]);
The prototype for this function is in progname.h.
relocate so it gets translated to the run-time situation.
Example:
bindtextdomain (PACKAGE, LOCALEDIR);
becomes:
bindtextdomain (PACKAGE, relocate (LOCALEDIR));
The prototype for this function is in relocatable.h.
set_program_name function can also configure some
additional libraries to relocate files that they access, by defining
corresponding C preprocessor symbols to 1. The libraries for which
this is supported and the corresponding preprocessor symbols are:
DEPENDS_ON_LIBCHARSET
DEPENDS_ON_LIBICONV
DEPENDS_ON_LIBINTL
Defining the symbol for a library makes every program in the package depend on that library, whether the program really uses the library or not, so this feature should be used with some caution.
relocatable-script module. Then, near the beginning of each
shell script that your package installs, add the following:
@relocatable_sh@
if test "@RELOCATABLE@" = yes; then
exec_prefix="@exec_prefix@"
bindir="@bindir@"
orig_installdir="$bindir" # see Makefile.am's *_SCRIPTS variables
func_find_curr_installdir # determine curr_installdir
func_find_prefixes
# Relocate the directory variables that we use.
gettext_dir=`
echo "$gettext_dir/" \
| sed -e "s%^${orig_installprefix}/%${curr_installprefix}/%" \
| sed -e 's,/$,,'`
fi
You must adapt the definition of orig_installdir, depending on
where the script gets installed. Also, at the end, instead of
gettext_dir, transform those variables that you need.
foo_CPPFLAGS = -DINSTALLDIR=\"$(bindir)\"
if RELOCATABLE_VIA_LD
foo_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(bindir)`
endif
If your package (or any package you rely on, e.g. gettext-runtime) will be relocated together with a set of installed shared libraries, then set RELOCATABLE_LIBRARY_PATH to a colon-separated list of those libraries' directories, e.g.
RELOCATABLE_LIBRARY_PATH='$(libdir)'
If your config.h is not in $(top_builddir), then set RELOCATABLE_CONFIG_H_DIR to its directory, e.g.
RELOCATABLE_CONFIG_H_DIR='$(top_builddir)/src'
The func module makes sure that you can use the predefined
identifier __func__ as defined by C99 in your code.
A small example is:
#include <config.h>
#include <stdio.h> /* for printf */
int main (void)
{
printf ("%s: hello world\n", __func__);
}
Note that sizeof cannot be applied to __func__: On SunPRO C
compiler, sizeof __func__ evaluates to 0.
The warnings module allows to regularly build a package with more
GCC warnings than the default warnings emitted by GCC.
It provides the following functionality:
CFLAGS variable at configuration time.
CFLAGS does not work in general, because it may
break autoconfiguration.)
To use this module, you need the following:
gl_WARN_ADD([-Wall], [WARN_CFLAGS])
gl_WARN_ADD([-Wpointer-arith], [WARN_CFLAGS])
WARN_CFLAGS, use it in the
definition of AM_CFLAGS, like this:
AM_CFLAGS = $(WARN_CFLAGS)
Note that the AM_CFLAGS is used in combination with CFLAGS
and before CFLAGS in build rules emitted by Automake. This allows
the user to provide CFLAGS that override the WARN_CFLAGS.
Note that it is a bad idea to use ‘gl_WARN_ADD([-Werror])’. The warnings emitted by GCC depend, to some extent, on the contents of the system header files, on the size and signedness of built-in types, etc. Use of ‘-Werror’ would cause frustration to all users on platforms that the maintainer has not tested before the release. It is better if maintainers use ‘-Werror’ only for themselves (for example, during ‘make distcheck’, as mentioned above).
The manywarnings module allows you to enable as many GCC warnings as
possible for your package. The purpose is to protect against introducing new
code that triggers warnings that weren't already triggered by the existing code
base.
An example use of the module is as follows:
gl_MANYWARN_ALL_GCC([warnings])
# Set up the list of the pointless, undesired warnings.
nw=
nw="$nw -Wsystem-headers" # Don't let system headers trigger warnings
nw="$nw -Wundef" # All compiler preprocessors support #if UNDEF
nw="$nw -Wtraditional" # All compilers nowadays support ANSI C
nw="$nw -Wconversion" # These warnings usually don't point to mistakes.
nw="$nw -Wsign-conversion" # Likewise.
# Enable all GCC warnings not in this list.
gl_MANYWARN_COMPLEMENT([warnings], [$warnings], [$nw])
for w in $warnings; do
gl_WARN_ADD([$w])
done
This module is meant to be used by developers who are not very experienced
regarding the various GCC warning options. In the beginning you will set the
list of undesired warnings (‘nw’ in the example above) to empty, and
compile the package with all possible warnings enabled. The GCC option
-fdiagnostics-show-option, available in GCC 4.1 or newer, helps
understanding which warnings originated from which option. Then you will
go through the list of warnings. You will likely deactivate warnings that
occur often and don't point to mistakes in the code, by adding them to the
‘nw’ variable, then reconfiguring and recompiling. When warnings point
to real mistakes and bugs in the code, you will of course not disable
them.
There are also many GCC warning options which usually don't point to mistakes in the code; these warnings enforce a certain programming style. It is a project management decision whether you want your code to follow any of these styles. Note that some of these programming styles are conflicting. You cannot have them all; you have to choose among them.
When a new version of GCC is released, you can add the new warning options
that it introduces into the gl_MANYWARN_ALL_GCC macro (and submit your
modification to the Gnulib maintainers :-)), and enjoy the benefits of the
new warnings, while adding the undesired ones to the ‘nw’ variable.
For projects written in C or similar languages, running the self-tests
under Valgrind can reveal hard to find memory issues. The
valgrind-tests module searches for Valgrind and declares the
VALGRIND automake variable for use with automake's
TESTS_ENVIRONMENT.
After importing the valgrind-tests module to your project, you
use it by adding the following to the Makefile.am that runs the
self-tests:
TESTS_ENVIRONMENT = $(VALGRIND)
This will run all self-checks under valgrind. This can be wasteful if you have many shell scripts or other non-binaries. Using the Automake parallel-tests feature, this can be avoided by using the following instead:
AUTOMAKE_OPTIONS = parallel-tests
TEST_EXTENSIONS = .pl .sh
LOG_COMPILER = $(VALGRIND)
Then valgrind will only be used for the non-.sh and non-.pl tests. However, this means that binaries invoked through scripts will not be invoked under valgrind, which could be solved by adding the following:
TESTS_ENVIRONMENT = VALGRIND='$(VALGRIND)'
And then modify the shell scripts to invoke the binary prefixed with
$VALGRIND.
Copyright © 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
http://fsf.org/
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
The purpose of this License is to make a manual, textbook, or other functional and useful document free in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.
This License is a kind of “copyleft”, which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.
We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.
This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The “Document”, below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as “you”. You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law.
A “Modified Version” of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.
A “Secondary Section” is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.
The “Invariant Sections” are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none.
The “Cover Texts” are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words.
A “Transparent” copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not “Transparent” is called “Opaque”.
Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only.
The “Title Page” means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, “Title Page” means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.
The “publisher” means any person or entity that distributes copies of the Document to the public.
A section “Entitled XYZ” means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as “Acknowledgements”, “Dedications”, “Endorsements”, or “History”.) To “Preserve the Title” of such a section when you modify the Document means that it remains a section “Entitled XYZ” according to this definition.
The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.
You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.
You may also lend copies, under the same conditions stated above, and you may publicly display copies.
If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.
If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.
It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.
You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:
If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.
You may add a section Entitled “Endorsements”, provided it contains nothing but endorsements of your Modified Version by various parties—for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.
You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.
You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers.
The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.
In the combination, you must combine any sections Entitled “History” in the various original documents, forming one section Entitled “History”; likewise combine any sections Entitled “Acknowledgements”, and any sections Entitled “Dedications”. You must delete all sections Entitled “Endorsements.”
You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.
You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.
A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an “aggregate” if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate.
Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail.
If a section in the Document is Entitled “Acknowledgements”, “Dedications”, or “History”, the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title.
You may not copy, modify, sublicense, or distribute the Document except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, or distribute it is void, and will automatically terminate your rights under this License.
However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice.
Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, receipt of a copy of some or all of the same material does not give you any rights to use it.
The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.
Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License “or any later version” applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation. If the Document specifies that a proxy can decide which future versions of this License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Document.
“Massive Multiauthor Collaboration Site” (or “MMC Site”) means any World Wide Web server that publishes copyrightable works and also provides prominent facilities for anybody to edit those works. A public wiki that anybody can edit is an example of such a server. A “Massive Multiauthor Collaboration” (or “MMC”) contained in the site means any set of copyrightable works thus published on the MMC site.
“CC-BY-SA” means the Creative Commons Attribution-Share Alike 3.0 license published by Creative Commons Corporation, a not-for-profit corporation with a principal place of business in San Francisco, California, as well as future copyleft versions of that license published by that same organization.
“Incorporate” means to publish or republish a Document, in whole or in part, as part of another Document.
An MMC is “eligible for relicensing” if it is licensed under this License, and if all works that were first published under this License somewhere other than this MMC, and subsequently incorporated in whole or in part into the MMC, (1) had no cover texts or invariant sections, and (2) were thus incorporated prior to November 1, 2008.
The operator of an MMC Site may republish an MMC contained in the site under CC-BY-SA on the same site at any time before August 1, 2009, provided the MMC is eligible for relicensing.
To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:
Copyright (C) year your name.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts. A copy of the license is included in the section entitled ``GNU
Free Documentation License''.
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the “with...Texts.” line with this:
with the Invariant Sections being list their titles, with
the Front-Cover Texts being list, and with the Back-Cover Texts
being list.
If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation.
If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.
_exit: _exit_Exit: _Exit_longjmp: _longjmp_setjmp: _setjmp_tolower: _tolower_toupper: _touppera64l: a64labort: abortabs: absAC_LIB_HAVE_LINKFLAGS(name, [dependencies], [includes], [testcode], [missing-message]): Searching for LibrariesAC_LIB_LINKFLAGS(name, [dependencies]): Searching for Librariesaccept: acceptaccept4: accept4access: accessacct: acctacos: acosacosf: acosfacosh: acoshacoshf: acoshfacoshl: acoshlacosl: acosladdmntent: addmntentaddseverity: addseverityadjtime: adjtimeadjtimex: adjtimexadvance: advanceaio_cancel: aio_cancelaio_error: aio_erroraio_fsync: aio_fsyncaio_init: aio_initaio_read: aio_readaio_return: aio_returnaio_suspend: aio_suspendaio_write: aio_writealarm: alarmALLOC: Safe Allocation MacrosALLOC_N: Safe Allocation MacrosALLOC_N_UNINITIALIZED: Safe Allocation Macrosalloca: alloca-optalloca: allocaalphasort: alphasortargp_err_exit_status: argp_err_exit_statusargp_error: argp_errorargp_failure: argp_failureargp_help: argp_helpargp_parse: argp_parseargp_program_bug_address: argp_program_bug_addressargp_program_version: argp_program_versionargp_program_version_hook: argp_program_version_hookargp_state_help: argp_state_helpargp_usage: argp_usageargz_add: argz_addargz_add_sep: argz_add_separgz_append: argz_appendargz_count: argz_countargz_create: argz_createargz_create_sep: argz_create_separgz_delete: argz_deleteargz_extract: argz_extractargz_insert: argz_insertargz_next: argz_nextargz_replace: argz_replaceargz_stringify: argz_stringifyasctime: asctimeasctime_r: asctime_rasin: asinasinf: asinfasinh: asinhasinhf: asinhfasinhl: asinhlasinl: asinlasprintf: asprintfassert: assertatan: atanatan2: atan2atan2f: atan2fatan2l: atan2latanf: atanfatanh: atanhatanhf: atanhfatanhl: atanhlatanl: atanlatexit: atexitatof: atofatoi: atoiatol: atolatoll: atollauthdes_create: authdes_createauthdes_getucred: authdes_getucredauthdes_pk_create: authdes_pk_createauthnone_create: authnone_createauthunix_create: authunix_createauthunix_create_default: authunix_create_defaultbacktrace: backtracebacktrace_symbols: backtrace_symbolsbacktrace_symbols_fd: backtrace_symbols_fdbasename: basenamebcmp: bcmpbcopy: bcopybdflush: bdflushbind: bindbind_textdomain_codeset: bind_textdomain_codesetbindresvport: bindresvportbindtextdomain: bindtextdomainbrk: brkbsd_signal: bsd_signalbsearch: bsearchbswap_16: bswap_16bswap_32: bswap_32bswap_64: bswap_64btowc: btowcbzero: bzerocabs: cabscabsf: cabsfcabsl: cabslcacos: cacoscacosf: cacosfcacosh: cacoshcacoshf: cacoshfcacoshl: cacoshlcacosl: cacoslcalloc: calloccallrpc: callrpccanonicalize_file_name: canonicalize_file_namecapget: capgetcapset: capsetcarg: cargcargf: cargfcargl: carglcasin: casincasinf: casinfcasinh: casinhcasinhf: casinhfcasinhl: casinhlcasinl: casinlcatan: catancatanf: catanfcatanh: catanhcatanhf: catanhfcatanhl: catanhlcatanl: catanlcatclose: catclosecatgets: catgetscatopen: catopencbc_crypt: cbc_cryptcbrt: cbrtcbrtf: cbrtfcbrtl: cbrtlccos: ccosccosf: ccosfccosh: ccoshccoshf: ccoshfccoshl: ccoshlccosl: ccoslceil: ceilceilf: ceilfceill: ceillcexp: cexpcexpf: cexpfcexpl: cexplcfgetispeed: cfgetispeedcfgetospeed: cfgetospeedcfmakeraw: cfmakerawcfree: cfreecfsetispeed: cfsetispeedcfsetospeed: cfsetospeedcfsetspeed: cfsetspeedchdir: chdirchmod: chmodchown: chownchroot: chrootcimag: cimagcimagf: cimagfcimagl: cimaglclearenv: clearenvclearerr: clearerrclearerr_unlocked: clearerr_unlockedclnt_broadcast: clnt_broadcastclnt_create: clnt_createclnt_pcreateerror: clnt_pcreateerrorclnt_perrno: clnt_perrnoclnt_perror: clnt_perrorclnt_spcreateerror: clnt_spcreateerrorclnt_sperrno: clnt_sperrnoclnt_sperror: clnt_sperrorclntraw_create: clntraw_createclnttcp_create: clnttcp_createclntudp_bufcreate: clntudp_bufcreateclntudp_create: clntudp_createclntunix_create: clntunix_createclock: clockclock_getcpuclockid: clock_getcpuclockidclock_getres: clock_getresclock_gettime: clock_gettimeclock_nanosleep: clock_nanosleepclock_settime: clock_settimeclog: clogclog10: clog10clog10f: clog10fclog10l: clog10lclogf: clogfclogl: cloglclone: cloneclose: closeclosedir: closedircloselog: closelogconfstr: confstrconj: conjconjf: conjfconjl: conjlconnect: connectcopysign: copysigncopysignf: copysignfcopysignl: copysignlcos: coscosf: cosfcosh: coshcoshf: coshfcoshl: coshlcosl: coslcpow: cpowcpowf: cpowfcpowl: cpowlcproj: cprojcprojf: cprojfcprojl: cprojlcreal: crealcrealf: crealfcreall: creallcreat: creatcrypt: cryptcrypt_r: crypt_rcsin: csincsinf: csinfcsinh: csinhcsinhf: csinhfcsinhl: csinhlcsinl: csinlcsqrt: csqrtcsqrtf: csqrtfcsqrtl: csqrtlctan: ctanctanf: ctanfctanh: ctanhctanhf: ctanhfctanhl: ctanhlctanl: ctanlctermid: ctermidctime: ctimectime_r: ctime_rcuserid: cuseriddaemon: daemondaylight: daylightdbm_clearerr: dbm_clearerrdbm_close: dbm_closedbm_delete: dbm_deletedbm_error: dbm_errordbm_fetch: dbm_fetchdbm_firstkey: dbm_firstkeydbm_nextkey: dbm_nextkeydbm_open: dbm_opendbm_store: dbm_storedcgettext: dcgettextdcngettext: dcngettextdes_setparity: des_setparitydgettext: dgettextdifftime: difftimedirfd: dirfddirname: dirnamediv: divdl_iterate_phdr: dl_iterate_phdrdladdr: dladdrdladdr1: dladdr1dlclose: dlclosedlerror: dlerrordlinfo: dlinfodlmopen: dlmopendlopen: dlopendlsym: dlsymdlvsym: dlvsymdn_expand: dn_expanddngettext: dngettextdprintf: dprintfdrand48: drand48drand48_r: drand48_rdrem: dremdremf: dremfdreml: dremldup: dupdup2: dup2dup3: dup3duplocale: duplocaledysize: dysizeecb_crypt: ecb_cryptecvt: ecvtecvt_r: ecvt_rencrypt: encryptencrypt_r: encrypt_rendaliasent: endaliasentendfsent: endfsentendgrent: endgrentendhostent: endhostentendmntent: endmntentendnetent: endnetentendnetgrent: endnetgrentendprotoent: endprotoentendpwent: endpwentendrpcent: endrpcentendservent: endserventendspent: endspentendttyent: endttyentendusershell: endusershellendutent: endutentendutxent: endutxentenviron: environenvz_add: envz_addenvz_entry: envz_entryenvz_get: envz_getenvz_merge: envz_mergeenvz_remove: envz_removeenvz_strip: envz_stripepoll_create: epoll_createepoll_ctl: epoll_ctlepoll_wait: epoll_waiterand48: erand48erand48_r: erand48_rerf: erferfc: erfcerfcf: erfcferfcl: erfclerff: erfferfl: erflerr: errerrno: errnoerror: error and prognameerror: errorerror_at_line: error_at_lineerror_message_count: error_message_counterror_one_per_line: error_one_per_lineerror_print_progname: error_print_prognameerrx: errxether_aton: ether_atonether_aton_r: ether_aton_rether_hostton: ether_hosttonether_line: ether_lineether_ntoa: ether_ntoaether_ntoa_r: ether_ntoa_rether_ntohost: ether_ntohosteuidaccess: euidaccessexecl: execlexecle: execleexeclp: execlpexecv: execvexecve: execveexecvp: execvpexecvpe: execvpeexit: exitexp: expexp10: exp10exp10f: exp10fexp10l: exp10lexp2: exp2exp2f: exp2fexp2l: exp2lexpf: expfexpl: explexpm1: expm1expm1f: expm1fexpm1l: expm1lfabs: fabsfabsf: fabsffabsl: fabslfaccessat: faccessatfallocate: fallocatefattach: fattachfchdir: fchdirfchmod: fchmodfchmodat: fchmodatfchown: fchownfchownat: fchownatfclose: fclosefcloseall: fcloseallfcntl: fcntlfcvt: fcvtfcvt_r: fcvt_rFD_CLR: FD_CLRFD_ISSET: FD_ISSETFD_SET: FD_SETFD_ZERO: FD_ZEROfdatasync: fdatasyncfdetach: fdetachfdim: fdimfdimf: fdimffdiml: fdimlfdopen: fdopenfdopendir: fdopendirfeclearexcept: feclearexceptfedisableexcept: fedisableexceptfeenableexcept: feenableexceptfegetenv: fegetenvfegetexcept: fegetexceptfegetexceptflag: fegetexceptflagfegetround: fegetroundfeholdexcept: feholdexceptfeof: feoffeof_unlocked: feof_unlockedferaiseexcept: feraiseexceptferror: ferrorferror_unlocked: ferror_unlockedfesetenv: fesetenvfesetexceptflag: fesetexceptflagfesetround: fesetroundfetestexcept: fetestexceptfeupdateenv: feupdateenvfexecve: fexecvefflush: fflushfflush_unlocked: fflush_unlockedffs: ffsffsl: ffslffsll: ffsllfgetc: fgetcfgetc_unlocked: fgetc_unlockedfgetfilecon: fgetfileconfgetgrent: fgetgrentfgetgrent_r: fgetgrent_rfgetpos: fgetposfgetpwent: fgetpwentfgetpwent_r: fgetpwent_rfgets: fgetsfgets_unlocked: fgets_unlockedfgetspent: fgetspentfgetspent_r: fgetspent_rfgetwc: fgetwcfgetwc_unlocked: fgetwc_unlockedfgetws: fgetwsfgetws_unlocked: fgetws_unlockedfgetxattr: fgetxattrfileno: filenofileno_unlocked: fileno_unlockedfinite: finitefinitef: finiteffinitel: finitelflistxattr: flistxattrflock: flockflockfile: flockfilefloor: floorfloorf: floorffloorl: floorlfma: fmafmaf: fmaffmal: fmalfmax: fmaxfmaxf: fmaxffmaxl: fmaxlfmemopen: fmemopenfmin: fminfminf: fminffminl: fminlfmod: fmodfmodf: fmodffmodl: fmodlfmtmsg: fmtmsgfnmatch: fnmatchfopen: fopenfopencookie: fopencookiefork: forkforkpty: forkptyfpathconf: fpathconffpclassify: fpclassifyfprintf: fprintffputc: fputcfputc_unlocked: fputc_unlockedfputs: fputsfputs_unlocked: fputs_unlockedfputwc: fputwcfputwc_unlocked: fputwc_unlockedfputws: fputwsfputws_unlocked: fputws_unlockedfread: freadfread_unlocked: fread_unlockedFREE: Safe Allocation Macrosfree: freefreeaddrinfo: freeaddrinfofreeifaddrs: freeifaddrsfreelocale: freelocalefremovexattr: fremovexattrfreopen: freopenfrexp: frexpfrexpf: frexpffrexpl: frexplfscanf: fscanffseek: fseekfseeko: fseekofsetpos: fsetposfsetxattr: fsetxattrfstat: fstatfstatat: fstatatfstatfs: fstatfsfstatvfs: fstatvfsfsync: fsyncftell: ftellftello: ftelloftime: ftimeftok: ftokftruncate: ftruncateftrylockfile: ftrylockfilefts_children: fts_childrenfts_close: fts_closefts_open: fts_openfts_read: fts_readfts_set: fts_setftw: ftwfunlockfile: funlockfilefutimens: futimensfutimes: futimesfutimesat: futimesatfwide: fwidefwprintf: fwprintffwrite: fwritefwrite_unlocked: fwrite_unlockedfwscanf: fwscanfgai_strerror: gai_strerrorgamma: gammagammaf: gammafgammal: gammalgcd: gcdgcvt: gcvtget_avphys_pages: get_avphys_pagesget_current_dir_name: get_current_dir_nameget_myaddress: get_myaddressget_nprocs: get_nprocsget_nprocs_conf: get_nprocs_confget_phys_pages: get_phys_pagesgetaddrinfo: getaddrinfogetaliasbyname: getaliasbynamegetaliasbyname_r: getaliasbyname_rgetaliasent: getaliasentgetaliasent_r: getaliasent_rgetc: getcgetc_unlocked: getc_unlockedgetchar: getchargetchar_unlocked: getchar_unlockedgetcontext: getcontextgetcwd: getcwdgetdate: getdategetdate_err: getdate_errgetdate_r: getdate_rgetdelim: getdelimgetdirentries: getdirentriesgetdomainname: getdomainnamegetdtablesize: getdtablesizegetegid: getegidgetenv: getenvgeteuid: geteuidgetfilecon: getfilecongetfsent: getfsentgetfsfile: getfsfilegetfsspec: getfsspecgetgid: getgidgetgrent: getgrentgetgrent_r: getgrent_rgetgrgid: getgrgidgetgrgid_r: getgrgid_rgetgrnam: getgrnamgetgrnam_r: getgrnam_rgetgrouplist: getgrouplistgetgroups: getgroupsgethostbyaddr: gethostbyaddrgethostbyaddr_r: gethostbyaddr_rgethostbyname: gethostbynamegethostbyname2: gethostbyname2gethostbyname2_r: gethostbyname2_rgethostbyname_r: gethostbyname_rgethostent: gethostentgethostent_r: gethostent_rgethostid: gethostidgethostname: gethostnamegetifaddrs: getifaddrsgetipv4sourcefilter: getipv4sourcefiltergetitimer: getitimergetline: getlinegetloadavg: getloadavggetlogin: getlogingetlogin_r: getlogin_rgetmntent: getmntentgetmntent_r: getmntent_rgetmsg: getmsggetnameinfo: getnameinfogetnetbyaddr: getnetbyaddrgetnetbyaddr_r: getnetbyaddr_rgetnetbyname: getnetbynamegetnetbyname_r: getnetbyname_rgetnetent: getnetentgetnetent_r: getnetent_rgetnetgrent: getnetgrentgetnetgrent_r: getnetgrent_rgetnetname: getnetnamegetopt: getoptgetopt_long: getopt_longgetopt_long_only: getopt_long_onlygetpagesize: getpagesizegetpass: getpassgetpeername: getpeernamegetpgid: getpgidgetpgrp: getpgrpgetpid: getpidgetpmsg: getpmsggetppid: getppidgetpriority: getprioritygetprotobyname: getprotobynamegetprotobyname_r: getprotobyname_rgetprotobynumber: getprotobynumbergetprotobynumber_r: getprotobynumber_rgetprotoent: getprotoentgetprotoent_r: getprotoent_rgetpt: getptgetpublickey: getpublickeygetpw: getpwgetpwent: getpwentgetpwent_r: getpwent_rgetpwnam: getpwnamgetpwnam_r: getpwnam_rgetpwuid: getpwuidgetpwuid_r: getpwuid_rgetresgid: getresgidgetresuid: getresuidgetrlimit: getrlimitgetrpcbyname: getrpcbynamegetrpcbyname_r: getrpcbyname_rgetrpcbynumber: getrpcbynumbergetrpcbynumber_r: getrpcbynumber_rgetrpcent: getrpcentgetrpcent_r: getrpcent_rgetrpcport: getrpcportgetrusage: getrusagegets: getsgetsecretkey: getsecretkeygetservbyname: getservbynamegetservbyname_r: getservbyname_rgetservbyport: getservbyportgetservbyport_r: getservbyport_rgetservent: getserventgetservent_r: getservent_rgetsid: getsidgetsockname: getsocknamegetsockopt: getsockoptgetsourcefilter: getsourcefiltergetspent: getspentgetspent_r: getspent_rgetspnam: getspnamgetspnam_r: getspnam_rgetsubopt: getsuboptgettext: gettextgettimeofday: gettimeofdaygetttyent: getttyentgetttynam: getttynamgetuid: getuidgetusershell: getusershellgetutent: getutentgetutent_r: getutent_rgetutid: getutidgetutid_r: getutid_rgetutline: getutlinegetutline_r: getutline_rgetutmp: getutmpgetutmpx: getutmpxgetutxent: getutxentgetutxid: getutxidgetutxline: getutxlinegetw: getwgetwc: getwcgetwc_unlocked: getwc_unlockedgetwchar: getwchargetwchar_unlocked: getwchar_unlockedgetwd: getwdgetxattr: getxattrglob: globglob_pattern_p: glob_pattern_pglobfree: globfreegmtime: gmtimegmtime_r: gmtime_rgnu_dev_major: gnu_dev_majorgnu_dev_makedev: gnu_dev_makedevgnu_dev_minor: gnu_dev_minorgnu_get_libc_release: gnu_get_libc_releasegnu_get_libc_version: gnu_get_libc_versiongnulib-tool: Invoking gnulib-toolgrantpt: grantptgroup_member: group_membergsignal: gsignalh_errno: h_errnohasmntopt: hasmntopthcreate: hcreatehcreate_r: hcreate_rhdestroy: hdestroyhdestroy_r: hdestroy_rherror: herrorhost2netname: host2netnamehsearch: hsearchhsearch_r: hsearch_rhstrerror: hstrerrorhtonl: htonlhtons: htonshypot: hypothypotf: hypotfhypotl: hypotliconv: iconviconv_close: iconv_closeiconv_open: iconv_openif_freenameindex: if_freenameindexif_indextoname: if_indextonameif_nameindex: if_nameindexif_nametoindex: if_nametoindexilogb: ilogbilogbf: ilogbfilogbl: ilogblimaxabs: imaxabsimaxdiv: imaxdivin6addr_any: in6addr_anyin6addr_loopback: in6addr_loopbackindex: indexinet6_option_alloc: inet6_option_allocinet6_option_append: inet6_option_appendinet6_option_find: inet6_option_findinet6_option_init: inet6_option_initinet6_option_next: inet6_option_nextinet6_option_space: inet6_option_spaceinet_addr: inet_addrinet_aton: inet_atoninet_lnaof: inet_lnaofinet_makeaddr: inet_makeaddrinet_net_ntop: inet_net_ntopinet_net_pton: inet_net_ptoninet_neta: inet_netainet_netof: inet_netofinet_network: inet_networkinet_nsap_addr: inet_nsap_addrinet_nsap_ntoa: inet_nsap_ntoainet_ntoa: inet_ntoainet_ntop: inet_ntopinet_pton: inet_ptoninitgroups: initgroupsinitstate: initstateinitstate_r: initstate_rinnetgr: innetgrinsque: insqueint: Safe Allocation Macrosioctl: ioctlioperm: iopermiopl: ioplisalnum: isalnumisalnum_l: isalnum_lisalpha: isalphaisalpha_l: isalpha_lisascii: isasciiisastream: isastreamisatty: isattyisblank: isblankisblank_l: isblank_liscntrl: iscntrliscntrl_l: iscntrl_lisctype: isctypeisdigit: isdigitisdigit_l: isdigit_lisfdtype: isfdtypeisfinite: isfiniteisgraph: isgraphisgraph_l: isgraph_lisgreater: isgreaterisgreaterequal: isgreaterequalisinf: isinfisinff: isinffisinfl: isinflisless: islessislessequal: islessequalislessgreater: islessgreaterislower: islowerislower_l: islower_lisnan: isnanisnanf: isnanfisnanl: isnanlisnormal: isnormalisprint: isprintisprint_l: isprint_lispunct: ispunctispunct_l: ispunct_lisspace: isspaceisspace_l: isspace_lisunordered: isunorderedisupper: isupperisupper_l: isupper_liswalnum: iswalnumiswalnum_l: iswalnum_liswalpha: iswalphaiswalpha_l: iswalpha_liswblank: iswblankiswblank_l: iswblank_liswcntrl: iswcntrliswcntrl_l: iswcntrl_liswctype: iswctypeiswctype_l: iswctype_liswdigit: iswdigitiswdigit_l: iswdigit_liswgraph: iswgraphiswgraph_l: iswgraph_liswlower: iswloweriswlower_l: iswlower_liswprint: iswprintiswprint_l: iswprint_liswpunct: iswpunctiswpunct_l: iswpunct_liswspace: iswspaceiswspace_l: iswspace_liswupper: iswupperiswupper_l: iswupper_liswxdigit: iswxdigitiswxdigit_l: iswxdigit_lisxdigit: isxdigitisxdigit_l: isxdigit_lj0: j0j0f: j0fj0l: j0lj1: j1j1f: j1fj1l: j1ljn: jnjnf: jnfjnl: jnljrand48: jrand48jrand48_r: jrand48_rkey_decryptsession: key_decryptsessionkey_decryptsession_pk: key_decryptsession_pkkey_encryptsession: key_encryptsessionkey_encryptsession_pk: key_encryptsession_pkkey_gendes: key_gendeskey_get_conv: key_get_convkey_secretkey_is_set: key_secretkey_is_setkey_setsecret: key_setsecretkill: killkillpg: killpgklogctl: klogctll64a: l64alabs: labslchmod: lchmodlchown: lchownlckpwdf: lckpwdflcong48: lcong48lcong48_r: lcong48_rldexp: ldexpldexpf: ldexpfldexpl: ldexplldiv: ldivlfind: lfindlgamma: lgammalgamma_r: lgamma_rlgammaf: lgammaflgammaf_r: lgammaf_rlgammal: lgammallgammal_r: lgammal_rlgetfilecon: lgetfileconlgetxattr: lgetxattrlink: linklinkat: linkatlio_listio: lio_listiolisten: listenlistxattr: listxattrllabs: llabslldiv: lldivllistxattr: llistxattrllrint: llrintllrintf: llrintfllrintl: llrintlllround: llroundllroundf: llroundfllroundl: llroundlloc1: loc1loc2: loc2localeconv: localeconvlocaltime: localtimelocaltime_r: localtime_rlockf: lockflocs: locslog: loglog10: log10log10f: log10flog10l: log10llog1p: log1plog1pf: log1pflog1pl: log1pllog2: log2log2f: log2flog2l: log2llogb: logblogbf: logbflogbl: logbllogf: logflogin_tty: login_ttylogl: logllongjmp: longjmplrand48: lrand48lrand48_r: lrand48_rlremovexattr: lremovexattrlrint: lrintlrintf: lrintflrintl: lrintllround: lroundlroundf: lroundflroundl: lroundllsearch: lsearchlseek: lseeklsetxattr: lsetxattrlstat: lstatlutimes: lutimesmadvise: madvisemakecontext: makecontextmallinfo: mallinfomalloc: mallocmalloc_get_state: malloc_get_statemalloc_set_state: malloc_set_statemalloc_stats: malloc_statsmalloc_trim: malloc_trimmalloc_usable_size: malloc_usable_sizemallopt: malloptmatherr: matherrmblen: mblenmbrlen: mbrlenmbrtowc: mbrtowcmbsinit: mbsinitmbsnrtowcs: mbsnrtowcsmbsrtowcs: mbsrtowcsmbstowcs: mbstowcsmbtowc: mbtowcmcheck: mcheckmcheck_check_all: mcheck_check_allmcheck_pedantic: mcheck_pedanticmemalign: memalignmemccpy: memccpymemchr: memchrmemcmp: memcmpmemcpy: memcpymemfrob: memfrobmemmem: memmemmemmove: memmovemempcpy: mempcpymemrchr: memrchrmemset: memsetmincore: mincoremkdir: mkdirmkdirat: mkdiratmkdtemp: mkdtempmkfifo: mkfifomkfifoat: mkfifoatmknod: mknodmknodat: mknodatmkostemp: mkostempmkostemps: mkostempsmkstemp: mkstempmkstemps: mkstempsmktemp: mktempmktime: mktimemlock: mlockmlockall: mlockallmmap: mmapmodf: modfmodff: modffmodfl: modflmonstartup: monstartupmount: mountmprobe: mprobemprotect: mprotectmq_close: mq_closemq_getattr: mq_getattrmq_notify: mq_notifymq_open: mq_openmq_receive: mq_receivemq_send: mq_sendmq_setattr: mq_setattrmq_timedreceive: mq_timedreceivemq_timedsend: mq_timedsendmq_unlink: mq_unlinkmrand48: mrand48mrand48_r: mrand48_rmremap: mremapmsgctl: msgctlmsgget: msggetmsgrcv: msgrcvmsgsnd: msgsndmsync: msyncmtrace: mtracemunlock: munlockmunlockall: munlockallmunmap: munmapmuntrace: muntracenan: nannanf: nanfnanl: nanlnanosleep: nanosleepnearbyint: nearbyintnearbyintf: nearbyintfnearbyintl: nearbyintlnetname2host: netname2hostnetname2user: netname2usernewlocale: newlocalenextafter: nextafternextafterf: nextafterfnextafterl: nextafterlnexttoward: nexttowardnexttowardf: nexttowardfnexttowardl: nexttowardlnftw: nftwngettext: ngettextnice: nicenis_add: nis_addnis_add_entry: nis_add_entrynis_addmember: nis_addmembernis_checkpoint: nis_checkpointnis_clone_object: nis_clone_objectnis_creategroup: nis_creategroupnis_destroy_object: nis_destroy_objectnis_destroygroup: nis_destroygroupnis_dir_cmp: nis_dir_cmpnis_domain_of: nis_domain_ofnis_domain_of_r: nis_domain_of_rnis_first_entry: nis_first_entrynis_freenames: nis_freenamesnis_freeresult: nis_freeresultnis_freeservlist: nis_freeservlistnis_freetags: nis_freetagsnis_getnames: nis_getnamesnis_getservlist: nis_getservlistnis_ismember: nis_ismembernis_leaf_of: nis_leaf_ofnis_leaf_of_r: nis_leaf_of_rnis_lerror: nis_lerrornis_list: nis_listnis_local_directory: nis_local_directorynis_local_group: nis_local_groupnis_local_host: nis_local_hostnis_local_principal: nis_local_principalnis_lookup: nis_lookupnis_mkdir: nis_mkdirnis_modify: nis_modifynis_modify_entry: nis_modify_entrynis_name_of: nis_name_ofnis_name_of_r: nis_name_of_rnis_next_entry: nis_next_entrynis_perror: nis_perrornis_ping: nis_pingnis_print_directory: nis_print_directorynis_print_entry: nis_print_entrynis_print_group: nis_print_groupnis_print_group_entry: nis_print_group_entrynis_print_link: nis_print_linknis_print_object: nis_print_objectnis_print_result: nis_print_resultnis_print_rights: nis_print_rightsnis_print_table: nis_print_tablenis_remove: nis_removenis_remove_entry: nis_remove_entrynis_removemember: nis_removemembernis_rmdir: nis_rmdirnis_servstate: nis_servstatenis_sperrno: nis_sperrnonis_sperror: nis_sperrornis_sperror_r: nis_sperror_rnis_stats: nis_statsnis_verifygroup: nis_verifygroupnl_langinfo: nl_langinfonl_langinfo_l: nl_langinfo_lnrand48: nrand48nrand48_r: nrand48_rntohl: ntohlntohs: ntohsntp_adjtime: ntp_adjtimentp_gettime: ntp_gettimeobstack_alloc_failed_handler: obstack_alloc_failed_handlerobstack_exit_failure: obstack_exit_failureobstack_free: obstack_freeobstack_printf: obstack_printfobstack_vprintf: obstack_vprintfon_exit: on_exitopen: openopen_memstream: open_memstreamopen_wmemstream: open_wmemstreamopenat: openatopendir: opendiropenlog: openlogopenpty: openptyoptarg: optargopterr: opterroptind: optindoptopt: optoptparse_printf_format: parse_printf_formatpathconf: pathconfpause: pausepclose: pcloseperror: perrorpersonality: personalitypipe: pipepipe2: pipe2pmap_getmaps: pmap_getmapspmap_getport: pmap_getportpmap_rmtcall: pmap_rmtcallpmap_set: pmap_setpmap_unset: pmap_unsetpoll: pollpopen: popenposix_fadvise: posix_fadviseposix_fallocate: posix_fallocateposix_madvise: posix_madviseposix_mem_offset: posix_mem_offsetposix_memalign: posix_memalignposix_openpt: posix_openptposix_spawn: posix_spawnposix_spawn_file_actions_addclose: posix_spawn_file_actions_addcloseposix_spawn_file_actions_adddup2: posix_spawn_file_actions_adddup2posix_spawn_file_actions_addopen: posix_spawn_file_actions_addopenposix_spawn_file_actions_destroy: posix_spawn_file_actions_destroyposix_spawn_file_actions_init: posix_spawn_file_actions_initposix_spawnattr_destroy: posix_spawnattr_destroyposix_spawnattr_getflags: posix_spawnattr_getflagsposix_spawnattr_getpgroup: posix_spawnattr_getpgroupposix_spawnattr_getschedparam: posix_spawnattr_getschedparamposix_spawnattr_getschedpolicy: posix_spawnattr_getschedpolicyposix_spawnattr_getsigdefault: posix_spawnattr_getsigdefaultposix_spawnattr_getsigmask: posix_spawnattr_getsigmaskposix_spawnattr_init: posix_spawnattr_initposix_spawnattr_setflags: posix_spawnattr_setflagsposix_spawnattr_setpgroup: posix_spawnattr_setpgroupposix_spawnattr_setschedparam: posix_spawnattr_setschedparamposix_spawnattr_setschedpolicy: posix_spawnattr_setschedpolicyposix_spawnattr_setsigdefault: posix_spawnattr_setsigdefaultposix_spawnattr_setsigmask: posix_spawnattr_setsigmaskposix_spawnp: posix_spawnpposix_trace_attr_destroy: posix_trace_attr_destroyposix_trace_attr_getclockres: posix_trace_attr_getclockresposix_trace_attr_getcreatetime: posix_trace_attr_getcreatetimeposix_trace_attr_getgenversion: posix_trace_attr_getgenversionposix_trace_attr_getinherited: posix_trace_attr_getinheritedposix_trace_attr_getlogfullpolicy: posix_trace_attr_getlogfullpolicyposix_trace_attr_getlogsize: posix_trace_attr_getlogsizeposix_trace_attr_getmaxdatasize: posix_trace_attr_getmaxdatasizeposix_trace_attr_getmaxsystemeventsize: posix_trace_attr_getmaxsystemeventsizeposix_trace_attr_getmaxusereventsize: posix_trace_attr_getmaxusereventsizeposix_trace_attr_getname: posix_trace_attr_getnameposix_trace_attr_getstreamfullpolicy: posix_trace_attr_getstreamfullpolicyposix_trace_attr_getstreamsize: posix_trace_attr_getstreamsizeposix_trace_attr_init: posix_trace_attr_initposix_trace_attr_setinherited: posix_trace_attr_setinheritedposix_trace_attr_setlogfullpolicy: posix_trace_attr_setlogfullpolicyposix_trace_attr_setlogsize: posix_trace_attr_setlogsizeposix_trace_attr_setmaxdatasize: posix_trace_attr_setmaxdatasizeposix_trace_attr_setname: posix_trace_attr_setnameposix_trace_attr_setstreamfullpolicy: posix_trace_attr_setstreamfullpolicyposix_trace_attr_setstreamsize: posix_trace_attr_setstreamsizeposix_trace_clear: posix_trace_clearposix_trace_close: posix_trace_closeposix_trace_create: posix_trace_createposix_trace_create_withlog: posix_trace_create_withlogposix_trace_event: posix_trace_eventposix_trace_eventid_equal: posix_trace_eventid_equalposix_trace_eventid_get_name: posix_trace_eventid_get_nameposix_trace_eventid_open: posix_trace_eventid_openposix_trace_eventset_add: posix_trace_eventset_addposix_trace_eventset_del: posix_trace_eventset_delposix_trace_eventset_empty: posix_trace_eventset_emptyposix_trace_eventset_fill: posix_trace_eventset_fillposix_trace_eventset_ismember: posix_trace_eventset_ismemberposix_trace_eventtypelist_getnext_id: posix_trace_eventtypelist_getnext_idposix_trace_eventtypelist_rewind: posix_trace_eventtypelist_rewindposix_trace_flush: posix_trace_flushposix_trace_get_attr: posix_trace_get_attrposix_trace_get_filter: posix_trace_get_filterposix_trace_get_status: posix_trace_get_statusposix_trace_getnext_event: posix_trace_getnext_eventposix_trace_open: posix_trace_openposix_trace_rewind: posix_trace_rewindposix_trace_set_filter: posix_trace_set_filterposix_trace_shutdown: posix_trace_shutdownposix_trace_start: posix_trace_startposix_trace_stop: posix_trace_stopposix_trace_timedgetnext_event: posix_trace_timedgetnext_eventposix_trace_trid_eventid_open: posix_trace_trid_eventid_openposix_trace_trygetnext_event: posix_trace_trygetnext_eventposix_typed_mem_get_info: posix_typed_mem_get_infoposix_typed_mem_open: posix_typed_mem_openpow: powpow10: pow10pow10f: pow10fpow10l: pow10lpowf: powfpowl: powlprctl: prctlpread: preadprintf: printfprintf_size: printf_sizeprintf_size_info: printf_size_infoprofil: profilprogname: error and prognameprogram_invocation_name: program_invocation_nameprogram_invocation_short_name: program_invocation_short_namepselect: pselectpsiginfo: psiginfopsignal: psignalpthread_atfork: pthread_atforkpthread_attr_destroy: pthread_attr_destroypthread_attr_getdetachstate: pthread_attr_getdetachstatepthread_attr_getguardsize: pthread_attr_getguardsizepthread_attr_getinheritsched: pthread_attr_getinheritschedpthread_attr_getschedparam: pthread_attr_getschedparampthread_attr_getschedpolicy: pthread_attr_getschedpolicypthread_attr_getscope: pthread_attr_getscopepthread_attr_getstack: pthread_attr_getstackpthread_attr_getstackaddr: pthread_attr_getstackaddrpthread_attr_getstacksize: pthread_attr_getstacksizepthread_attr_init: pthread_attr_initpthread_attr_setdetachstate: pthread_attr_setdetachstatepthread_attr_setguardsize: pthread_attr_setguardsizepthread_attr_setinheritsched: pthread_attr_setinheritschedpthread_attr_setschedparam: pthread_attr_setschedparampthread_attr_setschedpolicy: pthread_attr_setschedpolicypthread_attr_setscope: pthread_attr_setscopepthread_attr_setstack: pthread_attr_setstackpthread_attr_setstackaddr: pthread_attr_setstackaddrpthread_attr_setstacksize: pthread_attr_setstacksizepthread_barrier_destroy: pthread_barrier_destroypthread_barrier_init: pthread_barrier_initpthread_barrier_wait: pthread_barrier_waitpthread_barrierattr_destroy: pthread_barrierattr_destroypthread_barrierattr_getpshared: pthread_barrierattr_getpsharedpthread_barrierattr_init: pthread_barrierattr_initpthread_barrierattr_setpshared: pthread_barrierattr_setpsharedpthread_cancel: pthread_cancelpthread_cleanup_pop: pthread_cleanup_poppthread_cleanup_push: pthread_cleanup_pushpthread_cond_broadcast: pthread_cond_broadcastpthread_cond_destroy: pthread_cond_destroypthread_cond_init: pthread_cond_initpthread_cond_signal: pthread_cond_signalpthread_cond_timedwait: pthread_cond_timedwaitpthread_cond_wait: pthread_cond_waitpthread_condattr_destroy: pthread_condattr_destroypthread_condattr_getclock: pthread_condattr_getclockpthread_condattr_getpshared: pthread_condattr_getpsharedpthread_condattr_init: pthread_condattr_initpthread_condattr_setclock: pthread_condattr_setclockpthread_condattr_setpshared: pthread_condattr_setpsharedpthread_create: pthread_createpthread_detach: pthread_detachpthread_equal: pthread_equalpthread_exit: pthread_exitpthread_getattr_np: pthread_getattr_nppthread_getconcurrency: pthread_getconcurrencypthread_getcpuclockid: pthread_getcpuclockidpthread_getschedparam: pthread_getschedparampthread_getspecific: pthread_getspecificpthread_join: pthread_joinpthread_key_create: pthread_key_createpthread_key_delete: pthread_key_deletepthread_kill: pthread_killpthread_kill_other_threads_np: pthread_kill_other_threads_nppthread_mutex_consistent: pthread_mutex_consistentpthread_mutex_destroy: pthread_mutex_destroypthread_mutex_getprioceiling: pthread_mutex_getprioceilingpthread_mutex_init: pthread_mutex_initpthread_mutex_lock: pthread_mutex_lockpthread_mutex_setprioceiling: pthread_mutex_setprioceilingpthread_mutex_timedlock: pthread_mutex_timedlockpthread_mutex_trylock: pthread_mutex_trylockpthread_mutex_unlock: pthread_mutex_unlockpthread_mutexattr_destroy: pthread_mutexattr_destroypthread_mutexattr_getprioceiling: pthread_mutexattr_getprioceilingpthread_mutexattr_getprotocol: pthread_mutexattr_getprotocolpthread_mutexattr_getpshared: pthread_mutexattr_getpsharedpthread_mutexattr_getrobust: pthread_mutexattr_getrobustpthread_mutexattr_gettype: pthread_mutexattr_gettypepthread_mutexattr_init: pthread_mutexattr_initpthread_mutexattr_setprioceiling: pthread_mutexattr_setprioceilingpthread_mutexattr_setprotocol: pthread_mutexattr_setprotocolpthread_mutexattr_setpshared: pthread_mutexattr_setpsharedpthread_mutexattr_setrobust: pthread_mutexattr_setrobustpthread_mutexattr_settype: pthread_mutexattr_settypepthread_once: pthread_oncepthread_rwlock_destroy: pthread_rwlock_destroypthread_rwlock_init: pthread_rwlock_initpthread_rwlock_rdlock: pthread_rwlock_rdlockpthread_rwlock_timedrdlock: pthread_rwlock_timedrdlockpthread_rwlock_timedwrlock: pthread_rwlock_timedwrlockpthread_rwlock_tryrdlock: pthread_rwlock_tryrdlockpthread_rwlock_trywrlock: pthread_rwlock_trywrlockpthread_rwlock_unlock: pthread_rwlock_unlockpthread_rwlock_wrlock: pthread_rwlock_wrlockpthread_rwlockattr_destroy: pthread_rwlockattr_destroypthread_rwlockattr_getkind_np: pthread_rwlockattr_getkind_nppthread_rwlockattr_getpshared: pthread_rwlockattr_getpsharedpthread_rwlockattr_init: pthread_rwlockattr_initpthread_rwlockattr_setkind_np: pthread_rwlockattr_setkind_nppthread_rwlockattr_setpshared: pthread_rwlockattr_setpsharedpthread_self: pthread_selfpthread_setcancelstate: pthread_setcancelstatepthread_setcanceltype: pthread_setcanceltypepthread_setconcurrency: pthread_setconcurrencypthread_setschedparam: pthread_setschedparampthread_setschedprio: pthread_setschedpriopthread_setspecific: pthread_setspecificpthread_sigmask: pthread_sigmaskpthread_spin_destroy: pthread_spin_destroypthread_spin_init: pthread_spin_initpthread_spin_lock: pthread_spin_lockpthread_spin_trylock: pthread_spin_trylockpthread_spin_unlock: pthread_spin_unlockpthread_testcancel: pthread_testcancelpthread_yield: pthread_yieldptrace: ptraceptsname: ptsnameptsname_r: ptsname_rputc: putcputc_unlocked: putc_unlockedputchar: putcharputchar_unlocked: putchar_unlockedputenv: putenvputgrent: putgrentputmsg: putmsgputpmsg: putpmsgputpwent: putpwentputs: putsputspent: putspentpututline: pututlinepututxline: pututxlineputw: putwputwc: putwcputwc_unlocked: putwc_unlockedputwchar: putwcharputwchar_unlocked: putwchar_unlockedpvalloc: pvallocpwrite: pwriteqecvt: qecvtqecvt_r: qecvt_rqfcvt: qfcvtqfcvt_r: qfcvt_rqgcvt: qgcvtqsort: qsortquotactl: quotactlquote: Quotingquote_n: Quotingquotearg: Quotingquotearg_alloc: Quotingraise: raiserand: randrand_r: rand_rrandom: randomrandom_r: random_rrawmemchr: rawmemchrrcmd: rcmdrcmd_af: rcmd_afre_comp: re_compre_compile_fastmap: re_compile_fastmapre_compile_pattern: re_compile_patternre_exec: re_execre_match: re_matchre_match_2: re_match_2re_search: re_searchre_search_2: re_search_2re_set_registers: re_set_registersre_set_syntax: re_set_syntaxre_syntax_options: re_syntax_optionsread: readreadahead: readaheadreaddir: readdirreaddir_r: readdir_rreadlink: readlinkreadlinkat: readlinkatreadv: readvrealloc: reallocREALLOC_N: Safe Allocation Macrosrealpath: realpathreboot: rebootrecv: recvrecvfrom: recvfromrecvmsg: recvmsgregcomp: regcompregerror: regerrorregexec: regexecregfree: regfreeregister_printf_function: register_printf_functionremainder: remainderremainderf: remainderfremainderl: remainderlremap_file_pages: remap_file_pagesremove: removeremovexattr: removexattrremque: remqueremquo: remquoremquof: remquofremquol: remquolrename: renamerenameat: renameatres_init: res_initres_mkquery: res_mkqueryres_query: res_queryres_querydomain: res_querydomainres_search: res_searchrevoke: revokerewind: rewindrewinddir: rewinddirrexec: rexecrexec_af: rexec_afrindex: rindexrint: rintrintf: rintfrintl: rintlrmdir: rmdirround: roundroundf: roundfroundl: roundlrpc_createerr: rpc_createerrrpmatch: rpmatchrresvport: rresvportrresvport_af: rresvport_afrtime: rtimeruserok: ruserokruserok_af: ruserok_afsbrk: sbrkscalb: scalbscalbf: scalbfscalbl: scalblscalbln: scalblnscalblnf: scalblnfscalblnl: scalblnlscalbn: scalbnscalbnf: scalbnfscalbnl: scalbnlscandir: scandirscanf: scanfsched_get_priority_max: sched_get_priority_maxsched_get_priority_min: sched_get_priority_minsched_getaffinity: sched_getaffinitysched_getparam: sched_getparamsched_getscheduler: sched_getschedulersched_rr_get_interval: sched_rr_get_intervalsched_setaffinity: sched_setaffinitysched_setparam: sched_setparamsched_setscheduler: sched_setschedulersched_yield: sched_yieldseed48: seed48seed48_r: seed48_rseekdir: seekdirselect: selectsem_close: sem_closesem_destroy: sem_destroysem_getvalue: sem_getvaluesem_init: sem_initsem_open: sem_opensem_post: sem_postsem_timedwait: sem_timedwaitsem_trywait: sem_trywaitsem_unlink: sem_unlinksem_wait: sem_waitsemctl: semctlsemget: semgetsemop: semopsemtimedop: semtimedopsend: sendsendfile: sendfilesendmsg: sendmsgsendto: sendtosetaliasent: setaliasentsetbuf: setbufsetbuffer: setbuffersetcontext: setcontextsetdomainname: setdomainnamesetegid: setegidsetenv: setenvseteuid: seteuidsetfsent: setfsentsetfsgid: setfsgidsetfsuid: setfsuidsetgid: setgidsetgrent: setgrentsetgroups: setgroupssethostent: sethostentsethostid: sethostidsethostname: sethostnamesetipv4sourcefilter: setipv4sourcefiltersetitimer: setitimersetjmp: setjmpsetkey: setkeysetkey_r: setkey_rsetlinebuf: setlinebufsetlocale: setlocalesetlogin: setloginsetlogmask: setlogmasksetmntent: setmntentsetnetent: setnetentsetnetgrent: setnetgrentsetpgid: setpgidsetpgrp: setpgrpsetpriority: setprioritysetprotoent: setprotoentsetpwent: setpwentsetregid: setregidsetresgid: setresgidsetresuid: setresuidsetreuid: setreuidsetrlimit: setrlimitsetrpcent: setrpcentsetservent: setserventsetsid: setsidsetsockopt: setsockoptsetsourcefilter: setsourcefiltersetspent: setspentsetstate: setstatesetstate_r: setstate_rsettimeofday: settimeofdaysetttyent: setttyentsetuid: setuidsetusershell: setusershellsetutent: setutentsetutxent: setutxentsetvbuf: setvbufsetxattr: setxattrsgetspent: sgetspentsgetspent_r: sgetspent_rshm_open: shm_openshm_unlink: shm_unlinkshmat: shmatshmctl: shmctlshmdt: shmdtshmget: shmgetshutdown: shutdownsigaction: sigactionsigaddset: sigaddsetsigaltstack: sigaltstacksigandset: sigandsetsigblock: sigblocksigdelset: sigdelsetsigemptyset: sigemptysetsigfillset: sigfillsetsiggetmask: siggetmasksighold: sigholdsigignore: sigignoresiginterrupt: siginterruptsigisemptyset: sigisemptysetsigismember: sigismembersiglongjmp: siglongjmpsignal: signalsignbit: signbitsigngam: signgamsignificand: significandsignificandf: significandfsignificandl: significandlsigorset: sigorsetsigpause: sigpausesigpending: sigpendingsigprocmask: sigprocmasksigqueue: sigqueuesigrelse: sigrelsesigreturn: sigreturnsigset: sigsetsigsetjmp: sigsetjmpsigsetmask: sigsetmasksigstack: sigstacksigsuspend: sigsuspendsigtimedwait: sigtimedwaitsigvec: sigvecsigwait: sigwaitsigwaitinfo: sigwaitinfosin: sinsincos: sincossincosf: sincosfsincosl: sincoslsinf: sinfsinh: sinhsinhf: sinhfsinhl: sinhlsinl: sinlsleep: sleepsnprintf: snprintfsockatmark: sockatmarksocket: socketsocketpair: socketpairsprintf: sprintfsprofil: sprofilsqrt: sqrtsqrtf: sqrtfsqrtl: sqrtlsrand: srandsrand48: srand48srand48_r: srand48_rsrandom: srandomsrandom_r: srandom_rsscanf: sscanfssignal: ssignalstat: statstatfs: statfsstatvfs: statvfsstderr: stderrstdin: stdinstdout: stdoutstep: stepstime: stimestpcpy: stpcpystpncpy: stpncpystrcasecmp: strcasecmpstrcasecmp_l: strcasecmp_lstrcasestr: strcasestrstrcat: strcatstrchr: strchrstrchrnul: strchrnulstrcmp: strcmpstrcoll: strcollstrcoll_l: strcoll_lstrcpy: strcpystrcspn: strcspnstrdup: strdupstrerror: strerrorstrerror_l: strerror_lstrerror_r: strerror_rstrfmon: strfmonstrfmon_l: strfmon_lstrfry: strfrystrftime: strftimestrftime_l: strftime_lstrlen: strlenstrncasecmp: strncasecmpstrncasecmp_l: strncasecmp_lstrncat: strncatstrncmp: strncmpstrncpy: strncpystrndup: strndupstrnlen: strnlenstrpbrk: strpbrkstrptime: strptimestrptime_l: strptime_lstrrchr: strrchrstrsep: strsepstrsignal: strsignalstrspn: strspnstrstr: strstrstrtod: strtodstrtod_l: strtod_lstrtof: strtofstrtof_l: strtof_lstrtoimax: strtoimaxstrtok: strtokstrtok_r: strtok_rstrtol: strtolstrtol_l: strtol_lstrtold: strtoldstrtold_l: strtold_lstrtoll: strtollstrtoll_l: strtoll_lstrtoq: strtoqstrtoul: strtoulstrtoul_l: strtoul_lstrtoull: strtoullstrtoull_l: strtoull_lstrtoumax: strtoumaxstrtouq: strtouqstrverscmp: strverscmpstrxfrm: strxfrmstrxfrm_l: strxfrm_lsvc_exit: svc_exitsvc_fdset: svc_fdsetsvc_getreq: svc_getreqsvc_getreq_common: svc_getreq_commonsvc_getreq_poll: svc_getreq_pollsvc_getreqset: svc_getreqsetsvc_max_pollfd: svc_max_pollfdsvc_pollfd: svc_pollfdsvc_register: svc_registersvc_run: svc_runsvc_sendreply: svc_sendreplysvc_unregister: svc_unregistersvcerr_auth: svcerr_authsvcerr_decode: svcerr_decodesvcerr_noproc: svcerr_noprocsvcerr_noprog: svcerr_noprogsvcerr_progvers: svcerr_progverssvcerr_systemerr: svcerr_systemerrsvcerr_weakauth: svcerr_weakauthsvcraw_create: svcraw_createsvctcp_create: svctcp_createsvcudp_bufcreate: svcudp_bufcreatesvcudp_create: svcudp_createsvcunix_create: svcunix_createswab: swabswapcontext: swapcontextswapoff: swapoffswapon: swaponswprintf: swprintfswscanf: swscanfsymlink: symlinksymlinkat: symlinkatsync: syncsys_errlist: sys_errlistsys_nerr: sys_nerrsys_siglist: sys_siglistsyscall: syscallsysconf: sysconfsysctl: sysctlsysinfo: sysinfosyslog: syslogsystem: systemsysv_signal: sysv_signaltan: tantanf: tanftanh: tanhtanhf: tanhftanhl: tanhltanl: tanltcdrain: tcdraintcflow: tcflowtcflush: tcflushtcgetattr: tcgetattrtcgetpgrp: tcgetpgrptcgetsid: tcgetsidtcsendbreak: tcsendbreaktcsetattr: tcsetattrtcsetpgrp: tcsetpgrptdelete: tdeletetdestroy: tdestroytelldir: telldirtempnam: tempnamtextdomain: textdomaintfind: tfindtgamma: tgammatgammaf: tgammaftgammal: tgammaltime: timetimegm: timegmtimelocal: timelocaltimer_create: timer_createtimer_delete: timer_deletetimer_getoverrun: timer_getoverruntimer_gettime: timer_gettimetimer_settime: timer_settimetimes: timestimezone: timezonetmpfile: tmpfiletmpnam: tmpnamtmpnam_r: tmpnam_rtoascii: toasciitolower: tolowertolower_l: tolower_ltoupper: touppertoupper_l: toupper_ltowctrans: towctranstowctrans_l: towctrans_ltowlower: towlowertowlower_l: towlower_ltowupper: towuppertowupper_l: towupper_ltrunc: trunctruncate: truncatetruncf: truncftruncl: truncltsearch: tsearchttyname: ttynamettyname_r: ttyname_rttyslot: ttyslottwalk: twalktzname: tznametzset: tzsetualarm: ualarmulckpwdf: ulckpwdfulimit: ulimitumask: umaskumount: umountumount2: umount2uname: unameungetc: ungetcungetwc: ungetwcunlink: unlinkunlinkat: unlinkatunlockpt: unlockptunsetenv: unsetenvupdwtmp: updwtmpupdwtmpx: updwtmpxuselocale: uselocaleuser2netname: user2netnameusleep: usleepustat: ustatutime: utimeutimensat: utimensatutimes: utimesutmpname: utmpnameutmpxname: utmpxnameva_arg: va_argva_copy: va_copyva_end: va_endva_start: va_startvalloc: vallocvasprintf: vasprintfvdprintf: vdprintfverr: verrverrx: verrxversionsort: versionsortvfork: vforkvfprintf: vfprintfvfscanf: vfscanfvfwprintf: vfwprintfvfwscanf: vfwscanfvhangup: vhangupvlimit: vlimitvm86: vm86void: Safe Allocation Macrosvprintf: vprintfvscanf: vscanfvsnprintf: vsnprintfvsprintf: vsprintfvsscanf: vsscanfvswprintf: vswprintfvswscanf: vswscanfvsyslog: vsyslogvtimes: vtimesvwarn: vwarnvwarnx: vwarnxvwprintf: vwprintfvwscanf: vwscanfwait: waitwait3: wait3wait4: wait4waitid: waitidwaitpid: waitpidwarn: warnwarnx: warnxwcpcpy: wcpcpywcpncpy: wcpncpywcrtomb: wcrtombwcscasecmp: wcscasecmpwcscasecmp_l: wcscasecmp_lwcscat: wcscatwcschr: wcschrwcschrnul: wcschrnulwcscmp: wcscmpwcscoll: wcscollwcscoll_l: wcscoll_lwcscpy: wcscpywcscspn: wcscspnwcsdup: wcsdupwcsftime: wcsftimewcsftime_l: wcsftime_lwcslen: wcslenwcsncasecmp: wcsncasecmpwcsncasecmp_l: wcsncasecmp_lwcsncat: wcsncatwcsncmp: wcsncmpwcsncpy: wcsncpywcsnlen: wcsnlenwcsnrtombs: wcsnrtombswcspbrk: wcspbrkwcsrchr: wcsrchrwcsrtombs: wcsrtombswcsspn: wcsspnwcsstr: wcsstrwcstod: wcstodwcstod_l: wcstod_lwcstof: wcstofwcstof_l: wcstof_lwcstoimax: wcstoimaxwcstok: wcstokwcstol: wcstolwcstol_l: wcstol_lwcstold: wcstoldwcstold_l: wcstold_lwcstoll: wcstollwcstoll_l: wcstoll_lwcstombs: wcstombswcstoq: wcstoqwcstoul: wcstoulwcstoul_l: wcstoul_lwcstoull: wcstoullwcstoull_l: wcstoull_lwcstoumax: wcstoumaxwcstouq: wcstouqwcswcs: wcswcswcswidth: wcswidthwcsxfrm: wcsxfrmwcsxfrm_l: wcsxfrm_lwctob: wctobwctomb: wctombwctrans: wctranswctrans_l: wctrans_lwctype: wctypewctype_l: wctype_lwcwidth: wcwidthwmemchr: wmemchrwmemcmp: wmemcmpwmemcpy: wmemcpywmemmove: wmemmovewmempcpy: wmempcpywmemset: wmemsetwordexp: wordexpwordfree: wordfreewprintf: wprintfwrite: writewritev: writevwscanf: wscanfxdr_array: xdr_arrayxdr_authunix_parms: xdr_authunix_parmsxdr_bool: xdr_boolxdr_bytes: xdr_bytesxdr_callhdr: xdr_callhdrxdr_callmsg: xdr_callmsgxdr_cback_data: xdr_cback_dataxdr_char: xdr_charxdr_cryptkeyarg: xdr_cryptkeyargxdr_cryptkeyarg2: xdr_cryptkeyarg2xdr_cryptkeyres: xdr_cryptkeyresxdr_des_block: xdr_des_blockxdr_domainname: xdr_domainnamexdr_double: xdr_doublexdr_enum: xdr_enumxdr_float: xdr_floatxdr_free: xdr_freexdr_getcredres: xdr_getcredresxdr_hyper: xdr_hyperxdr_int: xdr_intxdr_int16_t: xdr_int16_txdr_int32_t: xdr_int32_txdr_int64_t: xdr_int64_txdr_int8_t: xdr_int8_txdr_key_netstarg: xdr_key_netstargxdr_key_netstres: xdr_key_netstresxdr_keybuf: xdr_keybufxdr_keydat: xdr_keydatxdr_keystatus: xdr_keystatusxdr_long: xdr_longxdr_longlong_t: xdr_longlong_txdr_mapname: xdr_mapnamexdr_netnamestr: xdr_netnamestrxdr_netobj: xdr_netobjxdr_obj_p: xdr_obj_pxdr_opaque: xdr_opaquexdr_opaque_auth: xdr_opaque_authxdr_peername: xdr_peernamexdr_pmap: xdr_pmapxdr_pmaplist: xdr_pmaplistxdr_pointer: xdr_pointerxdr_quad_t: xdr_quad_txdr_reference: xdr_referencexdr_replymsg: xdr_replymsgxdr_rmtcall_args: xdr_rmtcall_argsxdr_rmtcallres: xdr_rmtcallresxdr_short: xdr_shortxdr_sizeof: xdr_sizeofxdr_string: xdr_stringxdr_u_char: xdr_u_charxdr_u_hyper: xdr_u_hyperxdr_u_int: xdr_u_intxdr_u_long: xdr_u_longxdr_u_longlong_t: xdr_u_longlong_txdr_u_quad_t: xdr_u_quad_txdr_u_short: xdr_u_shortxdr_uint16_t: xdr_uint16_txdr_uint32_t: xdr_uint32_txdr_uint64_t: xdr_uint64_txdr_uint8_t: xdr_uint8_txdr_union: xdr_unionxdr_unixcred: xdr_unixcredxdr_valdat: xdr_valdatxdr_vector: xdr_vectorxdr_void: xdr_voidxdr_wrapstring: xdr_wrapstringxdr_yp_buf: xdr_yp_bufxdr_ypall: xdr_ypallxdr_ypbind_binding: xdr_ypbind_bindingxdr_ypbind_resp: xdr_ypbind_respxdr_ypbind_resptype: xdr_ypbind_resptypexdr_ypbind_setdom: xdr_ypbind_setdomxdr_ypdelete_args: xdr_ypdelete_argsxdr_ypmap_parms: xdr_ypmap_parmsxdr_ypmaplist: xdr_ypmaplistxdr_yppush_status: xdr_yppush_statusxdr_yppushresp_xfr: xdr_yppushresp_xfrxdr_ypreq_key: xdr_ypreq_keyxdr_ypreq_nokey: xdr_ypreq_nokeyxdr_ypreq_xfr: xdr_ypreq_xfrxdr_ypresp_all: xdr_ypresp_allxdr_ypresp_key_val: xdr_ypresp_key_valxdr_ypresp_maplist: xdr_ypresp_maplistxdr_ypresp_master: xdr_ypresp_masterxdr_ypresp_order: xdr_ypresp_orderxdr_ypresp_val: xdr_ypresp_valxdr_ypresp_xfr: xdr_ypresp_xfrxdr_ypstat: xdr_ypstatxdr_ypupdate_args: xdr_ypupdate_argsxdr_ypxfrstat: xdr_ypxfrstatxdrmem_create: xdrmem_createxdrrec_create: xdrrec_createxdrrec_endofrecord: xdrrec_endofrecordxdrrec_eof: xdrrec_eofxdrrec_skiprecord: xdrrec_skiprecordxdrstdio_create: xdrstdio_createxprt_register: xprt_registerxprt_unregister: xprt_unregistery0: y0y0f: y0fy0l: y0ly1: y1y1f: y1fy1l: y1lyn: ynynf: ynfynl: ynlyp_all: yp_allyp_bind: yp_bindyp_first: yp_firstyp_get_default_domain: yp_get_default_domainyp_master: yp_masteryp_match: yp_matchyp_next: yp_nextyp_order: yp_orderyp_unbind: yp_unbindyp_update: yp_updateypbinderr_string: ypbinderr_stringyperr_string: yperr_stringypprot_err: ypprot_err