+2008-12-14 Bruno Haible <bruno@clisp.org>
+
+ Update doc for POSIX:2008.
+ * doc/pastposix-functions/bcmp.texi: Renamed from
+ doc/posix-functions/bcmp.texi.
+ * doc/pastposix-functions/bcopy.texi: Renamed from
+ doc/posix-functions/bcopy.texi.
+ * doc/pastposix-functions/bsd_signal.texi: Renamed from
+ doc/posix-functions/bsd_signal.texi.
+ * doc/pastposix-functions/bzero.texi: Renamed from
+ doc/posix-functions/bzero.texi.
+ * doc/pastposix-functions/ecvt.texi: Renamed from
+ doc/posix-functions/ecvt.texi.
+ * doc/pastposix-functions/fcvt.texi: Renamed from
+ doc/posix-functions/fcvt.texi.
+ * doc/pastposix-functions/ftime.texi: Renamed from
+ doc/posix-functions/ftime.texi.
+ * doc/pastposix-functions/gcvt.texi: Renamed from
+ doc/posix-functions/gcvt.texi.
+ * doc/pastposix-functions/getcontext.texi: Renamed from
+ doc/posix-functions/getcontext.texi.
+ * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
+ doc/posix-functions/gethostbyaddr.texi.
+ * doc/pastposix-functions/gethostbyname.texi: Renamed from
+ doc/posix-functions/gethostbyname.texi.
+ * doc/pastposix-functions/getwd.texi: Renamed from
+ doc/posix-functions/getwd.texi.
+ * doc/pastposix-functions/h_errno.texi: Renamed from
+ doc/posix-functions/h_errno.texi.
+ * doc/pastposix-functions/index.texi: Renamed from
+ doc/posix-functions/index.texi.
+ * doc/pastposix-functions/makecontext.texi: Renamed from
+ doc/posix-functions/makecontext.texi.
+ * doc/pastposix-functions/mktemp.texi: Renamed from
+ doc/posix-functions/mktemp.texi.
+ * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
+ doc/posix-functions/pthread_attr_getstackaddr.texi.
+ * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
+ doc/posix-functions/pthread_attr_setstackaddr.texi.
+ * doc/pastposix-functions/rindex.texi: Renamed from
+ doc/posix-functions/rindex.texi.
+ * doc/pastposix-functions/scalb.texi: Renamed from
+ doc/posix-functions/scalb.texi.
+ * doc/pastposix-functions/setcontext.texi: Renamed from
+ doc/posix-functions/setcontext.texi.
+ * doc/pastposix-functions/swapcontext.texi: Renamed from
+ doc/posix-functions/swapcontext.texi.
+ * doc/pastposix-functions/ualarm.texi: Renamed from
+ doc/posix-functions/ualarm.texi.
+ * doc/pastposix-functions/usleep.texi: Renamed from
+ doc/posix-functions/usleep.texi.
+ * doc/pastposix-functions/vfork.texi: Renamed from
+ doc/posix-functions/vfork.texi.
+ * doc/pastposix-functions/wcswcs.texi: Renamed from
+ doc/posix-functions/wcswcs.texi.
+ * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
+ (Function Substitutes): Update.
+
2008-12-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
* POSIX Substitutes Library:: Building as a separate substitutes library.
* Header File Substitutes:: Overriding system headers.
* Function Substitutes:: Replacing system functions.
+* Legacy Function Substitutes:: Replacing system functions.
* Glibc Header File Substitutes:: Overriding system headers.
* Glibc Function Substitutes:: Replacing system functions.
* Particular Modules:: Documentation of individual modules.
* atol::
* atoll::
* basename::
-* bcmp::
-* bcopy::
* bind::
-* bsd_signal::
* bsearch::
* btowc::
-* bzero::
* cabs::
* cabsf::
* cabsl::
* drand48::
* dup::
* dup2::
-* ecvt::
* encrypt::
* endgrent::
* endhostent::
* fchown::
* fclose::
* fcntl::
-* fcvt::
* fdatasync::
* fdetach::
* fdim::
* fsync::
* ftell::
* ftello::
-* ftime::
* ftok::
* ftruncate::
* ftrylockfile::
* fwrite::
* fwscanf::
* gai_strerror::
-* gcvt::
* getaddrinfo::
* getc::
* getc_unlocked::
* getchar::
* getchar_unlocked::
-* getcontext::
* getcwd::
* getdate::
* getdelim::
* getgrnam::
* getgrnam_r::
* getgroups::
-* gethostbyaddr::
-* gethostbyname::
* gethostent::
* gethostid::
* gethostname::
* getutxline::
* getwc::
* getwchar::
-* getwd::
* glob::
* globfree::
* gmtime::
* gmtime_r::
* grantpt::
-* h_errno::
* hcreate::
* hdestroy::
* hsearch::
* ilogbl::
* imaxabs::
* imaxdiv::
-* index::
* inet_addr::
* inet_ntoa::
* inet_ntop::
* lsearch::
* lseek::
* lstat::
-* makecontext::
* malloc::
* mblen::
* mbrlen::
* mkfifo::
* mknod::
* mkstemp::
-* mktemp::
* mktime::
* mlock::
* mlockall::
* pthread_attr_getschedpolicy::
* pthread_attr_getscope::
* pthread_attr_getstack::
-* pthread_attr_getstackaddr::
* pthread_attr_getstacksize::
* pthread_attr_init::
* pthread_attr_setdetachstate::
* pthread_attr_setschedpolicy::
* pthread_attr_setscope::
* pthread_attr_setstack::
-* pthread_attr_setstackaddr::
* pthread_attr_setstacksize::
* pthread_barrier_destroy::
* pthread_barrier_init::
* rename::
* rewind::
* rewinddir::
-* rindex::
* rint::
* rintf::
* rintl::
* round::
* roundf::
* roundl::
-* scalb::
* scalbln::
* scalblnf::
* scalblnl::
* sendmsg::
* sendto::
* setbuf::
-* setcontext::
* setegid::
* setenv::
* seteuid::
* strtoumax::
* strxfrm::
* swab::
-* swapcontext::
* swprintf::
* swscanf::
* symlink::
* twalk::
* tzname::
* tzset::
-* ualarm::
* ulimit::
* umask::
* uname::
* unlink::
* unlockpt::
* unsetenv::
-* usleep::
* utime::
* utimes::
* va_arg::
* va_copy::
* va_end::
* va_start::
-* vfork::
* vfprintf::
* vfscanf::
* vfwprintf::
* wcstoul::
* wcstoull::
* wcstoumax::
-* wcswcs::
* wcswidth::
* wcsxfrm::
* wctob::
@include posix-functions/atol.texi
@include posix-functions/atoll.texi
@include posix-functions/basename.texi
-@include posix-functions/bcmp.texi
-@include posix-functions/bcopy.texi
@include posix-functions/bind.texi
-@include posix-functions/bsd_signal.texi
@include posix-functions/bsearch.texi
@include posix-functions/btowc.texi
-@include posix-functions/bzero.texi
@include posix-functions/cabs.texi
@include posix-functions/cabsf.texi
@include posix-functions/cabsl.texi
@include posix-functions/drand48.texi
@include posix-functions/dup.texi
@include posix-functions/dup2.texi
-@include posix-functions/ecvt.texi
@include posix-functions/encrypt.texi
@include posix-functions/endgrent.texi
@include posix-functions/endhostent.texi
@include posix-functions/fchown.texi
@include posix-functions/fclose.texi
@include posix-functions/fcntl.texi
-@include posix-functions/fcvt.texi
@include posix-functions/fdatasync.texi
@include posix-functions/fdetach.texi
@include posix-functions/fdim.texi
@include posix-functions/fsync.texi
@include posix-functions/ftell.texi
@include posix-functions/ftello.texi
-@include posix-functions/ftime.texi
@include posix-functions/ftok.texi
@include posix-functions/ftruncate.texi
@include posix-functions/ftrylockfile.texi
@include posix-functions/fwrite.texi
@include posix-functions/fwscanf.texi
@include posix-functions/gai_strerror.texi
-@include posix-functions/gcvt.texi
@include posix-functions/getaddrinfo.texi
@include posix-functions/getc.texi
@include posix-functions/getc_unlocked.texi
@include posix-functions/getchar.texi
@include posix-functions/getchar_unlocked.texi
-@include posix-functions/getcontext.texi
@include posix-functions/getcwd.texi
@include posix-functions/getdate.texi
@include posix-functions/getdelim.texi
@include posix-functions/getgrnam.texi
@include posix-functions/getgrnam_r.texi
@include posix-functions/getgroups.texi
-@include posix-functions/gethostbyaddr.texi
-@include posix-functions/gethostbyname.texi
@include posix-functions/gethostent.texi
@include posix-functions/gethostid.texi
@include posix-functions/gethostname.texi
@include posix-functions/getutxline.texi
@include posix-functions/getwc.texi
@include posix-functions/getwchar.texi
-@include posix-functions/getwd.texi
@include posix-functions/glob.texi
@include posix-functions/globfree.texi
@include posix-functions/gmtime.texi
@include posix-functions/gmtime_r.texi
@include posix-functions/grantpt.texi
-@include posix-functions/h_errno.texi
@include posix-functions/hcreate.texi
@include posix-functions/hdestroy.texi
@include posix-functions/hsearch.texi
@include posix-functions/ilogbl.texi
@include posix-functions/imaxabs.texi
@include posix-functions/imaxdiv.texi
-@include posix-functions/index.texi
@include posix-functions/inet_addr.texi
@include posix-functions/inet_ntoa.texi
@include posix-functions/inet_ntop.texi
@include posix-functions/lsearch.texi
@include posix-functions/lseek.texi
@include posix-functions/lstat.texi
-@include posix-functions/makecontext.texi
@include posix-functions/malloc.texi
@include posix-functions/mblen.texi
@include posix-functions/mbrlen.texi
@include posix-functions/mkfifo.texi
@include posix-functions/mknod.texi
@include posix-functions/mkstemp.texi
-@include posix-functions/mktemp.texi
@include posix-functions/mktime.texi
@include posix-functions/mlock.texi
@include posix-functions/mlockall.texi
@include posix-functions/pthread_attr_getschedpolicy.texi
@include posix-functions/pthread_attr_getscope.texi
@include posix-functions/pthread_attr_getstack.texi
-@include posix-functions/pthread_attr_getstackaddr.texi
@include posix-functions/pthread_attr_getstacksize.texi
@include posix-functions/pthread_attr_init.texi
@include posix-functions/pthread_attr_setdetachstate.texi
@include posix-functions/pthread_attr_setschedpolicy.texi
@include posix-functions/pthread_attr_setscope.texi
@include posix-functions/pthread_attr_setstack.texi
-@include posix-functions/pthread_attr_setstackaddr.texi
@include posix-functions/pthread_attr_setstacksize.texi
@include posix-functions/pthread_barrier_destroy.texi
@include posix-functions/pthread_barrier_init.texi
@include posix-functions/rename.texi
@include posix-functions/rewind.texi
@include posix-functions/rewinddir.texi
-@include posix-functions/rindex.texi
@include posix-functions/rint.texi
@include posix-functions/rintf.texi
@include posix-functions/rintl.texi
@include posix-functions/round.texi
@include posix-functions/roundf.texi
@include posix-functions/roundl.texi
-@include posix-functions/scalb.texi
@include posix-functions/scalbln.texi
@include posix-functions/scalblnf.texi
@include posix-functions/scalblnl.texi
@include posix-functions/sendmsg.texi
@include posix-functions/sendto.texi
@include posix-functions/setbuf.texi
-@include posix-functions/setcontext.texi
@include posix-functions/setegid.texi
@include posix-functions/setenv.texi
@include posix-functions/seteuid.texi
@include posix-functions/strtoumax.texi
@include posix-functions/strxfrm.texi
@include posix-functions/swab.texi
-@include posix-functions/swapcontext.texi
@include posix-functions/swprintf.texi
@include posix-functions/swscanf.texi
@include posix-functions/symlink.texi
@include posix-functions/twalk.texi
@include posix-functions/tzname.texi
@include posix-functions/tzset.texi
-@include posix-functions/ualarm.texi
@include posix-functions/ulimit.texi
@include posix-functions/umask.texi
@include posix-functions/uname.texi
@include posix-functions/unlink.texi
@include posix-functions/unlockpt.texi
@include posix-functions/unsetenv.texi
-@include posix-functions/usleep.texi
@include posix-functions/utime.texi
@include posix-functions/utimes.texi
@include posix-functions/va_arg.texi
@include posix-functions/va_copy.texi
@include posix-functions/va_end.texi
@include posix-functions/va_start.texi
-@include posix-functions/vfork.texi
@include posix-functions/vfprintf.texi
@include posix-functions/vfscanf.texi
@include posix-functions/vfwprintf.texi
@include posix-functions/wcstoul.texi
@include posix-functions/wcstoull.texi
@include posix-functions/wcstoumax.texi
-@include posix-functions/wcswcs.texi
@include posix-functions/wcswidth.texi
@include posix-functions/wcsxfrm.texi
@include posix-functions/wctob.texi
@include posix-functions/y1.texi
@include posix-functions/yn.texi
+@node Legacy Function Substitutes
+@chapter Past POSIX Function Substitutes
+
+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.
+
+@nosuchmodulenote function
+
+@menu
+* 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::
+@end menu
+
+@include pastposix-functions/bcmp.texi
+@include pastposix-functions/bcopy.texi
+@include pastposix-functions/bsd_signal.texi
+@include pastposix-functions/bzero.texi
+@include pastposix-functions/ecvt.texi
+@include pastposix-functions/fcvt.texi
+@include pastposix-functions/ftime.texi
+@include pastposix-functions/gcvt.texi
+@include pastposix-functions/getcontext.texi
+@include pastposix-functions/gethostbyaddr.texi
+@include pastposix-functions/gethostbyname.texi
+@include pastposix-functions/getwd.texi
+@include pastposix-functions/h_errno.texi
+@include pastposix-functions/index.texi
+@include pastposix-functions/makecontext.texi
+@include pastposix-functions/mktemp.texi
+@include pastposix-functions/pthread_attr_getstackaddr.texi
+@include pastposix-functions/pthread_attr_setstackaddr.texi
+@include pastposix-functions/rindex.texi
+@include pastposix-functions/scalb.texi
+@include pastposix-functions/setcontext.texi
+@include pastposix-functions/swapcontext.texi
+@include pastposix-functions/ualarm.texi
+@include pastposix-functions/usleep.texi
+@include pastposix-functions/vfork.texi
+@include pastposix-functions/wcswcs.texi
+
@node Glibc Header File Substitutes
@chapter Glibc Header File Substitutes
--- /dev/null
+@node bcmp
+@section @code{bcmp}
+@findex bcmp
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/bcmp.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+Solaris 2.4, mingw.
+@item
+This function is marked as ``legacy'' in POSIX. Better use @code{memcmp}
+instead.
+@end itemize
--- /dev/null
+@node bcopy
+@section @code{bcopy}
+@findex bcopy
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/bcopy.html}
+
+Gnulib module: bcopy
+
+Portability problems fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+Solaris 2.4, mingw.
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is marked as ``legacy'' in POSIX. Better use @code{memcpy}
+or @code{memmove} instead.
+@end itemize
--- /dev/null
+@node bsd_signal
+@section @code{bsd_signal}
+@findex bsd_signal
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/bsd_signal.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, IRIX 5.3, Solaris 2.5.1, Cygwin, mingw, Interix 3.5.
+@end itemize
--- /dev/null
+@node bzero
+@section @code{bzero}
+@findex bzero
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/bzero.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+Solaris 2.4, mingw.
+@item
+This function is marked as ``legacy'' in POSIX. Better use @code{memset}
+instead.
+@end itemize
--- /dev/null
+@node ecvt
+@section @code{ecvt}
+@findex ecvt
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/ecvt.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+FreeBSD 6.0, NetBSD 3.0.
+@item
+This function is marked as ``legacy'' in POSIX. Better use @code{sprintf}
+instead.
+@end itemize
--- /dev/null
+@node fcvt
+@section @code{fcvt}
+@findex fcvt
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/fcvt.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+FreeBSD 6.0, NetBSD 3.0.
+@item
+This function is marked as ``legacy'' in POSIX. Better use @code{sprintf}
+instead.
+@end itemize
--- /dev/null
+@node ftime
+@section @code{ftime}
+@findex ftime
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/ftime.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, OpenBSD 3.8, IRIX 5.3, Solaris 2.4.
+@item
+This function is marked as ``legacy'' in POSIX. Better use @code{gettimeofday}
+or @code{clock_gettime} instead, and use @code{ftime} only as a fallback for
+portability to Windows platforms.
+@end itemize
--- /dev/null
+@node gcvt
+@section @code{gcvt}
+@findex gcvt
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/gcvt.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0.
+@item
+This function is marked as ``legacy'' in POSIX. Better use @code{sprintf}
+instead.
+@end itemize
--- /dev/null
+@node getcontext
+@section @code{getcontext}
+@findex getcontext
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/getcontext.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+MacOS X 10.3, OpenBSD 3.8, Cygwin, mingw, Interix 3.5, BeOS.
+@end itemize
--- /dev/null
+@node gethostbyaddr
+@section @code{gethostbyaddr}
+@findex gethostbyaddr
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/gethostbyaddr.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+mingw.
+@end itemize
--- /dev/null
+@node gethostbyname
+@section @code{gethostbyname}
+@findex gethostbyname
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/gethostbyname.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+mingw.
+@end itemize
--- /dev/null
+@node getwd
+@section @code{getwd}
+@findex getwd
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/getwd.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+Solaris 2.4, mingw, BeOS.
+@item
+The size of the buffer required for this function is not a compile-time
+constant. Also, the function truncates a result that would be larger than
+the minimum buffer size. For these reasons, this function is marked as
+``legacy'' in POSIX. Better use the @code{getcwd} function instead.
+@end itemize
--- /dev/null
+@node h_errno
+@section @code{h_errno}
+@findex h_errno
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/h_errno.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+IRIX 6.5, OSF/1 5.1, Cygwin, mingw, Interix 3.5.
+@end itemize
--- /dev/null
+@node index
+@section @code{index}
+@findex index
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/index.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+Solaris 2.4, mingw.
+@item
+This function is marked as ``legacy'' in POSIX. Better use @code{strchr}
+instead.
+@end itemize
--- /dev/null
+@node makecontext
+@section @code{makecontext}
+@findex makecontext
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/makecontext.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+MacOS X 10.3, OpenBSD 3.8, Cygwin, mingw, Interix 3.5, BeOS.
+@end itemize
--- /dev/null
+@node mktemp
+@section @code{mktemp}
+@findex mktemp
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/mktemp.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is not appropriate for creating temporary files. (It has
+security risks.) Therefore it is marked as ``legacy'' in POSIX. Better use
+@code{mkstemp} instead.
+@end itemize
--- /dev/null
+@node pthread_attr_getstackaddr
+@section @code{pthread_attr_getstackaddr}
+@findex pthread_attr_getstackaddr
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/pthread_attr_getstackaddr.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+HP-UX 11, Solaris 2.4, Cygwin, mingw, BeOS.
+@end itemize
--- /dev/null
+@node pthread_attr_setstackaddr
+@section @code{pthread_attr_setstackaddr}
+@findex pthread_attr_setstackaddr
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/pthread_attr_setstackaddr.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+HP-UX 11, IRIX 5.3, Solaris 2.4, Cygwin, mingw, BeOS.
+@end itemize
--- /dev/null
+@node rindex
+@section @code{rindex}
+@findex rindex
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/rindex.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+Solaris 2.4, mingw.
+@item
+This function is marked as ``legacy'' in POSIX. Better use @code{strrchr}
+instead.
+@end itemize
--- /dev/null
+@node scalb
+@section @code{scalb}
+@findex scalb
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/scalb.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@end itemize
--- /dev/null
+@node setcontext
+@section @code{setcontext}
+@findex setcontext
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/setcontext.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+MacOS X 10.3, OpenBSD 3.8, Cygwin, mingw, Interix 3.5, BeOS.
+@item
+The effects of this call are system and compiler optimization dependent,
+since it restores the contents of register-allocated variables but not
+the contents of stack-allocated variables.
+@end itemize
--- /dev/null
+@node swapcontext
+@section @code{swapcontext}
+@findex swapcontext
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/swapcontext.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+MacOS X 10.3, OpenBSD 3.8, Cygwin, mingw, Interix 3.5, BeOS.
+@end itemize
--- /dev/null
+@node ualarm
+@section @code{ualarm}
+@findex ualarm
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/ualarm.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+Solaris 2.4, mingw, BeOS.
+@end itemize
--- /dev/null
+@node usleep
+@section @code{usleep}
+@findex usleep
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/usleep.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+IRIX 5.3, Solaris 2.4, mingw, BeOS.
+@item
+According to POSIX, the @code{usleep} function may interfere with the program's
+use of the @code{SIGALRM} signal. On Linux, it doesn't; on other platforms,
+it may.
+@end itemize
--- /dev/null
+@node vfork
+@section @code{vfork}
+@findex vfork
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/vfork.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+IRIX 6.5, mingw, BeOS.
+@end itemize
--- /dev/null
+@node wcswcs
+@section @code{wcswcs}
+@findex wcswcs
+
+POSIX specification: @url{http://www.opengroup.org/susv3xsh/wcswcs.html}
+
+Gnulib module: ---
+
+Portability problems fixed by Gnulib:
+@itemize
+@end itemize
+
+Portability problems not fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+MacOS X 10.3, FreeBSD 6.0, IRIX 5.3, Solaris 2.5.1, Cygwin, mingw, BeOS.
+@item
+On Windows platforms, @code{wchar_t} is a 16-bit type and therefore cannot
+accommodate all Unicode characters.
+@item
+This function is marked as ``legacy'' in POSIX. Better use @code{wcsstr}
+instead.
+@end itemize
+++ /dev/null
-@node bcmp
-@section @code{bcmp}
-@findex bcmp
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/bcmp.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-Solaris 2.4, mingw.
-@item
-This function is marked as ``legacy'' in POSIX. Better use @code{memcmp}
-instead.
-@end itemize
+++ /dev/null
-@node bcopy
-@section @code{bcopy}
-@findex bcopy
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/bcopy.html}
-
-Gnulib module: bcopy
-
-Portability problems fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-Solaris 2.4, mingw.
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is marked as ``legacy'' in POSIX. Better use @code{memcpy}
-or @code{memmove} instead.
-@end itemize
+++ /dev/null
-@node bsd_signal
-@section @code{bsd_signal}
-@findex bsd_signal
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/bsd_signal.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, IRIX 5.3, Solaris 2.5.1, Cygwin, mingw, Interix 3.5.
-@end itemize
+++ /dev/null
-@node bzero
-@section @code{bzero}
-@findex bzero
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/bzero.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-Solaris 2.4, mingw.
-@item
-This function is marked as ``legacy'' in POSIX. Better use @code{memset}
-instead.
-@end itemize
+++ /dev/null
-@node ecvt
-@section @code{ecvt}
-@findex ecvt
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/ecvt.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-FreeBSD 6.0, NetBSD 3.0.
-@item
-This function is marked as ``legacy'' in POSIX. Better use @code{sprintf}
-instead.
-@end itemize
+++ /dev/null
-@node fcvt
-@section @code{fcvt}
-@findex fcvt
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/fcvt.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-FreeBSD 6.0, NetBSD 3.0.
-@item
-This function is marked as ``legacy'' in POSIX. Better use @code{sprintf}
-instead.
-@end itemize
+++ /dev/null
-@node ftime
-@section @code{ftime}
-@findex ftime
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/ftime.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0, OpenBSD 3.8, IRIX 5.3, Solaris 2.4.
-@item
-This function is marked as ``legacy'' in POSIX. Better use @code{gettimeofday}
-or @code{clock_gettime} instead, and use @code{ftime} only as a fallback for
-portability to Windows platforms.
-@end itemize
+++ /dev/null
-@node gcvt
-@section @code{gcvt}
-@findex gcvt
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/gcvt.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-MacOS X 10.3, FreeBSD 6.0, NetBSD 3.0.
-@item
-This function is marked as ``legacy'' in POSIX. Better use @code{sprintf}
-instead.
-@end itemize
+++ /dev/null
-@node getcontext
-@section @code{getcontext}
-@findex getcontext
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/getcontext.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-MacOS X 10.3, OpenBSD 3.8, Cygwin, mingw, Interix 3.5, BeOS.
-@end itemize
+++ /dev/null
-@node gethostbyaddr
-@section @code{gethostbyaddr}
-@findex gethostbyaddr
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/gethostbyaddr.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-mingw.
-@end itemize
+++ /dev/null
-@node gethostbyname
-@section @code{gethostbyname}
-@findex gethostbyname
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/gethostbyname.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-mingw.
-@end itemize
+++ /dev/null
-@node getwd
-@section @code{getwd}
-@findex getwd
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/getwd.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-Solaris 2.4, mingw, BeOS.
-@item
-The size of the buffer required for this function is not a compile-time
-constant. Also, the function truncates a result that would be larger than
-the minimum buffer size. For these reasons, this function is marked as
-``legacy'' in POSIX. Better use the @code{getcwd} function instead.
-@end itemize
+++ /dev/null
-@node h_errno
-@section @code{h_errno}
-@findex h_errno
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/h_errno.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-IRIX 6.5, OSF/1 5.1, Cygwin, mingw, Interix 3.5.
-@end itemize
+++ /dev/null
-@node index
-@section @code{index}
-@findex index
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/index.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-Solaris 2.4, mingw.
-@item
-This function is marked as ``legacy'' in POSIX. Better use @code{strchr}
-instead.
-@end itemize
+++ /dev/null
-@node makecontext
-@section @code{makecontext}
-@findex makecontext
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/makecontext.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-MacOS X 10.3, OpenBSD 3.8, Cygwin, mingw, Interix 3.5, BeOS.
-@end itemize
+++ /dev/null
-@node mktemp
-@section @code{mktemp}
-@findex mktemp
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/mktemp.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is not appropriate for creating temporary files. (It has
-security risks.) Therefore it is marked as ``legacy'' in POSIX. Better use
-@code{mkstemp} instead.
-@end itemize
+++ /dev/null
-@node pthread_attr_getstackaddr
-@section @code{pthread_attr_getstackaddr}
-@findex pthread_attr_getstackaddr
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/pthread_attr_getstackaddr.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-HP-UX 11, Solaris 2.4, Cygwin, mingw, BeOS.
-@end itemize
+++ /dev/null
-@node pthread_attr_setstackaddr
-@section @code{pthread_attr_setstackaddr}
-@findex pthread_attr_setstackaddr
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/pthread_attr_setstackaddr.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-HP-UX 11, IRIX 5.3, Solaris 2.4, Cygwin, mingw, BeOS.
-@end itemize
+++ /dev/null
-@node rindex
-@section @code{rindex}
-@findex rindex
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/rindex.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-Solaris 2.4, mingw.
-@item
-This function is marked as ``legacy'' in POSIX. Better use @code{strrchr}
-instead.
-@end itemize
+++ /dev/null
-@node scalb
-@section @code{scalb}
-@findex scalb
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/scalb.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@end itemize
+++ /dev/null
-@node setcontext
-@section @code{setcontext}
-@findex setcontext
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/setcontext.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-MacOS X 10.3, OpenBSD 3.8, Cygwin, mingw, Interix 3.5, BeOS.
-@item
-The effects of this call are system and compiler optimization dependent,
-since it restores the contents of register-allocated variables but not
-the contents of stack-allocated variables.
-@end itemize
+++ /dev/null
-@node swapcontext
-@section @code{swapcontext}
-@findex swapcontext
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/swapcontext.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-MacOS X 10.3, OpenBSD 3.8, Cygwin, mingw, Interix 3.5, BeOS.
-@end itemize
+++ /dev/null
-@node ualarm
-@section @code{ualarm}
-@findex ualarm
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/ualarm.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-Solaris 2.4, mingw, BeOS.
-@end itemize
+++ /dev/null
-@node usleep
-@section @code{usleep}
-@findex usleep
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/usleep.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-IRIX 5.3, Solaris 2.4, mingw, BeOS.
-@item
-According to POSIX, the @code{usleep} function may interfere with the program's
-use of the @code{SIGALRM} signal. On Linux, it doesn't; on other platforms,
-it may.
-@end itemize
+++ /dev/null
-@node vfork
-@section @code{vfork}
-@findex vfork
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/vfork.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-IRIX 6.5, mingw, BeOS.
-@end itemize
+++ /dev/null
-@node wcswcs
-@section @code{wcswcs}
-@findex wcswcs
-
-POSIX specification: @url{http://www.opengroup.org/susv3xsh/wcswcs.html}
-
-Gnulib module: ---
-
-Portability problems fixed by Gnulib:
-@itemize
-@end itemize
-
-Portability problems not fixed by Gnulib:
-@itemize
-@item
-This function is missing on some platforms:
-MacOS X 10.3, FreeBSD 6.0, IRIX 5.3, Solaris 2.5.1, Cygwin, mingw, BeOS.
-@item
-On Windows platforms, @code{wchar_t} is a 16-bit type and therefore cannot
-accommodate all Unicode characters.
-@item
-This function is marked as ``legacy'' in POSIX. Better use @code{wcsstr}
-instead.
-@end itemize