Use an all-permissive copyright notice, recommended by RMS.
[gnulib.git] / MODULES.html
index 9853b88..cd49d29 100644 (file)
@@ -2,7 +2,7 @@
 <HTML>
   <HEAD>
     <TITLE>Gnulib Module List</TITLE>
-    <META NAME="keywords" CONTENT="acl, alloca, argmatch, argp, assert, atexit, backupfile, bcopy, binary-io, c-bs-a, c-ctype, c-stack, canon-host, chown, closeout, copy-file, diacrit, dirfd, dirname, dup2, error, euidaccess, exclude, exit, exitfail, extensions, fatal, fatal-signal, file-type, fileblocks, filemode, findprog, fnmatch, fnmatch-gnu, fnmatch-posix, fpending, free, fsusage, ftruncate, full-read, full-write, fwriteerror, gcd, getdate, getdomainname, getgroups, gethostname, getline, getloadavg, getndelim2, getnline, getopt, getpagesize, getpass, getpass-gnu, gettext, gettime, gettimeofday, getugroups, getusershell, group-member, hard-locale, hash, hash-pjw, human, iconv, idcache, isdir, lchown, linebreak, linebuffer, localcharset, long-options, lstat, makepath, malloc, mathl, mbswidth, md5, memcasecmp, memchr, memcmp, memcoll, memcpy, memmove, mempcpy, memrchr, memset, minmax, mkdir, mkdtemp, mkstemp, mktime, modechange, mountlist, nanosleep, obstack, path-concat, pathmax, pathname, physmem, poll, posixtm, posixver, progname, putenv, quote, quotearg, readlink, readtokens, readutmp, realloc, regex, rename, restrict, rmdir, rpmatch, safe-read, safe-write, same, save-cwd, savedir, setenv, settime, sha, sig2str, stat, stdbool, stdio-safer, stpcpy, stpncpy, strcase, strchrnul, strcspn, strdup, strerror, strftime, strndup, strnlen, strpbrk, strstr, strtod, strtoimax, strtol, strtoll, strtoul, strtoull, strtoumax, strverscmp, sysexits, time_r, timegm, timespec, tzset, ucs4-utf16, ucs4-utf8, unicodeio, unistd-safer, unlocked-io, userspec, utf16-ucs4, utf8-ucs4, utime, vasnprintf, vasprintf, version-etc, wait-process, xalloc, xgetcwd, xgetdomainname, xgethostname, xmemcoll, xreadlink, xsetenv, xsize, xstrndup, xstrtod, xstrtoimax, xstrtol, xstrtoumax, yesno">
+    <META NAME="keywords" CONTENT="acl, alloca, alloca-opt, allocsa, argmatch, argp, argz, assert, atexit, backupfile, base64, bcopy, binary-io, c-bs-a, c-ctype, c-stack, c-strtod, c-strtold, calloc, canon-host, canonicalize, chdir-long, chown, cloexec, closeout, copy-file, cycle-check, diacrit, dirfd, dirname, dummy, dup2, eealloc, error, euidaccess, exclude, execute, exit, exitfail, extensions, fatal-signal, fcntl-safer, file-type, fileblocks, filemode, findprog, fnmatch, fnmatch-gnu, fnmatch-posix, fpending, free, fsusage, ftruncate, full-read, full-write, fwriteerror, gcd, getaddrinfo, getcwd, getdate, getdomainname, getgroups, gethostname, getline, getloadavg, getndelim2, getnline, getopt, getpagesize, getpass, getpass-gnu, getsubopt, gettext, gettime, gettimeofday, getugroups, getusershell, group-member, hard-locale, hash, hash-pjw, human, iconv, idcache, inttostr, isdir, lchown, linebreak, linebuffer, localcharset, long-options, lstat, makepath, malloc, mathl, mbswidth, md5, memcasecmp, memchr, memcmp, memcoll, memcpy, memmem, memmove, mempcpy, memrchr, memset, minmax, mkdir, mkdtemp, mkstemp, mktime, modechange, mountlist, nanosleep, obstack, openat, path-concat, pathmax, pathname, physmem, pipe, poll, posixtm, posixver, progname, putenv, quote, quotearg, raise, readlink, readtokens, readtokens0, readutmp, realloc, regex, rename, restrict, rmdir, rpmatch, safe-read, safe-write, same, save-cwd, savedir, setenv, settime, sh-quote, sha1, sig2str, snprintf, stat, stdbool, stdint, stdio-safer, stpcpy, stpncpy, strcase, strchrnul, strcspn, strdup, strerror, strftime, strndup, strnlen, strpbrk, strsep, strstr, strtod, strtoimax, strtok_r, strtol, strtoll, strtoul, strtoull, strtoumax, strverscmp, sysexits, time_r, timegm, timespec, tzset, ucs4-utf16, ucs4-utf8, ullong_max, unicodeio, unistd-safer, unlocked-io, userspec, utf16-ucs4, utf8-ucs4, utime, utimecmp, utimens, vasnprintf, vasprintf, version-etc, version-etc-fsf, vsnprintf, wait-process, xalloc, xalloc-die, xallocsa, xgetcwd, xgetdomainname, xgethostname, xmemcoll, xnanosleep, xreadlink, xsetenv, xsize, xstrndup, xstrtod, xstrtoimax, xstrtol, xstrtoumax, xvasprintf, yesno">
   </HEAD>
   <BODY>
     <H1>Gnulib Module List</H1>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Allow the installer to disable assertions through "configure --disable-assert".
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=dummy">dummy</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">A dummy file, to make sure the library is non-empty.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=exit">exit</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/exit.html">exit</A>() function: program termination.
       </TR>
     <H3><A HREF="#ansic_enh_stdlib_memory">Memory management functions &lt;stdlib.h&gt;</A></H3>
     <TABLE>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=calloc">calloc</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/calloc.html">calloc</A>() function that is glibc compatible.
+      </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=eealloc">eealloc</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Memory allocation with expensive empty allocations (glibc compatible).
+      </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=free">free</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Work around incompatibility on older systems where free (NULL) fails.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=malloc">malloc</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/malloc.html">malloc</A>() function that is glibc compatible.
       </TR>
       </TR>
       <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=xalloc">xalloc</A>
-        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Memory allocation with out-of-memory checking.
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Memory allocation with out-of-memory checking.  Also see xalloc-die.
+      </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=xalloc-die">xalloc-die</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Report a memory allocation failure and exit.
       </TR>
       <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=alloca">alloca</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Memory allocation on the stack.
       </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=alloca-opt">alloca-opt</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Memory allocation on the stack, as an optional optimization.
+It allows using the alloca() macro if and only if the autoconf tests define
+HAVE_ALLOCA.
+      </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=allocsa">allocsa</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Safe automatic memory allocation.
+      </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=xallocsa">xallocsa</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Safe automatic memory allocation with out of memory checking.
+      </TR>
     </TABLE>
     <H3><A HREF="#ansic_ext_stdlib_arith">Integer arithmetic functions &lt;stdlib.h&gt;</A></H3>
     <TABLE>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Old BSD <A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/bcopy.html">bcopy</A>() function: copy memory area.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=memmem">memmem</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">memmem() function: locate first substring in a buffer.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=mempcpy">mempcpy</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">mempcpy() function: copy memory area, return point after last written byte.
       </TR>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">strndup() function: duplicate a size-bounded string.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=strsep">strsep</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">strsep() function: extract token from string.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=xstrndup">xstrndup</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Duplicate a bounded initial segment of a string, with out-of-memory checking.
       </TR>
     <H3><A HREF="#ansic_ext_stdlib_conv">Numeric conversion functions &lt;stdlib.h&gt;</A></H3>
     <TABLE>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=c-strtod">c-strtod</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Convert string to double in C locale.
+      </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=c-strtold">c-strtold</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Convert string to long double in C locale.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=xstrtod">xstrtod</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Convert string to 'double', with error checking.
       </TR>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=timegm">timegm</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Convert calendar time to simple time, inverse of mktime.
       </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=tzset">tzset</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">tzset - initialize time conversion information
+      </TR>
     </TABLE>
     <H3><A HREF="#ansic_ext_stdio">Input/Output &lt;stdio.h&gt;</A></H3>
     <TABLE>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=vasprintf">vasprintf</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">vsprintf with automatic memory allocation.
       </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=xvasprintf">xvasprintf</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">vasprintf and asprintf with out-of-memory checking.  Also see xalloc-die.
+      </TR>
     </TABLE>
     <H3><A HREF="#ansic_ext_signal">Signal handling &lt;signal.h&gt;</A></H3>
     <TABLE>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=fatal-signal">fatal-signal</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Emergency actions in case of a fatal signal.
       </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=raise">raise</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Send a signal to the executing process.
+      </TR>
     </TABLE>
     <H3><A HREF="#ansic_ext_argv">Command-line arguments</A></H3>
     <TABLE>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Print --version output.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=version-etc-fsf">version-etc-fsf</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Copyright variable for FSF projects
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=long-options">long-options</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Handle --help and --version options.
       </TR>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Compute MD5 checksum.
       </TR>
       <TR WIDTH="100%">
-        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=sha">sha</A>
-        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Compute SHA checksum.
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=sha1">sha1</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Compute SHA1 checksum.
       </TR>
     </TABLE>
     <H3><A HREF="#ansic_ext_misc">Misc</A></H3>
     <TABLE>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=base64">base64</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Encode binary data using printable characters (base64).
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=diacrit">diacrit</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Decomposition of composed ISO-8859-1 characters.
       </TR>
@@ -310,6 +380,10 @@ memory allocation.
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Read tokens from a stream.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=readtokens0">readtokens0</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Read NUL-separated tokens from a stream.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=strverscmp">strverscmp</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Compare strings holding version numbers.
       </TR>
@@ -322,6 +396,13 @@ memory allocation.
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">The C99 'restrict' keyword.
       </TR>
     </TABLE>
+    <H3><A HREF="#isoc_sup_limits">Sizes of integer types &lt;limits.h&gt;</A></H3>
+    <TABLE>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=ullong_max">ullong_max</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">The maximum unsigned long long value, as a preprocessor constant.
+      </TR>
+    </TABLE>
     <H3><A HREF="#isoc_sup_stdbool">Boolean type and values &lt;stdbool.h&gt;</A></H3>
     <TABLE>
       <TR WIDTH="100%">
@@ -330,6 +411,27 @@ memory allocation.
 (Nearly: casts to bool may not work.)
       </TR>
     </TABLE>
+    <H3><A HREF="#isoc_sup_stdint">Integer types and values &lt;stdint.h&gt;</A></H3>
+    <TABLE>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=stdint">stdint</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">An &lt;stdint.h&gt; that nearly conforms to C99.
+(Nearly: {uint,int}_{fast,least}{8,16,32,64}_t may not correspond
+to the fastest and smallest types available on the system.)
+      </TR>
+    </TABLE>
+    <H3><A HREF="#isoc_sup_stdio">Input/output &lt;stdio.h&gt;</A></H3>
+    <TABLE>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=snprintf">snprintf</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/snprintf.html">snprintf</A>() function: print formatted output to a fixed length string
+      </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=vsnprintf">vsnprintf</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/vsnprintf.html">vsnprintf</A>() function: print formatted output from an stdarg argument list
+to a fixed length string
+      </TR>
+    </TABLE>
     <H3><A HREF="#isoc_sup_stdlib_conv">Numeric conversion functions &lt;stdlib.h&gt;</A></H3>
     <TABLE>
       <TR WIDTH="100%">
@@ -366,6 +468,10 @@ memory allocation.
     <H3><A HREF="#isoc_ext_stdlib_conv">Numeric conversion functions &lt;stdlib.h&gt;</A></H3>
     <TABLE>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=inttostr">inttostr</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Convert integers to printable strings.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=xstrtoimax">xstrtoimax</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Convert string to 'intmax_t', with error checking.
       </TR>
@@ -389,6 +495,14 @@ memory allocation.
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/ftruncate.html">ftruncate</A>() function: truncate an open file to a specified length.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=getaddrinfo">getaddrinfo</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Get address information.
+      </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=getcwd">getcwd</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Return the current working directory.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=getgroups">getgroups</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/getgroups.html">getgroups</A>() function: return the supplementary group IDs of the current process.
       </TR>
@@ -397,6 +511,10 @@ memory allocation.
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/gethostname.html">gethostname</A>() function: Return machine's hostname.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=getsubopt">getsubopt</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">getsubopt: Parse comma separate list into words.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=gettimeofday">gettimeofday</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/gettimeofday.html">gettimeofday</A>() function: return current time.
       </TR>
@@ -453,6 +571,10 @@ memory allocation.
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/rmdir.html">rmdir</A>() function: delete a directory.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=strtok_r">strtok_r</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/strtok_r.html">strtok_r</A>() function: split string into tokens, thread safe.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=utime">utime</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%"><A HREF="http://www.opengroup.org/onlinepubs/007904975/functions/utime.html">utime</A>() function: change access and/or modification times of a file.
       </TR>
@@ -468,6 +590,10 @@ memory allocation.
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Process command line arguments.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=fcntl-safer">fcntl-safer</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">File control functions that avoid clobbering std{in,out,err}.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=unistd-safer">unistd-safer</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">File descriptor functions that avoid clobbering STD{IN,OUT,ERR}_FILENO.
       </TR>
@@ -509,10 +635,18 @@ with K/M/G suffix.
 variables.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=canonicalize">canonicalize</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Return the canonical absolute name of a given file.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=copy-file">copy-file</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Copying of files.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=cycle-check">cycle-check</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">help detect directory cycles efficiently
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=fsusage">fsusage</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Return filesystem space usage info.
       </TR>
@@ -586,6 +720,14 @@ directory.
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Return the entries of a directory (just the names) as an argz string.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=utimecmp">utimecmp</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">compare file time stamps
+      </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=utimens">utimens</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Set file access and modification times.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=xgetcwd">xgetcwd</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Return the current working directory, without size limitations.
       </TR>
@@ -673,6 +815,10 @@ directory.
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=posixtm">posixtm</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Convert a date/time string (POSIX syntax) to linear time or broken-down time.
       </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=xnanosleep">xnanosleep</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">a more convenient interface to nanosleep
+      </TR>
     </TABLE>
     <H3><A HREF="#posix_ext_net">Networking functions</A></H3>
     <TABLE>
@@ -757,6 +903,10 @@ usually the host name including FQDN.
     <H3><A HREF="#posix_ext_exec">Executing programs</A></H3>
     <TABLE>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=cloexec">cloexec</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Set or clear the close-on-exec descriptor flag.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=findprog">findprog</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Locating a program in PATH.
       </TR>
@@ -764,6 +914,18 @@ usually the host name including FQDN.
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=wait-process">wait-process</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Waiting for a subprocess to finish.
       </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=execute">execute</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Creation of autonomous subprocesses.
+      </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=pipe">pipe</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Creation of subprocesses, communicating via pipes.
+      </TR>
+      <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=sh-quote">sh-quote</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Shell quoting.
+      </TR>
     </TABLE>
     <H3><A HREF="#posix_ext_java">Java</A></H3>
     <H3><A HREF="#posix_ext_misc">Misc</A></H3>
@@ -773,6 +935,10 @@ usually the host name including FQDN.
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Hierarchical processing of command line arguments.
       </TR>
       <TR WIDTH="100%">
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=argz">argz</A>
+        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Argv style string arrays in a single null delimited char*.
+      </TR>
+      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=exitfail">exitfail</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Set exit status for fatal signal.
       </TR>
@@ -789,10 +955,6 @@ usually the host name including FQDN.
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Enable extensions in standard headers
       </TR>
       <TR WIDTH="100%">
-        <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=fatal">fatal</A>
-        <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">Error reporting for fatal errors.
-      </TR>
-      <TR WIDTH="100%">
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="20%"><A HREF="#module=getdomainname">getdomainname</A>
         <TD ALIGN=LEFT VALIGN=TOP WIDTH="80%">getdomainname() function: Return machine's NIS domain name.
       </TR>
@@ -873,7 +1035,14 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=assert"></A><A HREF="modules/assert">assert</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/assert.h.html">assert.h</A>&gt;
         <TD ALIGN=LEFT VALIGN=TOP>---
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/assert.m4">assert.m4</A><BR>jm_ASSERT
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/assert.m4">assert.m4</A><BR>gl_ASSERT
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=dummy"></A><A HREF="modules/dummy">dummy</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/dummy.c">dummy.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
@@ -922,7 +1091,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=memcmp"></A><A HREF="modules/memcmp">memcmp</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/string.h.html">string.h</A>&gt;
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/memcmp.c">memcmp.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/memcmp.m4">memcmp.m4</A><BR>jm_FUNC_MEMCMP
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/memcmp.m4">memcmp.m4</A><BR>gl_FUNC_MEMCMP
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
@@ -1001,17 +1170,38 @@ variables.
         <TH ALIGN=LEFT>Depends on
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=calloc"></A><A HREF="modules/calloc">calloc</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/stdlib.h.html">stdlib.h</A>&gt;
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/calloc.c">calloc.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/calloc.m4">calloc.m4</A><BR>AC_FUNC_CALLOC
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=eealloc"></A><A HREF="modules/eealloc">eealloc</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;eealloc.h&gt;
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/eealloc.h">eealloc.h</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/eealloc.m4">eealloc.m4</A><BR>gl_EEALLOC
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=free"></A><A HREF="modules/free">free</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/stdlib.h.html">stdlib.h</A>&gt;
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/free.c">free.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/free.m4">free.m4</A><BR>gl_FUNC_FREE
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=malloc"></A><A HREF="modules/malloc">malloc</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/stdlib.h.html">stdlib.h</A>&gt;
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/malloc.c">malloc.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/malloc.m4">malloc.m4</A><BR>jm_FUNC_MALLOC
+        <TD ALIGN=LEFT VALIGN=TOP>AC_FUNC_MALLOC
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=realloc"></A><A HREF="modules/realloc">realloc</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/stdlib.h.html">stdlib.h</A>&gt;
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/realloc.c">realloc.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/realloc.m4">realloc.m4</A><BR>jm_FUNC_REALLOC
+        <TD ALIGN=LEFT VALIGN=TOP>AC_FUNC_REALLOC
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
     </TABLE>
@@ -1033,9 +1223,9 @@ variables.
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=strftime"></A><A HREF="modules/strftime">strftime</A>
-        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/time.h.html">time.h</A>&gt;
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/strftime.h">strftime.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/strftime.c">strftime.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/mbstate_t.m4">mbstate_t.m4</A><BR><A HREF="m4/tm_gmtoff.m4">tm_gmtoff.m4</A><BR><A HREF="m4/strftime.m4">strftime.m4</A><BR>jm_FUNC_GNU_STRFTIME
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/mbstate_t.m4">mbstate_t.m4</A><BR><A HREF="m4/tm_gmtoff.m4">tm_gmtoff.m4</A><BR><A HREF="m4/strftime.m4">strftime.m4</A><BR>gl_FUNC_GNU_STRFTIME
         <TD ALIGN=LEFT VALIGN=TOP>time_r<BR>tzset
       </TR>
     </TABLE>
@@ -1066,17 +1256,45 @@ variables.
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xalloc"></A><A HREF="modules/xalloc">xalloc</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xalloc.h">xalloc.h</A>"
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xmalloc.c">xmalloc.c</A><BR><A HREF="lib/xstrdup.c">xstrdup.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xmalloc.c">xmalloc.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/xalloc.m4">xalloc.m4</A><BR>gl_XALLOC
-        <TD ALIGN=LEFT VALIGN=TOP>malloc<BR>realloc<BR>error<BR>gettext<BR>exitfail<BR>stdbool
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xalloc-die"></A><A HREF="modules/xalloc-die">xalloc-die</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xalloc.h">xalloc.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xalloc-die.c">xalloc-die.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>error<BR>gettext<BR>exitfail
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=alloca"></A><A HREF="modules/alloca">alloca</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;alloca.h&gt;
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/alloca_.h">alloca_.h</A><BR><A HREF="lib/alloca.c">alloca.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/alloca.c">alloca.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>alloca-opt
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=alloca-opt"></A><A HREF="modules/alloca-opt">alloca-opt</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;alloca.h&gt;
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/alloca_.h">alloca_.h</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/alloca.m4">alloca.m4</A><BR>gl_FUNC_ALLOCA
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=allocsa"></A><A HREF="modules/allocsa">allocsa</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/allocsa.h">allocsa.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/allocsa.c">allocsa.c</A><BR><A HREF="lib/allocsa.valgrind">allocsa.valgrind</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/allocsa.m4">allocsa.m4</A><BR><A HREF="m4/eealloc.m4">eealloc.m4</A><BR><A HREF="m4/longlong.m4">longlong.m4</A><BR><A HREF="m4/longdouble.m4">longdouble.m4</A><BR>gl_ALLOCSA
+        <TD ALIGN=LEFT VALIGN=TOP>alloca-opt
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xallocsa"></A><A HREF="modules/xallocsa">xallocsa</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xallocsa.h">xallocsa.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xallocsa.c">xallocsa.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>allocsa<BR>xalloc
+      </TR>
     </TABLE>
     <H3><A NAME="ansic_ext_stdlib_arith">Integer arithmetic functions &lt;stdlib.h&gt;</A></H3>
     <TABLE>
@@ -1129,7 +1347,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=putenv"></A><A HREF="modules/putenv">putenv</A>
         <TD ALIGN=LEFT VALIGN=TOP>---
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/putenv.c">putenv.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/putenv.m4">putenv.m4</A><BR>jm_FUNC_PUTENV
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/putenv.m4">putenv.m4</A><BR>gl_FUNC_PUTENV
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
@@ -1137,7 +1355,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/setenv.h">setenv.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/setenv.c">setenv.c</A><BR><A HREF="lib/unsetenv.c">unsetenv.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/setenv.m4">setenv.m4</A><BR>gt_FUNC_SETENV
-        <TD ALIGN=LEFT VALIGN=TOP>alloca
+        <TD ALIGN=LEFT VALIGN=TOP>allocsa<BR>alloca-opt
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xsetenv"></A><A HREF="modules/xsetenv">xsetenv</A>
@@ -1195,6 +1413,13 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=memmem"></A><A HREF="modules/memmem">memmem</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/memmem.h">memmem.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/memmem.c">memmem.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/memmem.m4">memmem.m4</A><BR>gl_FUNC_MEMMEM
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=mempcpy"></A><A HREF="modules/mempcpy">mempcpy</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/mempcpy.h">mempcpy.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/mempcpy.c">mempcpy.c</A>
@@ -1238,7 +1463,7 @@ variables.
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=strdup"></A><A HREF="modules/strdup">strdup</A>
-        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/strdup.h">strdup.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/strdup.c">strdup.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/strdup.m4">strdup.m4</A><BR>gl_FUNC_STRDUP
         <TD ALIGN=LEFT VALIGN=TOP>---
@@ -1258,6 +1483,13 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>strnlen
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=strsep"></A><A HREF="modules/strsep">strsep</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/strsep.h">strsep.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/strsep.c">strsep.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/strsep.m4">strsep.m4</A><BR>gl_FUNC_STRSEP
+        <TD ALIGN=LEFT VALIGN=TOP>strpbrk
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xstrndup"></A><A HREF="modules/xstrndup">xstrndup</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xstrndup.h">xstrndup.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xstrndup.c">xstrndup.c</A>
@@ -1282,6 +1514,20 @@ variables.
         <TH ALIGN=LEFT>Depends on
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=c-strtod"></A><A HREF="modules/c-strtod">c-strtod</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/c-strtod.h">c-strtod.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/c-strtod.c">c-strtod.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/c-strtod.m4">c-strtod.m4</A><BR>gl_C_STRTOD
+        <TD ALIGN=LEFT VALIGN=TOP>extensions
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=c-strtold"></A><A HREF="modules/c-strtold">c-strtold</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/c-strtod.h">c-strtod.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/c-strtod.c">c-strtod.c</A><BR><A HREF="lib/c-strtold.c">c-strtold.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/c-strtod.m4">c-strtod.m4</A><BR>gl_C_STRTOLD
+        <TD ALIGN=LEFT VALIGN=TOP>extensions
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xstrtod"></A><A HREF="modules/xstrtod">xstrtod</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xstrtod.h">xstrtod.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xstrtod.c">xstrtod.c</A>
@@ -1293,7 +1539,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xstrtol.h">xstrtol.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xstrtol.c">xstrtol.c</A><BR><A HREF="lib/xstrtoul.c">xstrtoul.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/ulonglong.m4">ulonglong.m4</A><BR><A HREF="m4/longlong.m4">longlong.m4</A><BR><A HREF="m4/stdint_h.m4">stdint_h.m4</A><BR><A HREF="m4/inttypes_h.m4">inttypes_h.m4</A><BR><A HREF="m4/uintmax_t.m4">uintmax_t.m4</A><BR><A HREF="m4/intmax_t.m4">intmax_t.m4</A><BR><A HREF="m4/xstrtol.m4">xstrtol.m4</A><BR>gl_XSTRTOL
-        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>exitfail<BR>error
       </TR>
     </TABLE>
     <H3><A NAME="ansic_ext_time_datetime">Date and time &lt;time.h&gt;</A></H3>
@@ -1317,7 +1563,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/getdate.h">getdate.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getdate.y">getdate.y</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/bison.m4">bison.m4</A><BR><A HREF="m4/tm_gmtoff.m4">tm_gmtoff.m4</A><BR><A HREF="m4/getdate.m4">getdate.m4</A><BR>gl_GETDATE
-        <TD ALIGN=LEFT VALIGN=TOP>mktime<BR>unlocked-io
+        <TD ALIGN=LEFT VALIGN=TOP>timespec<BR>stdbool<BR>gettime<BR>mktime<BR>setenv<BR>xalloc
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=timegm"></A><A HREF="modules/timegm">timegm</A>
@@ -1326,6 +1572,13 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/timegm.m4">timegm.m4</A><BR>gl_FUNC_TIMEGM
         <TD ALIGN=LEFT VALIGN=TOP>mktime<BR>time_r
       </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=tzset"></A><A HREF="modules/tzset">tzset</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/time.h.html">time.h</A>&gt;
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/tzset.m4">tzset.m4</A><BR>gl_FUNC_TZSET_CLOBBER
+        <TD ALIGN=LEFT VALIGN=TOP>gettimeofday
+      </TR>
     </TABLE>
     <H3><A NAME="ansic_ext_stdio">Input/Output &lt;stdio.h&gt;</A></H3>
     <TABLE>
@@ -1347,7 +1600,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=unlocked-io"></A><A HREF="modules/unlocked-io">unlocked-io</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/unlocked-io.h">unlocked-io.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP>---
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/unlocked-io.m4">unlocked-io.m4</A><BR>jm_FUNC_GLIBC_UNLOCKED_IO
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/unlocked-io.m4">unlocked-io.m4</A><BR>gl_FUNC_GLIBC_UNLOCKED_IO
         <TD ALIGN=LEFT VALIGN=TOP>extensions
       </TR>
       <TR>
@@ -1361,8 +1614,8 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=vasnprintf"></A><A HREF="modules/vasnprintf">vasnprintf</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/vasnprintf.h">vasnprintf.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/printf-args.h">printf-args.h</A><BR><A HREF="lib/printf-args.c">printf-args.c</A><BR><A HREF="lib/printf-parse.h">printf-parse.h</A><BR><A HREF="lib/printf-parse.c">printf-parse.c</A><BR><A HREF="lib/vasnprintf.c">vasnprintf.c</A><BR><A HREF="lib/asnprintf.c">asnprintf.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/signed.m4">signed.m4</A><BR><A HREF="m4/longdouble.m4">longdouble.m4</A><BR><A HREF="m4/wchar_t.m4">wchar_t.m4</A><BR><A HREF="m4/wint_t.m4">wint_t.m4</A><BR><A HREF="m4/longlong.m4">longlong.m4</A><BR><A HREF="m4/intmax_t.m4">intmax_t.m4</A><BR><A HREF="m4/vasnprintf.m4">vasnprintf.m4</A><BR>gl_FUNC_VASNPRINTF
-        <TD ALIGN=LEFT VALIGN=TOP>alloca<BR>xsize
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/signed.m4">signed.m4</A><BR><A HREF="m4/longdouble.m4">longdouble.m4</A><BR><A HREF="m4/wchar_t.m4">wchar_t.m4</A><BR><A HREF="m4/wint_t.m4">wint_t.m4</A><BR><A HREF="m4/longlong.m4">longlong.m4</A><BR><A HREF="m4/intmax_t.m4">intmax_t.m4</A><BR><A HREF="m4/stdint_h.m4">stdint_h.m4</A><BR><A HREF="m4/inttypes_h.m4">inttypes_h.m4</A><BR><A HREF="m4/eoverflow.m4">eoverflow.m4</A><BR><A HREF="m4/vasnprintf.m4">vasnprintf.m4</A><BR>gl_FUNC_VASNPRINTF
+        <TD ALIGN=LEFT VALIGN=TOP>alloca-opt<BR>xsize
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=vasprintf"></A><A HREF="modules/vasprintf">vasprintf</A>
@@ -1371,6 +1624,13 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/vasprintf.m4">vasprintf.m4</A><BR>gl_FUNC_VASPRINTF
         <TD ALIGN=LEFT VALIGN=TOP>vasnprintf
       </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xvasprintf"></A><A HREF="modules/xvasprintf">xvasprintf</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xvasprintf.h">xvasprintf.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xvasprintf.c">xvasprintf.c</A><BR><A HREF="lib/xasprintf.c">xasprintf.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>vasprintf
+      </TR>
     </TABLE>
     <H3><A NAME="ansic_ext_signal">Signal handling &lt;signal.h&gt;</A></H3>
     <TABLE>
@@ -1395,6 +1655,13 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/fatal-signal.m4">fatal-signal.m4</A><BR><A HREF="m4/signalblocking.m4">signalblocking.m4</A><BR><A HREF="m4/sig_atomic_t.m4">sig_atomic_t.m4</A><BR>gl_FATAL_SIGNAL
         <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>stdbool
       </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=raise"></A><A HREF="modules/raise">raise</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/raise.c">raise.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP>AC_REPLACE_FUNCS(raise)
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
     </TABLE>
     <H3><A NAME="ansic_ext_argv">Command-line arguments</A></H3>
     <TABLE>
@@ -1417,14 +1684,21 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/argmatch.h">argmatch.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/argmatch.c">argmatch.c</A>
         <TD ALIGN=LEFT VALIGN=TOP>---
-        <TD ALIGN=LEFT VALIGN=TOP>gettext<BR>error<BR>quotearg<BR>quote<BR>unlocked-io<BR>exit
+        <TD ALIGN=LEFT VALIGN=TOP>gettext<BR>error<BR>quotearg<BR>quote<BR>exit<BR>exitfail
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=version-etc"></A><A HREF="modules/version-etc">version-etc</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/version-etc.h">version-etc.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/version-etc.c">version-etc.c</A>
         <TD ALIGN=LEFT VALIGN=TOP>---
-        <TD ALIGN=LEFT VALIGN=TOP>unlocked-io<BR>gettext
+        <TD ALIGN=LEFT VALIGN=TOP>gettext
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=version-etc-fsf"></A><A HREF="modules/version-etc-fsf">version-etc-fsf</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/version-etc-fsf.c">version-etc-fsf.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>version-etc
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=long-options"></A><A HREF="modules/long-options">long-options</A>
@@ -1454,15 +1728,15 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=md5"></A><A HREF="modules/md5">md5</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/md5.h">md5.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/md5.c">md5.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/md5.m4">md5.m4</A><BR>gl_MD5
-        <TD ALIGN=LEFT VALIGN=TOP>unlocked-io
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/md5.m4">md5.m4</A><BR><A HREF="m4/uint32_t.m4">uint32_t.m4</A><BR>gl_MD5
+        <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
-        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=sha"></A><A HREF="modules/sha">sha</A>
-        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/sha.h">sha.h</A>"
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/sha.c">sha.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/sha.m4">sha.m4</A><BR>gl_SHA
-        <TD ALIGN=LEFT VALIGN=TOP>unlocked-io<BR>md5
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=sha1"></A><A HREF="modules/sha1">sha1</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/sha1.h">sha1.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/sha1.c">sha1.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/sha1.m4">sha1.m4</A><BR>gl_SHA1
+        <TD ALIGN=LEFT VALIGN=TOP>md5
       </TR>
     </TABLE>
     <H3><A NAME="ansic_ext_misc">Misc</A></H3>
@@ -1482,6 +1756,13 @@ variables.
         <TH ALIGN=LEFT>Depends on
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=base64"></A><A HREF="modules/base64">base64</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/base64.h">base64.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/base64.c">base64.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/base64.m4">base64.m4</A><BR>gl_FUNC_BASE64
+        <TD ALIGN=LEFT VALIGN=TOP>stdbool<BR>restrict
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=diacrit"></A><A HREF="modules/diacrit">diacrit</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/diacrit.h">diacrit.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/diacrit.c">diacrit.c</A>
@@ -1493,7 +1774,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/getline.h">getline.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getline.c">getline.c</A><BR><A HREF="lib/getndelim2.h">getndelim2.h</A><BR><A HREF="lib/getndelim2.c">getndelim2.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getline.m4">getline.m4</A><BR><A HREF="m4/getndelim2.m4">getndelim2.m4</A><BR><A HREF="m4/ssize_t.m4">ssize_t.m4</A><BR>AM_FUNC_GETLINE
-        <TD ALIGN=LEFT VALIGN=TOP>unlocked-io
+        <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=getnline"></A><A HREF="modules/getnline">getnline</A>
@@ -1507,21 +1788,21 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/getndelim2.h">getndelim2.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getndelim2.c">getndelim2.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getndelim2.m4">getndelim2.m4</A><BR><A HREF="m4/ssize_t.m4">ssize_t.m4</A><BR>gl_GETNDELIM2
-        <TD ALIGN=LEFT VALIGN=TOP>unlocked-io
+        <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=linebuffer"></A><A HREF="modules/linebuffer">linebuffer</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/linebuffer.h">linebuffer.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/linebuffer.c">linebuffer.c</A>
         <TD ALIGN=LEFT VALIGN=TOP>---
-        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>unlocked-io
+        <TD ALIGN=LEFT VALIGN=TOP>xalloc
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=obstack"></A><A HREF="modules/obstack">obstack</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/obstack.h">obstack.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/obstack.c">obstack.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/obstack.m4">obstack.m4</A><BR>gl_OBSTACK
-        <TD ALIGN=LEFT VALIGN=TOP>gettext<BR>exit
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/inttypes_h.m4">inttypes_h.m4</A><BR><A HREF="m4/obstack.m4">obstack.m4</A><BR><A HREF="m4/stdint_h.m4">stdint_h.m4</A><BR><A HREF="m4/uintmax_t.m4">uintmax_t.m4</A><BR>gl_OBSTACK
+        <TD ALIGN=LEFT VALIGN=TOP>gettext<BR>exit<BR>exitfail
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=hash-pjw"></A><A HREF="modules/hash-pjw">hash-pjw</A>
@@ -1533,16 +1814,23 @@ variables.
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=hash"></A><A HREF="modules/hash">hash</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/hash.h">hash.h</A>"
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/hash.c">hash.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/hash.c">hash.c</A><BR><A HREF="lib/xalloc.h">xalloc.h</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/hash.m4">hash.m4</A><BR>gl_HASH
-        <TD ALIGN=LEFT VALIGN=TOP>malloc<BR>realloc<BR>stdbool
+        <TD ALIGN=LEFT VALIGN=TOP>stdbool
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=readtokens"></A><A HREF="modules/readtokens">readtokens</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/readtokens.h">readtokens.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/readtokens.c">readtokens.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/readtokens.m4">readtokens.m4</A><BR>gl_READTOKENS
-        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>unlocked-io
+        <TD ALIGN=LEFT VALIGN=TOP>xalloc
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=readtokens0"></A><A HREF="modules/readtokens0">readtokens0</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/readtokens0.h">readtokens0.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/readtokens0.c">readtokens0.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>obstack
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=strverscmp"></A><A HREF="modules/strverscmp">strverscmp</A>
@@ -1577,6 +1865,30 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
     </TABLE>
+    <H3><A NAME="isoc_sup_limits">Sizes of integer types &lt;limits.h&gt;</A></H3>
+    <TABLE>
+      <TR>
+        <TH ALIGN=LEFT>modules/
+        <TH ALIGN=LEFT>lib/
+        <TH ALIGN=LEFT>lib/
+        <TH ALIGN=LEFT>m4/
+        <TH ALIGN=LEFT>&nbsp;
+      </TR>
+      <TR>
+        <TH ALIGN=LEFT>Module
+        <TH ALIGN=LEFT>Header
+        <TH ALIGN=LEFT>Implementation
+        <TH ALIGN=LEFT>Autoconf macro
+        <TH ALIGN=LEFT>Depends on
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=ullong_max"></A><A HREF="modules/ullong_max">ullong_max</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/limits.h.html">limits.h</A>&gt;
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/ullong_max.m4">ullong_max.m4</A><BR>gl_ULLONG_MAX
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
+    </TABLE>
     <H3><A NAME="isoc_sup_stdbool">Boolean type and values &lt;stdbool.h&gt;</A></H3>
     <TABLE>
       <TR>
@@ -1601,6 +1913,61 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
     </TABLE>
+    <H3><A NAME="isoc_sup_stdint">Integer types and values &lt;stdint.h&gt;</A></H3>
+    <TABLE>
+      <TR>
+        <TH ALIGN=LEFT>modules/
+        <TH ALIGN=LEFT>lib/
+        <TH ALIGN=LEFT>lib/
+        <TH ALIGN=LEFT>m4/
+        <TH ALIGN=LEFT>&nbsp;
+      </TR>
+      <TR>
+        <TH ALIGN=LEFT>Module
+        <TH ALIGN=LEFT>Header
+        <TH ALIGN=LEFT>Implementation
+        <TH ALIGN=LEFT>Autoconf macro
+        <TH ALIGN=LEFT>Depends on
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=stdint"></A><A HREF="modules/stdint">stdint</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/stdint.h.html">stdint.h</A>&gt;
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/stdint_.h">stdint_.h</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/stdint.m4">stdint.m4</A><BR><A HREF="m4/inttypes.m4">inttypes.m4</A><BR>gl_STDINT_H
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
+    </TABLE>
+    <H3><A NAME="isoc_sup_stdio">Input/output &lt;stdio.h&gt;</A></H3>
+    <TABLE>
+      <TR>
+        <TH ALIGN=LEFT>modules/
+        <TH ALIGN=LEFT>lib/
+        <TH ALIGN=LEFT>lib/
+        <TH ALIGN=LEFT>m4/
+        <TH ALIGN=LEFT>&nbsp;
+      </TR>
+      <TR>
+        <TH ALIGN=LEFT>Module
+        <TH ALIGN=LEFT>Header
+        <TH ALIGN=LEFT>Implementation
+        <TH ALIGN=LEFT>Autoconf macro
+        <TH ALIGN=LEFT>Depends on
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=snprintf"></A><A HREF="modules/snprintf">snprintf</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/snprintf.h">snprintf.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/snprintf.c">snprintf.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/snprintf.m4">snprintf.m4</A><BR>gl_FUNC_SNPRINTF
+        <TD ALIGN=LEFT VALIGN=TOP>vasnprintf<BR>minmax
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=vsnprintf"></A><A HREF="modules/vsnprintf">vsnprintf</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/vsnprintf.h">vsnprintf.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/vsnprintf.c">vsnprintf.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/vsnprintf.m4">vsnprintf.m4</A><BR>gl_FUNC_VSNPRINTF
+        <TD ALIGN=LEFT VALIGN=TOP>vasnprintf<BR>minmax
+      </TR>
+    </TABLE>
     <H3><A NAME="isoc_sup_stdlib_conv">Numeric conversion functions &lt;stdlib.h&gt;</A></H3>
     <TABLE>
       <TR>
@@ -1722,17 +2089,24 @@ variables.
         <TH ALIGN=LEFT>Depends on
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=inttostr"></A><A HREF="modules/inttostr">inttostr</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/inttostr.h">inttostr.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/imaxtostr.c">imaxtostr.c</A><BR><A HREF="lib/inttostr.c">inttostr.c</A><BR><A HREF="lib/offtostr.c">offtostr.c</A><BR><A HREF="lib/umaxtostr.c">umaxtostr.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/intmax_t.m4">intmax_t.m4</A><BR><A HREF="m4/inttostr.m4">inttostr.m4</A><BR><A HREF="m4/longlong.m4">longlong.m4</A><BR><A HREF="m4/uintmax_t.m4">uintmax_t.m4</A><BR>gl_INTTOSTR
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xstrtoimax"></A><A HREF="modules/xstrtoimax">xstrtoimax</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xstrtol.h">xstrtol.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xstrtoimax.c">xstrtoimax.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/xstrtoimax.m4">xstrtoimax.m4</A><BR>jm_XSTRTOIMAX
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/xstrtoimax.m4">xstrtoimax.m4</A><BR>gl_XSTRTOIMAX
         <TD ALIGN=LEFT VALIGN=TOP>xstrtol<BR>strtoimax
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xstrtoumax"></A><A HREF="modules/xstrtoumax">xstrtoumax</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xstrtol.h">xstrtol.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xstrtoumax.c">xstrtoumax.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/xstrtoumax.m4">xstrtoumax.m4</A><BR>jm_XSTRTOUMAX
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/xstrtoumax.m4">xstrtoumax.m4</A><BR>gl_XSTRTOUMAX
         <TD ALIGN=LEFT VALIGN=TOP>xstrtol<BR>strtoumax
       </TR>
     </TABLE>
@@ -1755,8 +2129,8 @@ variables.
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=chown"></A><A HREF="modules/chown">chown</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/unistd.h.html">unistd.h</A>&gt;
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/chown.c">chown.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/chown.m4">chown.m4</A><BR>jm_FUNC_CHOWN
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/chown.c">chown.c</A><BR><A HREF="lib/fchown-stub.c">fchown-stub.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/chown.m4">chown.m4</A><BR>gl_FUNC_CHOWN
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
@@ -1770,14 +2144,28 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=ftruncate"></A><A HREF="modules/ftruncate">ftruncate</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/unistd.h.html">unistd.h</A>&gt;
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/ftruncate.c">ftruncate.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/ftruncate.m4">ftruncate.m4</A><BR>jm_FUNC_FTRUNCATE
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/ftruncate.m4">ftruncate.m4</A><BR>gl_FUNC_FTRUNCATE
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=getaddrinfo"></A><A HREF="modules/getaddrinfo">getaddrinfo</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/getaddrinfo.h">getaddrinfo.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getaddrinfo.c">getaddrinfo.c</A><BR><A HREF="lib/gai_strerror.c">gai_strerror.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getaddrinfo.m4">getaddrinfo.m4</A><BR><A HREF="m4/sockpfaf.m4">sockpfaf.m4</A><BR>gl_GETADDRINFO
+        <TD ALIGN=LEFT VALIGN=TOP>restrict<BR>gettext<BR>stdbool
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=getcwd"></A><A HREF="modules/getcwd">getcwd</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/getcwd.h">getcwd.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getcwd.c">getcwd.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/d-ino.m4">d-ino.m4</A><BR><A HREF="m4/getcwd-path-max.m4">getcwd-path-max.m4</A><BR><A HREF="m4/getcwd.m4">getcwd.m4</A><BR>gl_FUNC_GETCWD
+        <TD ALIGN=LEFT VALIGN=TOP>mempcpy
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=getgroups"></A><A HREF="modules/getgroups">getgroups</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/unistd.h.html">unistd.h</A>&gt;
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getgroups.c">getgroups.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getgroups.m4">getgroups.m4</A><BR>jm_FUNC_GETGROUPS
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getgroups.m4">getgroups.m4</A><BR>gl_FUNC_GETGROUPS
         <TD ALIGN=LEFT VALIGN=TOP>xalloc
       </TR>
       <TR>
@@ -1788,6 +2176,13 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=getsubopt"></A><A HREF="modules/getsubopt">getsubopt</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/getsubopt.h">getsubopt.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getsubopt.c">getsubopt.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getsubopt.m4">getsubopt.m4</A><BR>gl_FUNC_GETSUBOPT
+        <TD ALIGN=LEFT VALIGN=TOP>strchrnul
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=gettimeofday"></A><A HREF="modules/gettimeofday">gettimeofday</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/sys/time.h.html">sys/time.h</A>&gt;
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/gettimeofday.c">gettimeofday.c</A>
@@ -1798,14 +2193,14 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=mkdir"></A><A HREF="modules/mkdir">mkdir</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/sys/stat.h.html">sys/stat.h</A>&gt;
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/mkdir.c">mkdir.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/mkdir-slash.m4">mkdir-slash.m4</A><BR>UTILS_FUNC_MKDIR_TRAILING_SLASH
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/mkdir-slash.m4">mkdir-slash.m4</A><BR>gl_FUNC_MKDIR_TRAILING_SLASH
         <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>dirname
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=mkstemp"></A><A HREF="modules/mkstemp">mkstemp</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/stdlib.h.html">stdlib.h</A>&gt;
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/mkstemp.c">mkstemp.c</A><BR><A HREF="lib/tempname.c">tempname.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/ulonglong.m4">ulonglong.m4</A><BR><A HREF="m4/stdint_h.m4">stdint_h.m4</A><BR><A HREF="m4/inttypes_h.m4">inttypes_h.m4</A><BR><A HREF="m4/uintmax_t.m4">uintmax_t.m4</A><BR><A HREF="m4/mkstemp.m4">mkstemp.m4</A><BR>UTILS_FUNC_MKSTEMP
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/ulonglong.m4">ulonglong.m4</A><BR><A HREF="m4/stdint_h.m4">stdint_h.m4</A><BR><A HREF="m4/inttypes_h.m4">inttypes_h.m4</A><BR><A HREF="m4/uintmax_t.m4">uintmax_t.m4</A><BR><A HREF="m4/mkstemp.m4">mkstemp.m4</A><BR>gl_FUNC_MKSTEMP
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
@@ -1832,15 +2227,15 @@ variables.
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=stat"></A><A HREF="modules/stat">stat</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/sys/stat.h.html">sys/stat.h</A>&gt;
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/stat.c">stat.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/stat.m4">stat.m4</A><BR>jm_FUNC_STAT
-        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/stat.c">stat.c</A><BR><A HREF="lib/stat-macros.h">stat-macros.h</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/stat.m4">stat.m4</A><BR>gl_FUNC_STAT
+        <TD ALIGN=LEFT VALIGN=TOP>xalloc
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=lstat"></A><A HREF="modules/lstat">lstat</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/sys/stat.h.html">sys/stat.h</A>&gt;
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/lstat.c">lstat.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/lstat.m4">lstat.m4</A><BR>jm_FUNC_LSTAT
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/lstat.m4">lstat.m4</A><BR>gl_FUNC_LSTAT
         <TD ALIGN=LEFT VALIGN=TOP>stat<BR>xalloc
       </TR>
       <TR>
@@ -1861,7 +2256,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=nanosleep"></A><A HREF="modules/nanosleep">nanosleep</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/time.h.html">time.h</A>&gt;
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/nanosleep.c">nanosleep.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/nanosleep.m4">nanosleep.m4</A><BR>jm_FUNC_NANOSLEEP
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/nanosleep.m4">nanosleep.m4</A><BR>gl_FUNC_NANOSLEEP
         <TD ALIGN=LEFT VALIGN=TOP>timespec
       </TR>
       <TR>
@@ -1869,7 +2264,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/regex.h">regex.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/regex.c">regex.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/regex.m4">regex.m4</A><BR>gl_REGEX
-        <TD ALIGN=LEFT VALIGN=TOP>alloca<BR>unlocked-io<BR>gettext<BR>restrict
+        <TD ALIGN=LEFT VALIGN=TOP>alloca<BR>gettext<BR>restrict
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=rename"></A><A HREF="modules/rename">rename</A>
@@ -1881,15 +2276,22 @@ variables.
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=rmdir"></A><A HREF="modules/rmdir">rmdir</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/unistd.h.html">unistd.h</A>&gt;
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/rmdir.c">rmdir.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/rmdir.c">rmdir.c</A><BR><A HREF="lib/stat-macros.h">stat-macros.h</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/rmdir.m4">rmdir.m4</A><BR>gl_FUNC_RMDIR
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=strtok_r"></A><A HREF="modules/strtok_r">strtok_r</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/strtok_r.h">strtok_r.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/strtok_r.c">strtok_r.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/strtok_r.m4">strtok_r.m4</A><BR>gl_FUNC_STRTOK_R
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=utime"></A><A HREF="modules/utime">utime</A>
         <TD ALIGN=LEFT VALIGN=TOP>#if HAVE_UTIME_H<BR># include &lt;utime.h&gt;<BR>#else<BR># include &lt;sys/utime.h&gt;<BR>#endif
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/utime.c">utime.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/utimbuf.m4">utimbuf.m4</A><BR><A HREF="m4/utime.m4">utime.m4</A><BR><A HREF="m4/utimes.m4">utimes.m4</A><BR><A HREF="m4/utimes-null.m4">utimes-null.m4</A><BR>jm_FUNC_UTIME
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/utimbuf.m4">utimbuf.m4</A><BR><A HREF="m4/utime.m4">utime.m4</A><BR><A HREF="m4/utimes.m4">utimes.m4</A><BR><A HREF="m4/utimes-null.m4">utimes-null.m4</A><BR>gl_FUNC_UTIME
         <TD ALIGN=LEFT VALIGN=TOP>safe-read<BR>full-write
       </TR>
     </TABLE>
@@ -1918,12 +2320,19 @@ variables.
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=getopt"></A><A HREF="modules/getopt">getopt</A>
-        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/getopt.h">getopt.h</A>"
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getopt.c">getopt.c</A><BR><A HREF="lib/getopt1.c">getopt1.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;getopt.h&gt;
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getopt_.h">getopt_.h</A><BR><A HREF="lib/getopt.c">getopt.c</A><BR><A HREF="lib/getopt1.c">getopt1.c</A><BR><A HREF="lib/getopt_int.h">getopt_int.h</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getopt.m4">getopt.m4</A><BR>gl_GETOPT
         <TD ALIGN=LEFT VALIGN=TOP>gettext
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=fcntl-safer"></A><A HREF="modules/fcntl-safer">fcntl-safer</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/fcntl-safer.h">fcntl-safer.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/open-safer.c">open-safer.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/fcntl-safer.m4">fcntl-safer.m4</A><BR>gl_FCNTL_SAFER
+        <TD ALIGN=LEFT VALIGN=TOP>unistd-safer
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=unistd-safer"></A><A HREF="modules/unistd-safer">unistd-safer</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/unistd-safer.h">unistd-safer.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/dup-safer.c">dup-safer.c</A>
@@ -1956,7 +2365,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/exclude.h">exclude.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/exclude.c">exclude.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/exclude.m4">exclude.m4</A><BR>gl_EXCLUDE
-        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>strcase<BR>unlocked-io<BR>fnmatch-gnu<BR>stdbool
+        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>strcase<BR>fnmatch-gnu<BR>stdbool
       </TR>
     </TABLE>
     <H2><A NAME="posix_ext">Extra functions based on POSIX:2001</A></H2>
@@ -2010,11 +2419,18 @@ variables.
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=backupfile"></A><A HREF="modules/backupfile">backupfile</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/backupfile.h">backupfile.h</A>"
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/backupfile.c">backupfile.c</A><BR><A HREF="lib/addext.c">addext.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/backupfile.c">backupfile.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/dos.m4">dos.m4</A><BR><A HREF="m4/d-ino.m4">d-ino.m4</A><BR><A HREF="m4/backupfile.m4">backupfile.m4</A><BR>gl_BACKUPFILE
         <TD ALIGN=LEFT VALIGN=TOP>argmatch<BR>dirname
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=canonicalize"></A><A HREF="modules/canonicalize">canonicalize</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/canonicalize.h">canonicalize.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/canonicalize.c">canonicalize.c</A><BR><A HREF="lib/stat-macros.h">stat-macros.h</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/canonicalize.m4">canonicalize.m4</A><BR>AC_FUNC_CANONICALIZE_FILE_NAME
+        <TD ALIGN=LEFT VALIGN=TOP>cycle-check<BR>path-concat<BR>xalloc<BR>xgetcwd<BR>xreadlink
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=copy-file"></A><A HREF="modules/copy-file">copy-file</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/copy-file.h">copy-file.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/copy-file.c">copy-file.c</A>
@@ -2022,6 +2438,13 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>error<BR>safe-read<BR>full-write<BR>binary-io<BR>exit<BR>gettext
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=cycle-check"></A><A HREF="modules/cycle-check">cycle-check</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/cycle-check.h">cycle-check.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/cycle-check.c">cycle-check.c</A><BR><A HREF="lib/dev-ino.h">dev-ino.h</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>---
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=fsusage"></A><A HREF="modules/fsusage">fsusage</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/fsusage.h">fsusage.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/fsusage.c">fsusage.c</A>
@@ -2032,20 +2455,20 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=dirfd"></A><A HREF="modules/dirfd">dirfd</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/dirfd.h">dirfd.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/dirfd.c">dirfd.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/dirfd.m4">dirfd.m4</A><BR>UTILS_FUNC_DIRFD
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/dirfd.m4">dirfd.m4</A><BR>gl_FUNC_DIRFD
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=euidaccess"></A><A HREF="modules/euidaccess">euidaccess</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/euidaccess.h">euidaccess.h</A>"
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/euidaccess.c">euidaccess.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/euidaccess.c">euidaccess.c</A><BR><A HREF="lib/stat-macros.h">stat-macros.h</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/euidaccess.m4">euidaccess.m4</A><BR>gl_FUNC_EUIDACCESS
         <TD ALIGN=LEFT VALIGN=TOP>group-member
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=file-type"></A><A HREF="modules/file-type">file-type</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/file-type.h">file-type.h</A>"
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/file-type.c">file-type.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/file-type.c">file-type.c</A><BR><A HREF="lib/stat-macros.h">stat-macros.h</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/file-type.m4">file-type.m4</A><BR>gl_FILE_TYPE
         <TD ALIGN=LEFT VALIGN=TOP>gettext
       </TR>
@@ -2059,7 +2482,7 @@ variables.
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=filemode"></A><A HREF="modules/filemode">filemode</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/filemode.h">filemode.h</A>"
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/filemode.c">filemode.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/filemode.c">filemode.c</A><BR><A HREF="lib/stat-macros.h">stat-macros.h</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/filemode.m4">filemode.m4</A><BR>gl_FILEMODE
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
@@ -2073,14 +2496,14 @@ variables.
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=lchown"></A><A HREF="modules/lchown">lchown</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/lchown.h">lchown.h</A>"
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/lchown.c">lchown.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/lchown.m4">lchown.m4</A><BR>jm_FUNC_LCHOWN
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/lchown.c">lchown.c</A><BR><A HREF="lib/stat-macros.h">stat-macros.h</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/lchown.m4">lchown.m4</A><BR>gl_FUNC_LCHOWN
         <TD ALIGN=LEFT VALIGN=TOP>chown
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=makepath"></A><A HREF="modules/makepath">makepath</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/makepath.h">makepath.h</A>"
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/makepath.c">makepath.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/makepath.c">makepath.c</A><BR><A HREF="lib/stat-macros.h">stat-macros.h</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/afs.m4">afs.m4</A><BR><A HREF="m4/makepath.m4">makepath.m4</A><BR>gl_MAKEPATH
         <TD ALIGN=LEFT VALIGN=TOP>alloca<BR>chown<BR>gettext<BR>save-cwd<BR>dirname<BR>error<BR>quote
       </TR>
@@ -2096,14 +2519,14 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/mountlist.h">mountlist.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/mountlist.c">mountlist.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/ls-mntd-fs.m4">ls-mntd-fs.m4</A><BR><A HREF="m4/fstypename.m4">fstypename.m4</A><BR><A HREF="m4/mountlist.m4">mountlist.m4</A><BR>gl_MOUNTLIST
-        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>unlocked-io
+        <TD ALIGN=LEFT VALIGN=TOP>xalloc
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=path-concat"></A><A HREF="modules/path-concat">path-concat</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/path-concat.h">path-concat.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/path-concat.c">path-concat.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/dos.m4">dos.m4</A><BR><A HREF="m4/path-concat.m4">path-concat.m4</A><BR>gl_PATH_CONCAT
-        <TD ALIGN=LEFT VALIGN=TOP>strdup<BR>xalloc<BR>dirname
+        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>dirname
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=pathname"></A><A HREF="modules/pathname">pathname</A>
@@ -2124,14 +2547,14 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/same.h">same.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/same.c">same.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/same.m4">same.m4</A><BR>gl_SAME
-        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>error<BR>dirname
+        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>error<BR>dirname<BR>stdbool
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=save-cwd"></A><A HREF="modules/save-cwd">save-cwd</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/save-cwd.h">save-cwd.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/save-cwd.c">save-cwd.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/save-cwd.m4">save-cwd.m4</A><BR>gl_SAVE_CWD
-        <TD ALIGN=LEFT VALIGN=TOP>xgetcwd
+        <TD ALIGN=LEFT VALIGN=TOP>chdir-long<BR>xgetcwd
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=savedir"></A><A HREF="modules/savedir">savedir</A>
@@ -2141,11 +2564,25 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>xalloc
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=utimecmp"></A><A HREF="modules/utimecmp">utimecmp</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/utimecmp.h">utimecmp.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/utimecmp.c">utimecmp.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/utimecmp.m4">utimecmp.m4</A><BR>gl_UTIMECMP
+        <TD ALIGN=LEFT VALIGN=TOP>hash<BR>timespec<BR>utimens<BR>xalloc
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=utimens"></A><A HREF="modules/utimens">utimens</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/utimens.h">utimens.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/utimens.c">utimens.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/utimens.m4">utimens.m4</A><BR><A HREF="m4/utimes.m4">utimes.m4</A><BR>gl_UTIMENS
+        <TD ALIGN=LEFT VALIGN=TOP>timespec
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xgetcwd"></A><A HREF="modules/xgetcwd">xgetcwd</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xgetcwd.h">xgetcwd.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xgetcwd.c">xgetcwd.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getcwd.m4">getcwd.m4</A><BR><A HREF="m4/xgetcwd.m4">xgetcwd.m4</A><BR>gl_XGETCWD
-        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>pathmax
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/xgetcwd.m4">xgetcwd.m4</A><BR>gl_XGETCWD
+        <TD ALIGN=LEFT VALIGN=TOP>getcwd<BR>xalloc
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xreadlink"></A><A HREF="modules/xreadlink">xreadlink</A>
@@ -2227,7 +2664,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=fpending"></A><A HREF="modules/fpending">fpending</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/__fpending.h">__fpending.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/__fpending.c">__fpending.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/fpending.m4">fpending.m4</A><BR>jm_FUNC_FPENDING
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/fpending.m4">fpending.m4</A><BR>gl_FUNC_FPENDING
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
@@ -2235,7 +2672,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/closeout.h">closeout.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/closeout.c">closeout.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/closeout.m4">closeout.m4</A><BR>gl_CLOSEOUT
-        <TD ALIGN=LEFT VALIGN=TOP>unlocked-io<BR>gettext<BR>error<BR>quotearg<BR>fpending<BR>exitfail
+        <TD ALIGN=LEFT VALIGN=TOP>atexit<BR>gettext<BR>error<BR>quotearg<BR>fpending<BR>exitfail
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=stdio-safer"></A><A HREF="modules/stdio-safer">stdio-safer</A>
@@ -2246,17 +2683,17 @@ variables.
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=getpass"></A><A HREF="modules/getpass">getpass</A>
-        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/getpass.h">getpass.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getpass.c">getpass.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getpass.m4">getpass.m4</A><BR>gl_FUNC_GETPASS
-        <TD ALIGN=LEFT VALIGN=TOP>unlocked-io<BR>getline<BR>stdbool
+        <TD ALIGN=LEFT VALIGN=TOP>getline<BR>stdbool
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=getpass-gnu"></A><A HREF="modules/getpass-gnu">getpass-gnu</A>
-        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/getpass.h">getpass.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getpass.c">getpass.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getpass.m4">getpass.m4</A><BR>gl_FUNC_GETPASS_GNU
-        <TD ALIGN=LEFT VALIGN=TOP>unlocked-io<BR>getline
+        <TD ALIGN=LEFT VALIGN=TOP>getline<BR>stdbool
       </TR>
     </TABLE>
     <H3><A NAME="posix_ext_uidgid">Users and groups</A></H3>
@@ -2286,7 +2723,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=group-member"></A><A HREF="modules/group-member">group-member</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/group-member.h">group-member.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/group-member.c">group-member.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/group-member.m4">group-member.m4</A><BR>jm_FUNC_GROUP_MEMBER
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/group-member.m4">group-member.m4</A><BR>gl_FUNC_GROUP_MEMBER
         <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>stdbool
       </TR>
       <TR>
@@ -2301,7 +2738,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/userspec.h">userspec.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/userspec.c">userspec.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/userspec.m4">userspec.m4</A><BR>gl_USERSPEC
-        <TD ALIGN=LEFT VALIGN=TOP>alloca<BR>posixver<BR>xalloc<BR>xstrtol<BR>strdup<BR>gettext
+        <TD ALIGN=LEFT VALIGN=TOP>posixver<BR>xalloc<BR>xstrtol<BR>strdup<BR>gettext
       </TR>
     </TABLE>
     <H3><A NAME="posix_ext_datetime">Date and time</A></H3>
@@ -2339,7 +2776,14 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/posixtm.h">posixtm.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/posixtm.c">posixtm.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/posixtm.m4">posixtm.m4</A><BR>gl_POSIXTM
-        <TD ALIGN=LEFT VALIGN=TOP>mktime<BR>unlocked-io
+        <TD ALIGN=LEFT VALIGN=TOP>mktime
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=xnanosleep"></A><A HREF="modules/xnanosleep">xnanosleep</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xnanosleep.h">xnanosleep.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xnanosleep.c">xnanosleep.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>timespec<BR>xalloc
       </TR>
     </TABLE>
     <H3><A NAME="posix_ext_net">Networking functions</A></H3>
@@ -2363,14 +2807,14 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/xgethostname.h">xgethostname.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/xgethostname.c">xgethostname.c</A>
         <TD ALIGN=LEFT VALIGN=TOP>---
-        <TD ALIGN=LEFT VALIGN=TOP>gethostname<BR>xalloc<BR>error<BR>exit
+        <TD ALIGN=LEFT VALIGN=TOP>gethostname<BR>xalloc
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=canon-host"></A><A HREF="modules/canon-host">canon-host</A>
         <TD ALIGN=LEFT VALIGN=TOP>---
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/canon-host.c">canon-host.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/canon-host.m4">canon-host.m4</A><BR>gl_CANON_HOST
-        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>strdup
       </TR>
     </TABLE>
     <H3><A NAME="posix_ext_i18n">Internationalization functions</A></H3>
@@ -2415,7 +2859,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/hard-locale.h">hard-locale.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/hard-locale.c">hard-locale.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/hard-locale.m4">hard-locale.m4</A><BR>gl_HARD_LOCALE
-        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>strdup
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=mbswidth"></A><A HREF="modules/mbswidth">mbswidth</A>
@@ -2461,10 +2905,10 @@ variables.
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=yesno"></A><A HREF="modules/yesno">yesno</A>
-        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/yesno.h">yesno.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/yesno.c">yesno.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/yesno.m4">yesno.m4</A><BR>gl_YESNO
-        <TD ALIGN=LEFT VALIGN=TOP>unlocked-io<BR>rpmatch
+        <TD ALIGN=LEFT VALIGN=TOP>rpmatch
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=ucs4-utf8"></A><A HREF="modules/ucs4-utf8">ucs4-utf8</A>
@@ -2519,6 +2963,13 @@ variables.
         <TH ALIGN=LEFT>Depends on
       </TR>
       <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=cloexec"></A><A HREF="modules/cloexec">cloexec</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/cloexec.h">cloexec.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/cloexec.c">cloexec.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/cloexec.m4">cloexec.m4</A><BR>gl_CLOEXEC
+        <TD ALIGN=LEFT VALIGN=TOP>stdbool
+      </TR>
+      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=findprog"></A><A HREF="modules/findprog">findprog</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/findprog.h">findprog.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/findprog.c">findprog.c</A>
@@ -2532,6 +2983,27 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/wait-process.m4">wait-process.m4</A><BR><A HREF="m4/sig_atomic_t.m4">sig_atomic_t.m4</A><BR>gl_WAIT_PROCESS
         <TD ALIGN=LEFT VALIGN=TOP>fatal-signal<BR>error<BR>exit<BR>xalloc<BR>gettext<BR>stdbool
       </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=execute"></A><A HREF="modules/execute">execute</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/execute.h">execute.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/execute.c">execute.c</A><BR><A HREF="lib/w32spawn.h">w32spawn.h</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/execute.m4">execute.m4</A><BR>gl_EXECUTE
+        <TD ALIGN=LEFT VALIGN=TOP>error<BR>exit<BR>fatal-signal<BR>wait-process<BR>gettext<BR>stdbool<BR>strpbrk
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=pipe"></A><A HREF="modules/pipe">pipe</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/pipe.h">pipe.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/pipe.c">pipe.c</A><BR><A HREF="lib/w32spawn.h">w32spawn.h</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/pipe.m4">pipe.m4</A><BR>gl_PIPE
+        <TD ALIGN=LEFT VALIGN=TOP>wait-process<BR>error<BR>exit<BR>fatal-signal<BR>gettext<BR>stdbool<BR>strpbrk
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=sh-quote"></A><A HREF="modules/sh-quote">sh-quote</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/sh-quote.h">sh-quote.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/sh-quote.c">sh-quote.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>quotearg<BR>xalloc
+      </TR>
     </TABLE>
     <H3><A NAME="posix_ext_java">Java</A></H3>
     <H3><A NAME="posix_ext_misc">Misc</A></H3>
@@ -2555,7 +3027,14 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/argp.h">argp.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/argp-ba.c">argp-ba.c</A><BR><A HREF="lib/argp-eexst.c">argp-eexst.c</A><BR><A HREF="lib/argp-fmtstream.c">argp-fmtstream.c</A><BR><A HREF="lib/argp-fmtstream.h">argp-fmtstream.h</A><BR><A HREF="lib/argp-fs-xinl.c">argp-fs-xinl.c</A><BR><A HREF="lib/argp-help.c">argp-help.c</A><BR><A HREF="lib/argp-namefrob.h">argp-namefrob.h</A><BR><A HREF="lib/argp-parse.c">argp-parse.c</A><BR><A HREF="lib/argp-pv.c">argp-pv.c</A><BR><A HREF="lib/argp-pvh.c">argp-pvh.c</A><BR><A HREF="lib/argp-xinl.c">argp-xinl.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/argp.m4">argp.m4</A><BR>gl_ARGP
-        <TD ALIGN=LEFT VALIGN=TOP>alloca<BR>getopt<BR>strchrnul<BR>sysexits<BR>mempcpy<BR>strndup<BR>restrict<BR>strcase
+        <TD ALIGN=LEFT VALIGN=TOP>alloca<BR>getopt<BR>strchrnul<BR>sysexits<BR>mempcpy<BR>strndup<BR>restrict<BR>strcase<BR>extensions<BR>vsnprintf
+      </TR>
+      <TR>
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=argz"></A><A HREF="modules/argz">argz</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;argz.h&gt;
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/argz_.h">argz_.h</A><BR><A HREF="lib/argz.c">argz.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/argz.m4">argz.m4</A><BR>gl_FUNC_ARGZ
+        <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=exitfail"></A><A HREF="modules/exitfail">exitfail</A>
@@ -2576,7 +3055,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/error.h">error.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/error.c">error.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/error.m4">error.m4</A><BR><A HREF="m4/strerror_r.m4">strerror_r.m4</A><BR>gl_ERROR
-        <TD ALIGN=LEFT VALIGN=TOP>unlocked-io<BR>gettext
+        <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=extensions"></A><A HREF="modules/extensions">extensions</A>
@@ -2586,13 +3065,6 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
-        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=fatal"></A><A HREF="modules/fatal">fatal</A>
-        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/fatal.h">fatal.h</A>"
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/fatal.c">fatal.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/fatal.m4">fatal.m4</A><BR>gl_FATAL
-        <TD ALIGN=LEFT VALIGN=TOP>error<BR>unlocked-io<BR>exit
-      </TR>
-      <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=getdomainname"></A><A HREF="modules/getdomainname">getdomainname</A>
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/getdomainname.h">getdomainname.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getdomainname.c">getdomainname.c</A>
@@ -2611,7 +3083,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>---
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getloadavg.c">getloadavg.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getloadavg.m4">getloadavg.m4</A><BR>gl_FUNC_GETLOADAVG
-        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP>cloexec<BR>xalloc
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=getpagesize"></A><A HREF="modules/getpagesize">getpagesize</A>
@@ -2625,7 +3097,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>---
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/getusershell.c">getusershell.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/getusershell.m4">getusershell.m4</A><BR>gl_PREREQ_GETUSERSHELL
-        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>unlocked-io
+        <TD ALIGN=LEFT VALIGN=TOP>xalloc
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=physmem"></A><A HREF="modules/physmem">physmem</A>
@@ -2646,7 +3118,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/progname.h">progname.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/progname.c">progname.c</A>
         <TD ALIGN=LEFT VALIGN=TOP>---
-        <TD ALIGN=LEFT VALIGN=TOP>stdbool
+        <TD ALIGN=LEFT VALIGN=TOP>---
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=quotearg"></A><A HREF="modules/quotearg">quotearg</A>
@@ -2667,7 +3139,7 @@ variables.
         <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/readutmp.h">readutmp.h</A>"
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/readutmp.c">readutmp.c</A>
         <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/readutmp.m4">readutmp.m4</A><BR>gl_READUTMP
-        <TD ALIGN=LEFT VALIGN=TOP>xalloc<BR>unlocked-io
+        <TD ALIGN=LEFT VALIGN=TOP>xalloc
       </TR>
       <TR>
         <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=sig2str"></A><A HREF="modules/sig2str">sig2str</A>
@@ -2701,24 +3173,23 @@ variables.
         <TH ALIGN=LEFT>Depends on
       </TR>
       <TR>
-        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=free"></A><A HREF="modules/free">free</A>
-        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/stdlib.h.html">stdlib.h</A>&gt;
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/free.c">free.c</A>
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/free.m4">free.m4</A><BR>gl_FUNC_FREE
-        <TD ALIGN=LEFT VALIGN=TOP>---
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=chdir-long"></A><A HREF="modules/chdir-long">chdir-long</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/chdir-long.h">chdir-long.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/chdir-long.c">chdir-long.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/chdir-long.m4">chdir-long.m4</A><BR>gl_FUNC_CHDIR_LONG
+        <TD ALIGN=LEFT VALIGN=TOP>openat<BR>mempcpy
       </TR>
       <TR>
-        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=tzset"></A><A HREF="modules/tzset">tzset</A>
-        <TD ALIGN=LEFT VALIGN=TOP>#include &lt;<A HREF="http://www.opengroup.org/onlinepubs/007904975/basedefs/time.h.html">time.h</A>&gt;
-        <TD ALIGN=LEFT VALIGN=TOP>---
-        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/tzset.m4">tzset.m4</A><BR>gl_FUNC_TZSET_CLOBBER
-        <TD ALIGN=LEFT VALIGN=TOP>gettimeofday
+        <TD ALIGN=LEFT VALIGN=TOP><A NAME="module=openat"></A><A HREF="modules/openat">openat</A>
+        <TD ALIGN=LEFT VALIGN=TOP>#include "<A HREF="lib/openat.h">openat.h</A>"
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="lib/openat.c">openat.c</A>
+        <TD ALIGN=LEFT VALIGN=TOP><A HREF="m4/openat.m4">openat.m4</A><BR>gl_FUNC_OPENAT
+        <TD ALIGN=LEFT VALIGN=TOP>save-cwd<BR>gettext<BR>error<BR>exitfail
       </TR>
     </TABLE>
     <H2>Lone files - please create new modules containing them</H2>
     <PRE>
 <A HREF="lib/progreloc.c">lib/progreloc.c</A>
-<A HREF="lib/userspec.h">lib/userspec.h</A>
 <A HREF="m4/check-decl.m4">m4/check-decl.m4</A>
 <A HREF="m4/d-type.m4">m4/d-type.m4</A>
 <A HREF="m4/glibc.m4">m4/glibc.m4</A>
@@ -2736,6 +3207,7 @@ variables.
 <A HREF="m4/rmdir-errno.m4">m4/rmdir-errno.m4</A>
 <A HREF="m4/search-libs.m4">m4/search-libs.m4</A>
 <A HREF="m4/st_dm_mode.m4">m4/st_dm_mode.m4</A>
+<A HREF="m4/uintptr_t.m4">m4/uintptr_t.m4</A>
 <A HREF="m4/unlink-busy.m4">m4/unlink-busy.m4</A>
 <A HREF="m4/uptime.m4">m4/uptime.m4</A>
 </PRE>
@@ -2751,6 +3223,6 @@ variables.
       <LI>A testsuite
     </UL>
     <HR>
-    Generated from <CODE>MODULES.html.sh</CODE> on  6 December 2003.
+    Generated from <CODE>MODULES.html.sh</CODE> on 20 January 2005.
   </BODY>
 </HTML>