aboutsummaryrefslogtreecommitdiffstats
path: root/packages/glibc/glibc-2.3.2/glibc-2.3.2-200304020432.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packages/glibc/glibc-2.3.2/glibc-2.3.2-200304020432.patch')
-rw-r--r--packages/glibc/glibc-2.3.2/glibc-2.3.2-200304020432.patch136135
1 files changed, 136135 insertions, 0 deletions
diff --git a/packages/glibc/glibc-2.3.2/glibc-2.3.2-200304020432.patch b/packages/glibc/glibc-2.3.2/glibc-2.3.2-200304020432.patch
index e69de29bb2..2fcd1f2da6 100644
--- a/packages/glibc/glibc-2.3.2/glibc-2.3.2-200304020432.patch
+++ b/packages/glibc/glibc-2.3.2/glibc-2.3.2-200304020432.patch
@@ -0,0 +1,136135 @@
+diff -u -udbrN glibc-2.3.2/ChangeLog glibc-2.3.2-200304020432/ChangeLog
+--- glibc-2.3.2/ChangeLog Sat Mar 1 02:10:14 2003
++++ glibc-2.3.2-200304020432/ChangeLog Wed Apr 2 06:00:15 2003
+@@ -1,3 +1,1581 @@
++2003-04-01 Roland McGrath <roland@redhat.com>
++
++ * scripts/abilist.awk: Allow dots in soname suffix.
++
++ * scripts/abilist.awk (emit): Fix bailout condition.
++
++2003-04-01 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
++ IA-64 version.
++
++ * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
++ register as input to asm.
++
++2003-04-01 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
++
++2003-04-01 Andreas Jaeger <aj@suse.de>
++
++ * configure.in: Output as/ld as name if version is too old.
++
++2003-03-31 Daniel Jacobowitz <drow@mvista.com>
++
++ * configure.in: Don't require an installed C library in the test
++ for ".set" assembler support.
++
++2003-03-31 Roland McGrath <roland@redhat.com>
++
++ * signal/tst-sigset.c: New file.
++ * signal/Makefile (tests): Add it.
++
++2003-03-31 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
++ * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
++ * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
++ * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
++ (__SIGRTMAX): Adjust accordingly.
++ * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
++ second compatibility symbol set.
++ * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
++
++2003-03-31 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
++ Define.
++ (atomic_decrement_and_test): Fix test.
++
++2003-03-31 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/sparc/sparc32/bits/atomic.h: New file.
++ * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
++ * sysdeps/sparc/sparc64/bits/atomic.h: New file.
++ * sysdeps/sparc/sparc32/atomicity.h: Removed.
++ * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
++ * sysdeps/sparc/sparc64/atomicity.h: Removed.
++
++2003-03-30 Roland McGrath <roland@redhat.com>
++
++ * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
++
++ * intl/po2test.sed: Anchor substitution regexps to fix last change.
++
++2003-03-29 Paolo Bonzini <bonzini@gnu.org>
++
++ * intl/po2test.sed: Unify the transformations for msgid and msgstr
++ and remove a useless s/// command.
++
++2003-03-27 David Mosberger <davidm@hpl.hp.com>
++
++ * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
++ directive into empty .prologue region to ensure that call-chain
++ is terminated even for the first instruction.
++
++ * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
++ to terminate call-chain right from the get-go.
++
++ * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
++ stop bit between compare & branch.
++
++2003-03-29 Ulrich Drepper <drepper@redhat.com>
++
++ * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
++ point correctly [PR libc/4993].
++
++ * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
++ netlink_open calls if netlink is known to not be available.
++
++2003-03-29 Alexandre Oliva <aoliva@redhat.com>
++
++ * configure.in: Add mips64* support.
++ * sysdeps/mips/bits/endian.h: Make it bi-endian.
++ * sysdeps/mips/mipsel/bits/endian.h: Removed.
++ * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
++ * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
++ * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
++ * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
++ * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
++ * sysdeps/mips/Implies: Moved wordsize-32 to...
++ * sysdeps/mips/mips32/Implies: New file.
++ * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
++ ret_NOERRNO): New.
++ (ret, PSEUDO_END): Moved past END.
++ (PSEUDO): Moved to...
++ * sysdeps/unix/mips/mips32/sysdep.h: New file.
++ * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
++ * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
++ * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
++ * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
++
++ * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
++ Re-introduce ENTRY.
++
++2003-03-28 Thorsten Kukuk <kukuk@suse.de>
++
++ * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
++ * inet/test-ifaddrs.c: Allow AF_PACKET.
++ * sysdeps/unix/sysv/linux/kernel-features.h: Add
++ __ASSUME_NETLINK_SUPPORT.
++
++2003-03-28 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/vismain.c (do_test): Comment out tests which fail in the moment.
++
++2003-03-26 H.J. Lu <hjl@gnu.org>
++
++ * elf/vismod.h (getvarlocal1): Return const char **.
++ (getvarinmod1): Likewise.
++ (getvaritcpt1): Likewise.
++ (getvarlocal2): Likewise.
++ (getvarinmod2): Likewise.
++ (getvaritcpt2): Likewise.
++ (getvaritcpt3): Likewise.
++ * elf/vismain.c (do_test): Adjusted.
++ * elf/vismod1.c (getvarlocal1): Return address.
++ (getvarinmod1): Likewise.
++ (getvaritcpt1): Likewise.
++ * elf/vismod2.c (getvarlocal2): Likewise.
++ (getvarinmod2): Likewise.
++ (getvaritcpt2): Likewise.
++ * elf/vismod3.c (getvaritcpt3): Likewise.
++
++2003-03-28 Roland McGrath <roland@redhat.com>
++
++ * elf/vismain.c (do_test): Print both addresses when they don't match.
++
++ * scripts/abilist.awk: If given -v filename_regexp and/or -v
++ libname_regexp when parsing names, then produce output only
++ for those matching the given regexps. In combine mode, save all
++ stanzas for a final sorting by stanza header at the end.
++ Emit a blank line between stanzas.
++
++ * scripts/abilist.awk: When given -v combine=1, do parse_names and
++ emit a single output stream with lib name in stanza header lines.
++
++ * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
++
++2003-03-27 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
++ (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
++
++2003-03-28 Kaz Kojima <kkojima@rr.iij4u.or.jp>
++
++ * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
++ Return old value. Make asm output reg constraint earlyclobber.
++ Renamed from...
++ (__arch_compare_and_exchange_8_acq): ... this.
++ (__arch_compare_and_exchange_val_16_acq):
++ Return old value. Make asm output reg constraint earlyclobber.
++ Renamed from...
++ (__arch_compare_and_exchange_16_acq): ... this.
++ (__arch_compare_and_exchange_val_32_acq):
++ Return old value. Make asm output reg constraint earlyclobber.
++ Renamed from...
++ (__arch_compare_and_exchange_32_acq): ... this.
++ (__arch_compare_and_exchange_val_64_acq):
++ Renamed from...
++ (__arch_compare_and_exchange_64_acq): ... this.
++ (atomic_exchange_and_add): Use local variables and
++ __arch_compare_and_exchange_val_64_acq.
++ (atomic_add): Likewise.
++ (atomic_add_negative, atomic_add_zero): Use local variables.
++
++2003-03-28 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
++
++2003-03-27 Ulrich Drepper <drepper@redhat.com>
++
++ * Makefile: Remove libmd5crypt goal.
++
++2003-03-25 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
++ special handling of relocations against local symbols.
++
++2003-03-27 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/bits/atomic.h
++ (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
++ [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
++ Define PPC64 specific version.
++ [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
++ Change (mem) constraint to "b".
++ [__powerpc64__] (__arch_atomic_exchange_and add_64):
++ Replace addi with add. Change (value) contraint to "r".
++ Change (mem) constraint to "b".
++ [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
++ (__arch_atomic_exchange_32): Change (mem) constraint to "b".
++ (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
++ (__arch_atomic_decrement_if_positive_32): New macro.
++ (atomic_decrement_if_positive): Use __arch* macros.
++
++2003-03-27 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/ia64/fpu/libm-test-ulps: Update.
++
++2003-03-27 Roland McGrath <roland@redhat.com>
++
++ * scripts/rpm2dynsym.sh: New file.
++ * Makefile (distribute): Add it.
++
++2003-03-27 David Mosberger <davidm@hpl.hp.com>
++
++ * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
++ ar.unat before returning. Add missing .mem.offset directives
++ to ensure file gets assembled without warnings.
++ * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
++
++2003-03-27 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
++ Return -1 instead of 0 if clock_getres failed.
++
++2003-03-27 Roland McGrath <roland@redhat.com>
++
++ * scripts/abilist.awk: If variable `parse_names' is set, grok the file
++ header lines and write out foo.symlist files for each foo.so.NN listed.
++
++ * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
++ This symbol is exported, and we don't want to hide it.
++ Add libc_hidden_proto instead.
++ (_IO_file_jumps): Add libc_hidden_proto.
++ * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
++ Remove INTVARDEF.
++ * libio/fileops.c (_IO_file_jumps): Likewise.
++ * libio/stdfiles.c: Don't use INTUSE on them.
++ * libio/iofdopen.c (_IO_new_fdopen): Likewise.
++ * libio/iofopen.c (__fopen_internal): Likewise.
++ * libio/freopen.c (freopen): Likewise.
++ * libio/freopen64.c (freopen64): Likewise.
++ * libio/iovdprintf.c (_IO_vdprintf): Likewise.
++
++ * Makerules (check-abi) [$(enable-check-abi) = warn]:
++ Ignore exit status from diff.
++ * configure.in (enable_check_abi): Document possible value "warn".
++ Change default to no for now.
++ * configure: Regenerated.
++
++ * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
++ macro calls and a #include <stub-tag.h> at the end.
++ * Makerules ($(objpfx)stubs): Tweak sed commands.
++
++ * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
++ caller column for *xattr syscalls, since they are in sysdeps/generic.
++
++ * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
++ * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
++
++2003-03-26 Roland McGrath <roland@redhat.com>
++
++ * Makerules (check-abi-config): Use /thread instead of /tls when
++ use-thread and not just use-tls is set.
++
++ * Makerules (update-abi): Put quotes around $(update-abi-config).
++
++ * elf/Makefile (check-abi): Depend on check-abi-ld.
++ (update-abi): Depend on update-abi-ld.
++
++2003-03-26 GOTO Masanori <gotom@debian.or.jp>
++
++ * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
++ do not check for errors (unless testing for 32bit variant).
++ * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
++
++2003-03-27 Philip Blundell <philb@gnu.org>
++
++ * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
++ unconditional mov. Remove nop.
++
++ * sysdeps/unix/sysv/linux/kernel-features.h
++ (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
++ * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
++ when __ASSUME_VFORK_SYSCALL is defined.
++ * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
++ __ASSUME_MMAP2_SYSCALL.
++ * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
++ __ASSUME_REALTIME_SIGNALS.
++
++2003-03-26 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
++ only if DL_NO_COPY_RELOCS is not defined.
++ * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
++
++2003-03-26 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
++ SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
++ * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
++ (sysdep_routines): Add stub-syscalls.
++ ($(objpfx)stub-syscalls.c): New target.
++ (generated): Add stub-syscalls.c.
++
++ * tls.make.c: Also define use-tls according to USE_TLS macro.
++
++2003-03-26 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
++ no-op padding element.
++ * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
++
++2003-03-26 GOTO Masanori <gotom@debian.or.jp>
++
++ * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
++ condition check for the return value of getgroups32.
++
++2003-03-26 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
++ Fix a typo.
++ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
++ PSEUDO_END_NOERRNO): Define.
++ * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
++ Define to PSEUDO_END.
++
++2003-03-26 Ulrich Drepper <drepper@redhat.com>
++
++ * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
++
++2003-03-25 Jiro SEKIBA <jir@yamato.ibm.com>
++
++ * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
++ * iconvdata/bug-iconv4.c: New file.
++ * iconvdata/Makefile (tests): Add bug-iconv4.
++
++2003-03-25 H.J. Lu <hjl@gnu.org>
++
++ * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
++ symbols twice.
++ (_dl_lookup_versioned_symbol): Likewise.
++
++2003-03-26 Jakub Jelinek <jakub@redhat.com>
++
++ * csu/tst-atomic.c (do_test): Add some new
++ atomic_compare_and_exchange_val_acq, atomic_add_zero,
++ atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
++ * include/atomic.h (atomic_add_negative, atomic_add_zero):
++ Prefix local variable so that it doesn't clash with the one
++ in atomic_exchange_and_add.
++ * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
++ pointers.
++ (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
++ * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
++ value into register.
++ * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
++ Cast newval to long.
++ * sysdeps/x86_64/bits/atomic.h
++ (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
++ long.
++ (atomic_exchange): Cast newvalue to long if sizeof == 8.
++ (atomic_exchange_and_add): Cast value to long if sizeof == 8.
++ (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
++ (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
++
++2003-03-21 Martin Schwidefsky <schwidefskyde.ibm.com>
++
++ * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
++ bit from backtrace addresses.
++
++2003-03-21 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
++ __chown symbols.
++
++2003-03-25 Roland McGrath <roland@redhat.com>
++
++ * config.make.in (enable-check-abi): New variable from configure.
++ * configure.in (enable_check_abi): New substituted variable,
++ controlled by --{enable,disable}-check-abi (default yes).
++ * configure: Regenerated.
++ * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
++ on check-abi dependency.
++
++2003-03-26 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
++ * include/atomic.h: Likewise.
++
++ * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
++
++2003-03-25 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
++ (__arch_atomic_exchange_64): New macro.
++ (atomic_exchange): Use them.
++ (__arch_atomic_exchange_and_add_32): New macro.
++ (__arch_atomic_exchange_and_add_64): New macro.
++ (atomic_exchange_and_add): Use them.
++ Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
++
++2003-03-25 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
++ Define.
++ * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
++ ISA tests.
++ (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
++ (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
++ * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
++ to decide whether to add padding.
++ * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
++ to decide whether to add padding.
++ * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
++ old_kernel_sigaction): Likewise.
++
++2003-03-25 Ulrich Drepper <drepper@redhat.com>
++
++ * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
++ atomic_add_zero were supposed to do.
++ * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
++ to x86 behavior.
++
++ * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
++ This matches the new timer implementation.
++ * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
++ Likewise.
++ * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
++ Likewise.
++ * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
++ timer info for what the kernel provides these days.
++ (struct sigevent): Add _tid field.
++ Define SIGEV_THREAD_ID.
++ Remove struct __pthread_attr_s forward declaration.
++ * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
++ * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
++
++ * Versions.def (librt): Add GLIBC_2.3.3.
++
++ * abilist/libpthread.abilist: Update for nptl.
++
++2003-03-24 Jon Grimm <jgrimm@us.ibm.com>
++
++ * inet/netinet/in.h: Add IPPROTO_SCTP.
++
++2003-03-24 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
++
++2003-03-24 Philip Blundell <philb@gnu.org>
++
++ * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
++ Remove a1 from clobber list.
++
++2003-03-24 Ulrich Drepper <drepper@redhat.com>
++
++ * timezone/antarctica: Update from tzdata2003a.
++ * timezone/asia: Likewise.
++ * timezone/australasia: Likewise.
++ * timezone/europe: Likewise.
++ * timezone/iso3166.tab: Likewise.
++ * timezone/northamerica: Likewise.
++ * timezone/southamerica: Likewise.
++ * timezone/zone.tab: Likewise.
++
++2003-03-24 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
++
++2003-03-23 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
++ unwanted expansion by definining to ret. Patch by Ian Wienand.
++
++ * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
++ the parameter description to denote no error checking. Generate
++ appropriate pseudo asm code.
++ * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
++ * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
++ getpgrp, and getppid with 'E'.
++ * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
++ PSEUDO_END_NOERRNO, and ret_NOERRNO.
++ * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
++ * sysdeps/unix/sysdep.h: Likewise.
++ * sysdeps/unix/alpha/sysdep.h: Likewise.
++ * sysdeps/unix/sparc/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
++ * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
++
++2003-03-23 Roland McGrath <roland@redhat.com>
++
++ * Makeconfig (+includes): Don't use $(last-includes).
++
++2003-03-22 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
++ * sysdeps/unix/sysv/linux/configure: Rebuilt.
++
++2003-03-23 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/alpha/fpu/libm-test-ulps: Update.
++ * sysdeps/arm/libm-test-ulps: Update.
++ * sysdeps/hppa/fpu/libm-test-ulps: Update.
++ * sysdeps/ia64/fpu/libm-test-ulps: Update.
++ * sysdeps/mips/fpu/libm-test-ulps: Update.
++ * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
++ * sysdeps/powerpc/fpu/libm-test-ulps: Update.
++ * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
++ * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
++ * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
++ * sysdeps/s390/fpu/libm-test-ulps: Update.
++ * sysdeps/x86_64/fpu/libm-test-ulps: Update.
++
++2003-03-22 Roland McGrath <roland@redhat.com>
++
++ * include/atomic.h: Put parens around all macro arguments.
++ (__atomic_val_bysize, __atomic_bool_bysize): New macros.
++ (atomic_compare_and_exchange_val_acq): Use it.
++ (atomic_compare_and_exchange_bool_acq): Likewise.
++ (atomic_increment_and_test): Invert sense of test.
++ (atomic_decrement_and_test): Likewise.
++ * csu/tst-atomic.c: Update those tests to match.
++
++2003-03-22 Jakub Jelinek <jakub@redhat.com>
++
++ * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
++ Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
++ (atomic_compare_and_exchange_bool_acq): Add comment. Don't use
++ __oldval variable in the macro, since it might be macro argument.
++ (atomic_decrement_if_positive): Initialize __memp, remove setting
++ of non-existent variable.
++ (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
++ * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
++ using atomic_compare_and_exchange_val_acq.
++ (atomic_decrement_if_positive, atomic_bit_test_set): Define.
++ * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
++ Renamed from...
++ (__arch_compare_and_exchange_bool_8_acq): ... this.
++ (__arch_compare_and_exchange_val_16_acq): Renamed from...
++ (__arch_compare_and_exchange_bool_16_acq): ... this.
++ (__arch_compare_and_exchange_val_32_acq): Return old value. Renamed
++ from...
++ (__arch_compare_and_exchange_bool_32_acq): ... this.
++ (__arch_compare_and_exchange_val_64_acq): Return old value. Renamed
++ from...
++ (__arch_compare_and_exchange_bool_64_acq): ... this.
++ (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
++ variables types instead of assuming int.
++ Change prefix of local variables to __arch.
++ * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
++ Remove.
++ (atomic_compare_and_exchange_val_acq,
++ atomic_compare_and_exchange_bool_acq): Define.
++
++ * csu/tst-atomic.c: New test.
++ * csu/tst-atomic-long.c: New test.
++ * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
++
++ * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
++
++ * sysdeps/s390/Versions: Add trailing newline.
++
++ * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
++ if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
++
++2003-03-22 Andreas Schwab <schwab@suse.de>
++
++ * sysdeps/m68k/fpu/libm-test-ulps: Update.
++
++ * sysdeps/m68k/m68020/bits/atomic.h: New file.
++ * sysdeps/m68k/m68020/atomicity.h: Removed.
++
++2003-03-22 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
++ data structures and macros. Protect from multiple inclusion.
++
++ * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
++ typo in #if test.
++
++2003-03-21 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/i386/fpu/libm-test-ulps: Update.
++
++ * math/libm-test.inc (tgamma_test): Recompute some constants with
++ 36 digits precision.
++ (lgamma_test): Likewise.
++ (ccos_test): Likewise.
++ (ccosh_test): Likewise.
++ (clog10_test): Likewise.
++ (csin_test): Likewise.
++ (csinh_test): Likewise.
++ (ctan_test): Likewise.
++ (ctanh_test): Likewise.
++
++2003-03-19 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
++
++2003-03-21 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
++ constraint to permit non-constant BIT argument.
++ (atomic_bit_test_set): Likewise.
++ * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
++ (atomic_bit_set): Likewise. Use 1UL in case that BIT might be >= 32.
++ For quadword case, use "i" constraint if __builtin_constant_p and < 32
++ or "r" constraint otherwise.
++
++ * configure.in: Move AC_PROG_CC and other program-finding before all
++ the version checks.
++ * configure: Regenerated.
++
++2003-03-21 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
++ unaligned copying of 8-15 bytes. From Chris Demetriou
++ <cgd@broadcom.com>. Fix label names.
++ * sysdeps/mips/mips64/memset.S: Fix label names. Make similar
++ change as to memcpy.S.
++ * sysdeps/mips/memcpy.S: Formatting changes.
++ * sysdeps/mips/memset.S: Likewise.
++
++2003-03-21 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
++
++2003-03-21 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
++ * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
++
++2003-03-21 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/i386/i486/bits/atomic.h
++ (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
++ version of the macro to avoid compile-time warnings.
++ [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
++ (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
++ (atomic_increment, atomic_decrement): Likewise.
++
++2003-03-21 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
++ * sysdeps/i386/i486/bits/atomic.h: Likewise.
++
++2003-03-21 Roland McGrath <roland@redhat.com>
++
++ * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
++
++2003-03-20 Ulrich Drepper <drepper@redhat.com>
++
++ * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
++ atomic_compare_and_exchange_val_rel,
++ atomic_compare_and_exchange_bool_acq, and
++ atomic_compare_and_exchange_bool_rel instead of
++ atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
++ * sysdeps/i386/i486/bits/atomic.h: Define
++ __arch_compare_and_exchange_val_*_acq instead of
++ __arch_compare_and_exchange_*_acq.
++ * sysdeps/x86_64/bits/atomic.h: Likewise.
++ * sysdeps/ia64/bits/atomic.h: Define
++ __arch_compare_and_exchange_bool_*_acq instead of
++ __arch_compare_and_exchange_*_acq.
++ * sysdeps/powerpc/bits/atomic.h: Likewise.
++ * sysdeps/s390/bits/atomic.h: Likewise.
++ * gmon/mcount.c: Adjust for new form of compare&exchange macros.
++ * malloc/set-freeres.c: Likewise.
++ * nscd/cache.c: Likewise.
++ * stdlib/cxa_finalize.c: Likewise.
++ * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
++
++2003-03-20 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
++ * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
++ * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
++
++ * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
++ into high and low halves on n64.
++ * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
++ * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
++
++2003-03-20 Ulrich Drepper <drepper@redhat.com>
++
++ * include/atomic.h (atomic_decrement_if_positive): Adjust for the
++ correct atomic_compare_and_exchange_acq semantics.
++
++2003-03-20 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/ieee754.h: Remove excess #endif.
++
++2003-03-20 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
++ variable. Remove superfluous memory clobber.
++
++ * include/atomic.h: Syntax braino fix.
++
++ * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
++ in decimal. Don't bail if niced at start. Just check that nice call
++ bumps the total at all.
++
++2003-03-20 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
++ including pc, gp, sp and fp, as long long.
++ * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
++ * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
++ Add gp argument, and set gp in the jmpbuf to it.
++ * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
++
++2003-03-20 Ulrich Drepper <drepper@redhat.com>
++
++ * include/atomic.h: Define atomic_exchange and
++ atomic_decrement_if_positive if not already defined. Add some
++ __builtin_expect.
++ * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
++ * sysdeps/x86_64/bits/atomic.h: Likewise.
++ * sysdeps/ia64/bits/atomic.h: Pretty printing. Define atomic_exchange.
++ * sysdeps/powerpc/bits/atomic.h: Pretty printing. Define
++ atomic_exchange, atomic_exchange_and_add, and
++ atomic_decrement_if_positive
++
++2003-03-20 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
++ with a single instruction.
++
++ * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
++ properly for n64.
++ (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
++ type.
++ (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
++ Word before comparing with gotsym. Take reloc_addr argument as
++ void*. Remove the code added for the compiler to drop any
++ alignment assumptions.
++
++2003-03-19 Ulrich Drepper <drepper@redhat.com>
++
++ * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
++ * include/atomic.h: New file.
++ * sysdeps/i386/i486/bits/atomic.h: New file.
++ * sysdeps/x86_64/bits/atomic.h: New file.
++ * sysdeps/s390/bits/atomic.h: New file.
++ * sysdeps/sh/bits/atomic.h: New file.
++ * sysdeps/ia64/bits/atomic.h: New file.
++ * sysdeps/powerpc/bits/atomic.h: New file.
++ * sysdeps/generic/bits/atomic.h: New file.
++ * sysdeps/i386/i486/atomicity.h: Removed.
++ * sysdeps/x86_64/atomicity.h: Removed.
++ * sysdeps/s390/s390-32/atomicity.h: Removed.
++ * sysdeps/s390/s390-64/atomicity.h: Removed.
++ * sysdeps/ia64/atomicity.h: Removed.
++ * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
++ * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
++ * elf/dl-profile.c: Use atomic.h instead of atomicity.h. Adjust
++ use of macros from atomicity.h to new names and semantics.
++ * gmon_mcount.c: Likewise.
++ * malloc/set-freeres.c: Likewise.
++ * nscd/cache.c: Likewise.
++ * stdlib/cxa_finalize.c: Likewise.
++ * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
++
++2003-03-19 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/ieee754.h: New file, suitable to replace both
++ ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
++ mips-specific for now.
++
++2003-03-19 Ulrich Drepper <drepper@redhat.com>
++
++ * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
++ hexdigits correctly. Reported by Fred Tydeman <tydeman@tybor.com>.
++ * stdlib/tst-strtod.c: Add test for the bug.
++
++ * posix/tst-nice.c (do_test): Remove invalid of return value.
++ Don't run test if initial level != 0.
++
++2003-03-19 Amos Waterland <apw@us.ibm.com>
++
++ * posix/tst-nice.c: New file.
++ * posix/Makefile (tests): Add tst-nice.
++
++2003-03-18 Roland McGrath <roland@redhat.com>
++
++ * abilist: New directory of libfoo.abilist files maintained using
++ scripts/merge-abilist.awk and "make update-abi" rules.
++ * Makefile (distribute): Add abilist/*.abilist.
++ * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
++ Depend on check-abi.
++
++ * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
++ * configure: Regenerated.
++
++ * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
++
++2003-03-18 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
++ correctly.
++
++2003-03-18 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/powerpc64/memcpy.S: New file.
++
++2003-03-18 Ulrich Drepper <drepper@redhat.com>
++
++ * Versions.def: Add GLIBC_2.3.3 for libpthread.
++
++2003-03-17 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/libc-start.c [!SHARED &&
++ !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
++
++2003-03-17 Roland McGrath <roland@redhat.com>
++
++ * include/ctype.h: Revert last change.
++
++2003-03-17 Ulrich Drepper <drepper@redhat.com>
++
++ * argp/tst-argp1.c: Use test-skeleton.c.
++ * locale/tst-C-locale.c: Likewise.
++
++2003-03-17 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
++ * sysdeps/mips/mips64/n64/Implies: New file.
++ * sysdeps/mips/mips64/n64/Makefile: New file.
++ * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
++ * sysdeps/mips/mips64/n32/Implies: New file.
++ * sysdeps/mips/mips64/n32/Makefile: New file.
++ * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
++ * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
++ * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
++
++ * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
++ lib64 for mips64/n64 and lib32 for mips64/n32.
++ (ldd_rewrite_script): Needed for all mips64 configurations.
++ * sysdeps/unix/sysv/linux/configure: Rebuilt.
++ * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
++ * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
++
++ * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
++ well.
++
++ * sysdeps/unix/sysv/linux/mips/configure.in: New. Pre-process
++ asm/unistd.h into asm-unistd.h.
++ * sysdeps/unix/sysv/linux/mips/configure: Generated.
++ * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
++ of syscall list.
++ * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
++ * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
++ asm/unistd.h.
++
++ * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
++ * sysdeps/unix/sysv/linux/mips/ptrace.c: New file. Use long
++ long type for registers on n32.
++
++ * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
++ 3 ABIs.
++ * sysdeps/mips/mips64/gmp-mparam.h: New file. Define
++ BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
++ * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
++ (__sigsetjmp_aux): Use them. Adjust for all 3 ABIs.
++ * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
++ * sysdeps/unix/mips/brk.S: Likewise.
++ * sysdeps/unix/mips/sysdep.S: Likewise.
++ * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
++ * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
++ * sysdeps/mips/sys/ucontext.h: Likewise.
++ * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
++ * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
++ * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
++ * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
++ * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
++ * sysdeps/mips/mips64/setjmp.S: Likewise.
++ * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
++ * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
++ 64-bit types.
++
++2003-03-16 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
++ not at function level.
++ * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
++
++2003-03-15 Roland McGrath <roland@redhat.com>
++
++ * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
++ * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
++ * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
++ * nis/nis_table.c (__create_ib_request): Likewise.
++
++ * posix/fnmatch_loop.c: Add casts for signedness.
++ * nss/nss_files/files-hosts.c: Likewise.
++ * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
++ * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
++ * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
++
++ * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
++ get errors into the log file.
++ (libc_cv_broken_visibility_attribute): Likewise.
++ (libc_cv_broken_alias_attribute): Likewise.
++ (libc_cv_asm_weak_directive): Likewise.
++ (libc_cv_need_minus_P): Likewise.
++ (libc_cv_dot_text): Likewise.
++ (libc_cv_asm_global_directive): Likewise.
++ (libc_cv_asm_type_prefix): Likewise.
++ * configure: Regenerated.
++
++ * nscd/cache.c (cache_search): Give first arg type `request_type'.
++ * nscd/nscd.h: Update decl.
++
++ * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
++ * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
++ * elf/dl-close.c (_dl_close): Likewise.
++ * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
++ * io/fts.c (fts_build): Likewise.
++ * elf/cache.c (add_to_cache): Likewise.
++ * locale/programs/locarchive.c (show_archive_content): Likewise.
++
++ * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
++
++ * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
++ happy.
++ (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
++
++2003-03-15 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
++ code for most parts.
++
++2003-03-15 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
++ * sysdeps/unix/sysv/linux/system.c: ... here.
++ (FORK): Don't #define if already #define'd.
++ * sysdeps/unix/sysv/linux/s390/system.c: File removed.
++ * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
++ (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
++
++ * dlfcn/tst-dlinfo.c: New file.
++ * dlfcn/Makefile (tests): Add tst-dlinfo.
++ ($(objpfx)tst-dlinfo): New target.
++
++ * dlfcn/dlinfo.c: New file.
++ * dlfcn/Makefile (libdl-routines): Add it.
++ * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
++ * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
++ [__USE_GNU] (RTLD_DI_*): New enum constants.
++ [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
++ * elf/dl-load.c (cache_rpath): New inline function.
++ (_dl_map_object): Use it.
++ (_dl_rtld_di_serinfo): New function.
++ * sysdeps/generic/ldsodefs.h: Declare it.
++ * elf/Versions (ld: GLIBC_PRIVATE): Add it.
++
++ * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
++ (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
++ (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
++ (__libc_start_main): Just call the generic one for most of the work.
++
++ * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
++ static function by that name instead of BP_SYM (__libc_start_main).
++ [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
++ [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
++ [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
++
++ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
++ Use this macro for extra AT_* cases.
++ * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
++ New macro, guts from ...
++ (__aux_init_cache): ... here, function removed.
++ (DL_PLATFORM_INIT): Don't define this.
++
++ * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
++ * sysdeps/powerpc/powerpc64/memset.S: Likewise.
++
++ * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
++
++2003-03-14 Roland McGrath <roland@redhat.com>
++
++ * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
++
++2003-03-14 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
++
++ * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
++ sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
++
++2003-03-14 Alexandre Oliva <aoliva@redhat.com>
++
++ * sysdeps/mips/fpu/bits/mathdef.h: New.
++ (__NO_LONG_DOUBLE_MATH): Define for o32.
++
++ * sysdeps/mips/sys/asm.h: Formatting changes.
++ (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
++ (CPADD): Define for all of them.
++ (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
++ SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
++ NARGSAVE): Define per ABI spec.
++ (END): Don't redefine.
++ (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
++ LONG_SRAV): Remove duplicate definitions.
++ (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
++ PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
++ PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
++ (PTR_LA): Define for all 3 ABIs.
++
++ * sysdeps/mips/dl-machine.h: Include sys/asm.h.
++ (elf_machine_matches_host): Prevent linking of o32 and n32
++ together.
++ (elf_machine_dynamic): Document assumption on $gp.
++ (STRINGXP, STRINGXV, STRINGV_): New macros.
++ (elf_machine_load_address): Use them to stringize PTR_LA and
++ PTR_SUBU.
++ (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
++ ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
++ (_dl_runtime_resolve): Adjust it for all 3 ABIs.
++ (__dl_runtime_resolve): Cast the symtab initializer to the
++ right type.
++ (RTLD_START): Use it. Adjust it for all 3 ABIs.
++ (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
++ Handle 64-bit R_MIPS_REL composite relocation and accept
++ R_MIPS_64 relocations to shift addend size to 64 bits.
++ Document assumption regarding local GOT entries. Document
++ backward-compatibility departing from the ABI behavior in
++ applying relocations that reference section symbols, no longer
++ used. Support relocations to mis-aligned offsets.
++ * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
++
++ * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
++
++ * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
++ (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
++ * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
++ restore_rt functions. Use them.
++
++ * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
++ .set mips2 on new abis.
++
++2003-03-13 Ulrich Drepper <drepper@redhat.com>
++
++ * posix/getconf.c: Recognize POSIX2_SYMLINKS.
++ * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
++ * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
++ * sysdeps/posix/pathconf.c: Likewise.
++ * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
++ * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
++ * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
++
++ * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
++ words.
++
++2003-03-14 Alexandre Oliva <aoliva@redhat.com>
++
++ * include/gmp.h: Include/gmp-mparam.h.
++ * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
++ gmp-impl.h.
++
++ * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
++ ELF_MACHINE_NO_RELA is set.
++ * elf/rtld.c (dl_main): No prelink support for REL-only.
++
++ * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
++ FLAG_MIPS64_LIBN64): Define.
++ * elf/cache.c (print_entry): Handle mips64 n32 and n64.
++
++ * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
++ * sysdeps/mips/memset.S: Likewise.
++ * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
++ depending on the ABI.
++
++ * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
++ Don't .set mips2 on new abi.
++ (compare_and_swap): Likewise. Support 64-bit longs on n64.
++
++ * stdlib/fpioconst.h: Include gmp.h with angle brackets.
++
++2003-03-13 Roland McGrath <roland@redhat.com>
++
++ * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
++ found. Reported by Alexandre Oliva <aoliva@redhat.com>.
++
++2003-03-13 Alexandre Oliva <aoliva@redhat.com>
++
++ * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
++ literals long long.
++ * stdlib/fpioconst.c: Likewise.
++ * stdlib/strtod.c: Likewise.
++
++ * sysdeps/mips/add_n.S: Use L macro for local labels.
++ * sysdeps/mips/addmul_1.S: Likewise.
++ * sysdeps/mips/lshift.S: Likewise.
++ * sysdeps/mips/memcpy.S: Likewise.
++ * sysdeps/mips/memset.S: Likewise.
++ * sysdeps/mips/mul_1.S: Likewise.
++ * sysdeps/mips/rshift.S: Likewise.
++ * sysdeps/mips/sub_n.S: Likewise.
++ * sysdeps/mips/submul_1.S: Likewise.
++ * sysdeps/mips/mips64/add_n.S: Likewise.
++ * sysdeps/mips/mips64/addmul_1.S: Likewise.
++ * sysdeps/mips/mips64/lshift.S: Likewise.
++ * sysdeps/mips/mips64/mul_1.S: Likewise.
++ * sysdeps/mips/mips64/rshift.S: Likewise.
++ * sysdeps/mips/mips64/sub_n.S: Likewise.
++ * sysdeps/mips/mips64/submul_1.S: Likewise.
++ * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
++ conventions. Define END as in sys/asm.h.
++ * sysdeps/unix/mips/sysdep.S: Likewise.
++ * sysdeps/unix/mips/wait.S: Likewise.
++ * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
++
++ * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
++ Cast shifted values that may be too narrow to mp_limb_t.
++ * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
++ Likewise.
++ * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
++ Likewise.
++ * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
++ (__mpn_extract_long_double): Likewise.
++ * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
++ (__mpn_construct_long_double): Likewise.
++ * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
++ (__mpn_extract_long_double): Likewise.
++ * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
++ (__mpn_construct_long_double): Likewise.
++
++2003-03-13 Roland McGrath <roland@redhat.com>
++
++ * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
++ entries in the map file match too.
++
++2003-03-13 Guido Guenther <agx@sigxcpu.org>
++
++ * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
++ label .Lthread_start since current binutils don't allow branches
++ to globally visible symbols.
++
++2003-03-13 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
++ ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
++ ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
++ (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it. Make syscall arguments
++ clobbered by the syscall.
++ (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
++ ASM_ARGS_6): Change constraints from r to index of corresponding
++ output register.
++ * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
++ ptid and ctid to match kernel.
++ * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
++
++2003-03-12 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
++ AC_DEFINE(PI_STATIC_AND_HIDDEN). Not supported for PowerPC64.
++ * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
++
++2003-03-11 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
++ Check SYM_MAP rather than SYM as definedness check.
++ Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
++ Don't handle R_PPC64_REL24 reloc.
++ Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
++
++ * sysdeps/powerpc/powerpc64/dl-machine.h
++ [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
++ block, so we cover all the TPREL16* flavors without 6 ||s.
++ [USE_TLS] (elf_machine_tprel): New function.
++ (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
++ and handle TPREL16 relocs too. Return rather than break for DTPREL64.
++ Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
++
++2003-03-11 Ralf Baechle <ralf@linux-mips.org>
++
++ * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
++ instead of jalr to invoke subroutine so restoring the $gp register
++ will work properly.
++
++2003-03-11 Martin Schwidefsky <schwidefsky@de.ibm.com>
++
++ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
++ to __NR_pread if not defined.
++ (__NR_pwrite64): Define to __NR_pwrite if not defined.
++
++2003-03-11 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/unix/sysv/linux/ia64/system.c: New file.
++ * sysdeps/unix/sysv/linux/kernel-features.h
++ (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
++ kernel >= 2.5.64.
++
++2003-03-11 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
++ allocate space even for the trailing '/'.
++ Reported by John Reiser <jreiser@BitWagon.com>.
++
++ * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
++ ASM_CLOBBERS_6): Define.
++ (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
++ * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
++ to match IA-32 order.
++ * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
++
++2003-03-10 Steven Munroe <sjmunroe@us.ibm.com>
++
++ * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
++ Copy extra params for NPTL to registers used in clone syscall.
++
++2003-03-10 Martin Schwidefsky <schwidefsky@de.ibm.com>
++
++ * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
++ call names for pread and pwrite.
++
++2003-03-10 Roland McGrath <roland@redhat.com>
++
++ * dlfcn/Makefile (libdl-routines): Add dladdr1.
++ * dlfcn/dladdr1.c: New file.
++ * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
++ [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
++ * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
++ a const ElfNN_Sym ** to fill in.
++ * include/dlfcn.h: Update decl. Include <link.h>.
++ * dlfcn/dladdr.c (dladdr): Update caller.
++ * malloc/mtrace.c (tr_where): Likewise.
++ * sysdeps/generic/elf/backtracesyms.c: Likewise.
++ * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
++ * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
++ * Versions.def (libdl): Define GLIBC_2.3.3 set.
++
++ * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
++ assembler command.
++ * sysdeps/unix/Makefile (compile-syscall): New variable.
++ Pass -g0 to compiler for assembling syscall stubs from stdin.
++
++ * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
++ (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
++ Define these to do nothing.
++
++ * configure.in: New check for -g on .S files.
++ * configure: Regenerated.
++ * config.make.in (have-cpp-asm-debuginfo): New variable.
++ * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
++ * Makeconfig (ASFLAGS): New variable, if undefined and
++ $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
++ * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
++
++2003-03-09 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
++ used by NPTL on new kernels. From Paul Mackerras <paulus@samba.org>.
++
++2003-03-09 Ulrich Drepper <drepper@redhat.com>
++
++ * po/fi.po: Update from translation team.
++ * po/ca.po: Likewise.
++ * po/da.po: Likewise.
++
++2003-03-08 Ulrich Drepper <drepper@redhat.com>
++
++ * rt/tst-aio7.c (do_test): Change BYTES into a #define.
++
++2003-03-07 Ulrich Drepper <drepper@redhat.com>
++
++ * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
++
++ * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
++
++2003-03-07 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
++ * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
++
++2003-03-04 Guido Guenther <agx@sigxcpu.org>
++
++ * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
++ stubs, we have INLINE_SYSCALL.
++ * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
++ MAP_NONBLOCK.
++
++2003-03-06 Roland McGrath <roland@redhat.com>
++
++ * rt/tst-aio7.c (do_test): Revert last change. Instead, give CB1
++ permanent extent and add a comment about testing its implicit teardown.
++
++2003-03-06 Martin Schwidefsky <schwidefsky@de.ibm.com>
++
++ * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
++
++2003-03-05 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
++ reversed __builtin_expect expectation.
++
++2003-03-05 Roland McGrath <roland@redhat.com>
++
++ * stdio-common/sscanf.c: Use prototype defn with ... syntax.
++ * libio/swscanf.c: Likewise.
++ * libio/swprintf.c: Likewise.
++
++2003-03-04 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
++ (elf_machine_rela): Always use RESOLVE_MAP, needed for
++ R_PPC64_JMP_SLOT as well as TLS cases.
++ (BIT_INSERT): Move parenthesis where it ought to have been.
++ Reported by Steven Munroe <sjmunroe@us.ibm.com>.
++
++ * posix/confstr.c (confstr): Correct STRING_LEN values for
++ _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
++ break. Reported by Alexandre Julliard <julliard@winehq.com>.
++
++2003-03-04 Jakub Jelinek <jakub@redhat.com>
++
++ * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
++
++2003-03-04 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
++ clone parameters.
++
++ * po/sv.po: Update from translation team.
++
++2003-03-04 Andreas Jaeger <aj@suse.de>
++ Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
++
++2003-03-03 Ulrich Drepper <drepper@redhat.com>
++
++ * sysdeps/generic/dl-sysdep.h: Add double include protection.
++
++ * po/tr.po: Update from translation team.
++
++ * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
++ are holes between the segments. Only call mprotect to set
++ proection to PROT_NONE if there are some.
++
++ * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
++ Update comment.
++
++ * include/sched.h (__clone2): Use ... instead of adding all the
++ new parameters.
++
++2003-03-03 Roland McGrath <roland@redhat.com>
++
++ * elf/dl-load.c (struct filebuf): Fix typo in last change.
++
++ * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
++ PI_STATIC_AND_HIDDEN.
++
++2003-03-03 Ian Wienand <ianw@gelato.unsw.edu.au>
++
++ * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
++ flags.
++ * include/sched.h: Update clone2 prototype.
++
++2003-03-03 Andreas Jaeger <aj@suse.de>
++
++ * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
++ (llrint): Use it to correct return type.
++ (lrint): Likewise.
++ (lround): Likewise.
++ (llround): Likewise.
++
++2003-03-03 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
++ byte filebuf size.
++
++ * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
++ if ccs parameter isn't valid. Reported by Andreas Schwab.
++
++2003-03-03 Martin Schwidefsky <schwidefsky@de.ibm.com>
++
++ * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
++ for system call numbers > 255.
++ * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
++ INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
++ INTERNAL_SYSCALL): Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
++ * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
++ INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
++ INTERNAL_SYSCALL): Likewise.
++
++2003-03-03 Martin Schwidefsky <schwidefsky@de.ibm.com>
++
++ * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
++ array if it is the initial dtv.
++
++2003-03-03 Ulrich Drepper <drepper@redhat.com>
++
++ * po/es.po: Update from translation team.
++ * po/fr.po: Likewise.
++ * po/gl.po: Likewise.
++ * po/sk.po: Likewise.
++ * po/sv.po: Likewise.
++
++ * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
++ * misc/sys/mman.h: Add prototype for remap_file_pages.
++ * sysdeps/generic/remap_file_pages.c: New file.
++ * misc/Makefile (routines): Add remap_file_pages.
++ * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
++
++ * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
++ and MAP_NONBLOCK.
++ * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
++ * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
++ * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
++
++2003-03-03 Roland McGrath <roland@redhat.com>
++
++ * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
++ * sysdeps/ia64/dl-machine.h: Likewise.
++ * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
++ argument type.
++ * sysdeps/ia64/dl-lookupcfg.h: Update decl.
++
++ * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
++ * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
++ * locale/Versions (libc: GLIBC_2.3): Move those to ...
++ * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
++ * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
++ * Versions.def (libc): Add GLIBC_2.3.3 set.
++
++ * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
++ * sysdeps/ia64/dl-machine.h: Update decl.
++
++2003-03-03 Andreas Jaeger <aj@suse.de>
++
++ * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
++
++2003-03-02 Roland McGrath <roland@redhat.com>
++
++ * scripts/abilist.awk: Reject data items with apparent 0 size.
++
++ * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
++ after foo.* as if it were a duplicate.
++
++ * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
++
++2003-03-02 Ulrich Drepper <drepper@redhat.com>
++
++ * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
++
++ * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
++ * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
++ if not already defined. Use SYSDEP_GETRES to allow other files to
++ provide alternative implementations.
++ * sysdeps/unix/sysv/linux/clock_getres.c: New file
++ * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
++ if not already defined. Use SYSDEP_GETTIME to allow other files to
++ provide alternative implementations.
++ * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
++ * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
++ if not already defined. Use SYSDEP_GETTIME to allow other files to
++ provide alternative implementations.
++ * sysdeps/unix/sysv/linux/clock_settime.c: New file.
++ * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
++ other files to provide alternative implementations. Rearrange
++ tests for invalid parameters.
++ * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
++ * sysdeps/unix/sysv/linux/sysconf.c: New file.
++ * sysdeps/unix/sysv/linux/kernel-features.h: Define
++ __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
++ * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
++ _POSIX_MONOTONIC_CLOCK.
++
++2003-03-02 Roland McGrath <roland@redhat.com>
++
++ * scripts/merge-abilist.awk: More checks for bogus input.
++ Uniquify duplicate config names.
++
++ * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
++
++ * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
++ from dl_reloc_overflow, make global.
++ (__process_machine_rela): Update callers.
++ * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
++ Add attribute_hidden to __process_machine_rela decl.
++ (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
++
++ * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
++ variable.
++
++ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
++ Don't use weak_extern for dl_rtld_map. Instead check only if [SHARED].
++ (elf_machine_rela): Clean up.
++
++ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
++
++ PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
++ * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
++ * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
++ * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
++ (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
++ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
++ new relocs for TLS.
++
++ * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
++ macros out of [SHARED].
++ (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
++
++ * elf/elf.h: Define R_PPC_* relocs for TLS support.
++ Clean up R_PPC64_* macro definition comments.
++
++ * configure.in: In "running configure fragment for" message,
++ omit $srcdir from the name if we prepended it.
++ * configure: Regenerated.
++
++ * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
++ From Jakub Jelinek <jakub@redhat.com>.
++
++ * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
++ which duplicated the O_DIRECT defn.
++
++2003-03-01 GOTO Masanori <gotom@debian.or.jp>
++
++ * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
++ random functions.
++
++2003-03-01 Andreas Schwab <schwab@suse.de>
++
++ * resolv/Makefile (tests): Don't depend on
++ $(objpfx)mtrace-tst-leaks when cross compiling.
++
++ * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
++ __libc_stack_end through GOT since it is a global symbol.
++
+ 2003-03-01 GOTO Masanori <gotom@debian.or.jp>
+
+ * argp/argp.h: Fix a typo.
+diff -u -udbrN glibc-2.3.2/Makeconfig glibc-2.3.2-200304020432/Makeconfig
+--- glibc-2.3.2/Makeconfig Mon Jan 6 06:31:36 2003
++++ glibc-2.3.2-200304020432/Makeconfig Sun Mar 23 12:17:13 2003
+@@ -621,7 +621,7 @@
+ +includes = -I$(..)include -I. \
+ $(patsubst %/,-I%,$(objpfx)) $(patsubst %/,-I%,$(..)) \
+ $(libio-include) $(includes) \
+- $(+sysdep-includes) $(last-includes) $(sysincludes)
++ $(+sysdep-includes) $(sysincludes)
+
+ # Since libio has several internal header files, we use a -I instead
+ # of many little headers in the include directory.
+@@ -716,6 +716,12 @@
+ libtype.oS = lib%_nonshared.a
+ endif
+
++# The assembler can generate debug information too.
++ifndef ASFLAGS
++ifeq ($(have-cpp-asm-debuginfo),yes)
++ASFLAGS := $(filter -g%,$(CFLAGS))
++endif
++endif
+
+ +gnu-stabs = $(shell echo>&2 '*** BARF ON ME')
+
+diff -u -udbrN glibc-2.3.2/Makefile glibc-2.3.2-200304020432/Makefile
+--- glibc-2.3.2/Makefile Fri Feb 21 07:22:51 2003
++++ glibc-2.3.2-200304020432/Makefile Fri Mar 28 02:13:00 2003
+@@ -274,6 +274,7 @@
+ include/shlib-compat.h include/pthread.h Versions.def \
+ cppflags-iterator.mk tls.make.c \
+ include/stubs-prologue.h include/gnu/stubs.h \
++ include/atomic.h bits/atomic.h \
+ INTERFACE CONFORMANCE NAMESPACE LICENSES \
+ $(addprefix scripts/, \
+ rellns-sh config.sub config.guess \
+@@ -282,7 +283,10 @@
+ gen-sorted.awk abi-versions.awk abilist.awk \
+ firstversions.awk documented.sh cpp \
+ output-format.sed gen-as-const.awk \
+- merge-abilist.awk extract-abilist.awk)
++ merge-abilist.awk extract-abilist.awk \
++ rpm2dynsym.sh \
++ ) \
++ $(wildcard abilist/*.abilist)
+
+ distribute := $(strip $(distribute))
+ generated := $(generated) stubs.h
+@@ -316,12 +320,6 @@
+ $(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
+
+ iconvdata/% localedata/% po/% manual/%:
+- $(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
+-
+-# This is a special goal for people making binary distributions. Normally
+-# everybody uses the DES based crypt library but for the distribution we
+-# need the only-MD5 based one as well.
+-md5-crypt/libmd5crypt:
+ $(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
+
+ # glibc 2.0 contains some header files which aren't used with glibc 2.1
+diff -u -udbrN glibc-2.3.2/Makerules glibc-2.3.2-200304020432/Makerules
+--- glibc-2.3.2/Makerules Sun Feb 23 00:23:31 2003
++++ glibc-2.3.2-200304020432/Makerules Thu Mar 27 10:47:53 2003
+@@ -396,8 +396,10 @@
+
+ # GCC can grok options after the file name, and it looks nicer that way.
+ compile.c = $(CC) $< -c $(CFLAGS) $(CPPFLAGS)
+-compile.S = $(CC) $< -c $(CPPFLAGS) $(S-CPPFLAGS) $(ASFLAGS-$(suffix $@))
+-COMPILE.S = $(CC) -c $(CPPFLAGS) $(S-CPPFLAGS) $(ASFLAGS-$(suffix $@))
++compile.S = $(CC) $< -c $(CPPFLAGS) $(S-CPPFLAGS) \
++ $(ASFLAGS) $(ASFLAGS-$(suffix $@))
++COMPILE.S = $(CC) -c $(CPPFLAGS) $(S-CPPFLAGS) \
++ $(ASFLAGS) $(ASFLAGS-$(suffix $@))
+ COMPILE.s = $(filter-out -pipe,$(CC)) -c $(ASFLAGS)
+
+ # If we want to generate MD5 checksums for the sources do this now.
+@@ -1188,15 +1190,23 @@
+ LC_ALL=C \
+ $(AWK) -f $< -v 'config=$(check-abi-config)' \
+ $(filter %.abilist,$^) \
+- | diff -pu0 - $(filter %.symlist,$^)
++ | { diff -pu0 - $(filter %.symlist,$^) $(check-abi-warn) ; }
+ endef
++ifeq ($(enable-check-abi),warn)
++check-abi-warn = || echo '*** WARNING: $*.so failed ABI check'
++endif
+
+ ifeq ($(firstword $(sysd-sorted-done) f)$(firstword $(generating) f),tf)
+ -include $(common-objpfx)tls.make
+-config-tls-yes := tls
+-config-tls-no := notls
++config-tls := notls
++ifeq ($(use-tls),yes)
++config-tls := tls
++endif
++ifeq ($(use-thread),yes)
++config-tls := thread
++endif
+ check-abi-config := \
+- $(config-machine)-$(config-vendor)-$(config-os)/$(config-tls-$(use-thread))
++ $(config-machine)-$(config-vendor)-$(config-os)/$(config-tls)
+ endif
+
+ update-abi-%: $(..)scripts/merge-abilist.awk $(..)abilist/%.abilist \
+@@ -1211,7 +1221,7 @@
+ endef
+ else
+ define update-abi
+-LC_ALL=C $(AWK) -v config=$(update-abi-config) -f $^ \
++LC_ALL=C $(AWK) -v config='$(update-abi-config)' -f $^ \
+ > $(..)abilist/$*.abilist.new
+ @if cmp -s $(..)abilist/$*.abilist.new $(..)abilist/$*.abilist 2> /dev/null; \
+ then rm -f $(..)abilist/$*.abilist.new; \
+@@ -1233,15 +1243,20 @@
+ update-abi: subdir_update-abi
+ endif
+
+-# Enable this when all the .abilist files are in place.
+-#tests: check-abi
+-
+ ifeq ($(subdir),elf)
+ check-abi: check-abi-libc
+ update-abi: update-abi-libc
+ common-generated += libc.symlist
+ endif
+
++ifeq ($(build-shared),yes)
++ifneq ($(enable-check-abi),no)
++ifdef subdir
++tests: check-abi
++endif
++endif
++endif
++
+ endif
+
+ # There's no good place to put this - here will do.
+@@ -1370,13 +1385,15 @@
+ .PHONY: stubs # The parent Makefile calls this target.
+ stubs: $(objpfx)stubs
+ endif
+-s = $(sysdep_dir)/generic
+ $(objpfx)stubs: $(+depfiles)
+ # Use /dev/null since `...` might expand to empty.
+- (s=`cd $s && $(PWD_P)`; \
++ (s=`cd $(sysdep_dir) && $(PWD_P)`; \
+ $(patsubst %/,cd % &&,$(objpfx)) \
+ sed -n 's/^stub_warning *(\([^)]*\).*$$/#define __stub_\1/p' \
+- `sed -n -e '\@ $s/[^ ]*\.c@{; s@^.* $s/\([^ ]*\.c\).*$$@'"$$s"'/\1@; h; }' \
++ `sed -n -e 's@$(sysdep_dir)/@'"$$s"'/@g' \
++ -e 's@\$$(common-objpfx)@$(..)@g' -e 's@\$$(objpfx)@@g' \
++ -e '/: *[^ ]/{s@^.*: *\([^ ]*\) .*$$@\1@; h; }' \
++ -e '/:$$/d' \
+ -e '/stub-tag\.h/{; g; p; }' \
+ $(patsubst $(objpfx)%,%,$^) /dev/null` \
+ /dev/null) > $@T
+diff -u -udbrN glibc-2.3.2/NEWS glibc-2.3.2-200304020432/NEWS
+--- glibc-2.3.2/NEWS Mon Jan 13 10:26:13 2003
++++ glibc-2.3.2-200304020432/NEWS Sun Mar 16 00:16:13 2003
+@@ -1,9 +1,17 @@
+-GNU C Library NEWS -- history of user-visible changes. 2003-1-12
+-Copyright (C) 1992-2002, 2003 Free Software Foundation, Inc.
++GNU C Library NEWS -- history of user-visible changes. 2003-3-15
++Copyright (C) 1992-2002,2003 Free Software Foundation, Inc.
+ See the end for copying conditions.
+
+ Please send GNU C library bug reports using the `glibcbug' script to
+ <bugs@gnu.org>. Please send questions and suggestions to <bug-glibc@gnu.org>.
++
++Version 2.3.3
++
++* New functions `dladdr1' and `dlinfo' in <dlfcn.h> provide more ways to
++ interrogate the dynamic linker, compatible with the Solaris interface.
++
++* ELF thread-local storage support (TLS) now works on PowerPC and PowerPC64;
++ implemented by Paul Mackerras, Steven Munroe, and Roland McGrath.
+
+ Version 2.3.2
+
+diff -u -udbrN glibc-2.3.2/README-alpha glibc-2.3.2-200304020432/README-alpha
+--- glibc-2.3.2/README-alpha Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/README-alpha Thu May 13 12:22:39 1999
+@@ -0,0 +1,287 @@
++ GNU libc SNAPSHOT SYSTEM
++ (general info)
++ Updated 1997-9-26
++
++WHAT ARE GNU libc SNAPSHOTS
++---------------------------
++
++Snapshots are an "image" of the main glibc development tree, captured at a
++particular random instant in time. When you use the snapshots, you should be
++able to maintain a local copy of libc that is no more than one day older than
++the official source tree used by the libc maintainers.
++
++The primary purpose of providing snapshots is to widen the group of motivated
++developers that would like to help test, debug, and enhance glibc, by providing
++you with access to the "latest and greatest" source. This has several
++advantages, and several disadvantages.
++
++ First the advantages:
++
++ o Once we have a large base of motivated testers using the snapshots,
++ this should provide good coverage across all currently supported
++ glibc hosts and targets. If a new bug is introduced in glibc due to
++ fixing another bug or ongoing development, it should become
++ obvious much more quickly and get fixed before the next general
++ net release. This should help to reduce the chances of glibc being
++ released to the general public with a major bug that went unnoticed
++ during the release cycle testing because they are machine dependent.
++ We hope to greatly improve glibc's stability and reliability by
++ involving more people and more execution environments in the
++ prerelease testing.
++
++ o With access to the latest source, any diffs that you send to fix
++ bugs or add new features should be much easier for the glibc team
++ to merge into the official source base (after suitable review
++ of course). This encourages us to merge your changes quicker,
++ while they are still "fresh".
++
++ o Once your diffs are merged, you can obtain a new copy of glibc
++ containing your changes almost immediately. Thus you do not
++ have to maintain local copies of your changes for any longer
++ than it takes to get them merged into the official source base.
++ This encourages you to send in changes quicker.
++
++ And the disadvantages:
++
++ o The snapshot you get will be largely untested and of unknown quality.
++ It may fail to configure or compile. It may have serious bugs.
++ You should always keep a copy of the last known working version
++ before updating to the current snapshot, or at least be able to
++ regenerate a working version if the latest snapshot is unusable
++ in your environment for some reason.
++
++ If a production version of glibc has a bug and a snapshot has the fix,
++ and you care about stability, you should put only the fix for that
++ particular problem into your production version. Of course, if you
++ are eager to test glibc, you can use the snapshot versions in your
++ daily work, but users who have not been consulted about whether they
++ feel like testing glibc should generally have something which is at
++ least as bug free as the last released version.
++
++ o Providing timely response to your questions, bug reports, and
++ submitted patches will require the glibc development team to allocate
++ time from an already thin time budget. Please try to help us make
++ this time as productive as possible. See the section below about
++ how to submit changes.
++
++
++WHO SHOULD TRY THE SNAPSHOTS
++----------------------------
++
++Remember, these are snapshots not tested versions. So if you use
++these versions you should be able to
++
++ o make sure your system stays usable
++
++ o locate and hopefully fix problems
++
++ o to port glibc to a new target yourself
++
++You should not use the snapshots if
++
++ o your system is needed in a production environment which needs
++ stability
++
++ o you expect us to fix your problems since you somehow depend on them.
++ You must be willing to fix the problems yourself, we don't want to
++ see "I have problems, fix this" messages.
++
++
++HOW TO GET THE SNAPSHOTS
++------------------------
++
++At the moment we provide a full snapshot weekly (every sunday), so
++that users getting a snapshot for the first time, or updating after
++a long period of not updating, can get the latest version in a single
++operation. Along with the full snapshot, we will provide incremental
++diffs on a nearly daily basis (whenever code changes). Each daily
++diff will be relative to the source tree after applying all previous
++daily diffs. The daily diffs are for people who have relatively low
++bandwidth ftp or uucp connections.
++
++The files will be available via anonymous ftp from alpha.gnu.org, in
++directory /gnu/libc and on linux.kernel.org in /pub/software/libs/glibc. The
++directories should look something like:
++
++ libc-970921.tar.gz
++ libc-970917-970922.diff.gz
++ libc-970922-970925.diff.gz
++ .
++ .
++ .
++
++Please note that the snapshots on alpha.gnu.org and on
++linux.kernel.org are not always in sync. Patches to some files might
++appear a day a diff earlier or later on alpha than on kernel.
++Use always alpha or always kernel but don't mix them.
++
++There are sometimes additionally test releases of the add-ons available in
++these directories. If a new version of an add-on is available it is normally
++required for the corresponding snapshot so always pay attention for these.
++
++Note that we provide GNU gzip compressed files only. You can ftp gzip
++from ftp.gnu.org in directory pub/gnu.
++
++In some cases the dates for diffs and snapshots do not match like in the
++example above. The full release is for 970921 but the patch is for
++970917-970922. This only means that nothing changed between 970917 and 970922
++and that you have to use this patch on top of the 970921 snapshot since the
++patch is made on 970922.
++
++Also, as the gcc developers did with their gcc snapshot system, even though we
++will make the snapshots available on a publically accessible ftp area, we ask
++that recipients not widely publicise their availability. The motivation for
++this request is not to hoard them, but to avoid the situation where the
++general glibc user base naively attempts to use the snapshots, has trouble with
++them, complains publically, and the reputation of glibc declines because of a
++perception of instability or lack of quality control.
++
++
++GLIBC TEST SUITE
++----------------
++
++A test suite is distributed as an integral part of the snapshots. A simple
++"make check" in your build directory is sufficient to run the tests. glibc
++should pass all tests and if any fails, please report it. A failure might not
++originate from a bug in glibc but also from bugs in the tools, e.g. with gcc
++2.7.2.x the math tests fail some of the tests because of compiler bugs.
++
++Note that the test suite is still in its infancy. The tests themselves only
++cover a small portion of libc features, and where tests do exist for a feature
++they are not exhaustive. New tests are welcome.
++
++
++GETTING HELP, GLIBC DISCUSSIONS, etc
++------------------------------------
++
++People who want to help with glibc and who test out snapshots
++regularly should get on the libc-alpha@sourceware.cygnus.com mailing
++list by sending an email to libc-alpha-subscribe@sourceware.cygnus.com.
++This list is meant (as the name suggests) for the discussion of test
++releases and also reports for them. People who are on this list are
++welcome to post questions of general interest.
++
++People who are not only willing to test the snapshots but instead
++really want to help developing glibc should contact
++libc-hacker-subscribe@sourceware.cygnus.com.org to be put on the developers
++mailing list. This list is really only meant for developers. No
++questions about installation problems or other simple topics are
++wanted nor will they be answered.
++
++Do *not* send any questions about the snapshots or patches specific to the
++snapshots to bug-glibc@gnu.org. Nobody there will have any idea what
++you are talking about and it will just cause confusion.
++
++
++BUG REPORTS
++-----------
++
++Send bug reports directly to Ulrich Drepper <drepper@gnu.org>. Please
++do *not* use the glibcbug script for reporting bugs in the snapshots.
++glibcbug should only be used for problems with the official released versions.
++We don't like bug reports in the bug database because otherwise the impression
++of instability or lack of quality control of glibc as a whole might manifest
++in people's mind.
++
++Note that since no testing is done on the snapshots, and snapshots may even be
++made when glibc is in an inconsistent state, it may not be unusual for an
++occasional snapshot to have a very obvious bug, such as failure to compile on
++*any* machine. It is likely that such bugs will be fixed by the next
++snapshot, so it really isn't necessary to report them unless they persist for
++a couple of days.
++
++Missing files should always be reported, since they usually mean there is a
++problem with the snapshot-generating process and we won't know about them
++unless someone tells us.
++
++Bugs which are non-obvious, such as failure to compile on only a specific
++machine, a new machine dependent or obscure bug (particularly one not detected
++by the testsuite), etc should be reported when you discover them, or have a
++suggested patch to fix them.
++
++
++FORMAT FOR PATCHES
++------------------
++
++If you have a fix for a bug, or an enhancement to submit, send your patch to
++Ulrich Drepper <drepper@gnu.org>. Here are some simple guidelines for
++submitting patches:
++
++ o Use "unified diffs" for patches. A typical command for generating
++ context diffs is "diff -ru glibc-old glibc-patched".
++
++ o Use the "minimalist approach" for patches. That is, each patch
++ should address only one particular bug, new feature, etc. Do not
++ save up many unrelated changes and submit them all in one big
++ patch, since in general, the larger the patch the more difficult
++ it is for us to decide if the patch is either correct or
++ desirable. And if we find something about the patch that needs
++ to be corrected before it can be installed, we would have to reject
++ the entire patch, which might contain changes which otherwise would
++ be accepted if submitted separately.
++
++ o Submit a sample ChangeLog entry with your patch. See the existing
++ glibc ChangeLog for examples of what a ChangeLog entry should look
++ like. The emacs command ^X4A will create a ChangeLog entry header
++ for you.
++
++
++BUILDING SNAPSHOTS
++------------------
++
++The `best' way to build glibc is to use an extra directory, e.g.:
++tar xzf libc-970921.tar.gz
++mkdir build-glibc
++cd build-glibc
++../libc-970921/configure ...
++
++In this way you can easily clean up (since `make clean' doesn't work at
++the moment) and rebuild glibc.
++
++
++NECESSARY TOOLS
++---------------
++
++For the recommended versions of gcc, binutils, make, texinfo, gettext,
++autoconf and other tools which might be especially needed when using patches,
++please read the file INSTALL.
++
++
++HOW CAN YOU HELP
++----------------
++
++It helps already a lot if you just install glibc on your system and try to
++solve any problems. You might want to look at the file `PROJECTS' and help
++with one of those projects, fix some bugs (see `BUGS' or the bug database),
++port to an unsupported platform, ...
++
++
++FURTHER DOCUMENTATION
++---------------------
++
++A lot of questions are answered in the FAQ. The files `INSTALL', `README' and
++`NOTES' contain the most important documentation. Furthermore glibc has its
++own 700+ pages info documentation, ...
++
++
++
++And finally a word of caution: The libc is one of the most fundamental parts
++of your system - and these snapshots are untested and come without any
++guarantee or warranty. You might be lucky and everything works or you might
++crash your system. If you install a glibc snapshot as primary library, you
++should have a backup somewhere.
++
++On many systems it is also a problem to replace the libc while the system is
++running. In the worst case on broken OSes some systems crash. On better
++systems you can move the old libc aside but removing it will cause problems
++since there are still processes using this libc image and so you might have to
++check the filesystem to get rid of the libc data. One good alternative (which
++is also safer) is to use a chroot'ed environment.
++
++Thanks for your help and support.
++
++Thanks to Fred Fish from Cygnus for the original version of this text
++(for GDB).
++
++
++Ulrich Drepper
+diff -u -udbrN glibc-2.3.2/README.template glibc-2.3.2-200304020432/README.template
+--- glibc-2.3.2/README.template Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/README.template Wed Oct 2 23:16:42 2002
+@@ -0,0 +1,87 @@
++This directory contains the version VERSION release of the GNU C Library.
++Many bugs have been fixed since the last release.
++Some bugs surely remain.
++
++As of this release, the GNU C library is known to run on the following
++configurations:
++
++ *-*-gnu GNU Hurd
++ i[3456]86-*-linux-gnu Linux-2.x on Intel
++ m68k-*-linux-gnu Linux-2.x on Motorola 680x0
++ alpha*-*-linux-gnu Linux-2.x on DEC Alpha
++ powerpc-*-linux-gnu Linux and MkLinux on PowerPC systems
++ powerpc64-*-linux-gnu Linux-2.4.19+ on 64-bit PowerPC systems
++ sparc-*-linux-gnu Linux-2.x on SPARC
++ sparc64-*-linux-gnu Linux-2.x on UltraSPARC 64-bit
++ arm-*-none ARM standalone systems
++ arm-*-linux Linux-2.x on ARM
++ arm-*-linuxaout Linux-2.x on ARM using a.out binaries
++ mips*-*-linux-gnu Linux-2.x on MIPS
++ ia64-*-linux-gnu Linux-2.x on ia64
++ s390-*-linux-gnu Linux-2.x on IBM S/390
++ s390x-*-linux-gnu Linux-2.4+ on IBM S/390 64-bit
++ sh-*-linux-gnu Linux-2.x on Super Hitachi
++ cris-*-linux-gnu Linux-2.4+ on CRIS
++ x86-64-*-linux-gnu Linux-2.4+ on x86-64
++
++Former releases of this library (version 1.09.1 and perhaps earlier
++versions) used to run on the following configurations:
++
++ alpha-dec-osf1
++ i[3456]86-*-bsd4.3
++ i[3456]86-*-isc2.2
++ i[3456]86-*-isc3
++ i[3456]86-*-sco3.2
++ i[3456]86-*-sco3.2v4
++ i[3456]86-*-sysv
++ i[3456]86-*-sysv4
++ i[3456]86-force_cpu386-none
++ i[3456]86-sequent-bsd
++ i960-nindy960-none
++ m68k-hp-bsd4.3
++ m68k-mvme135-none
++ m68k-mvme136-none
++ m68k-sony-newsos3
++ m68k-sony-newsos4
++ m68k-sun-sunos4
++ mips-dec-ultrix4
++ mips-sgi-irix4
++ sparc-sun-solaris2
++ sparc-sun-sunos4
++
++Since no one has volunteered to test and fix the above configurations,
++these are not supported at the moment. It's expected that these don't
++work anymore. Porting the library is not hard. If you are interested
++in doing a port, please contact the glibc maintainers by sending
++electronic mail to <bug-glibc@gnu.org>.
++
++There are some add-ons which can be used together with GNU libc. They
++are designed in a way to ease the installation by integrating them in
++the libc source tree. Simply get the add-ons you need and use the
++--enable-add-ons option of the `configure' script to tell where the
++add-ons are found. Please read the FAQ file for more details.
++
++See the file INSTALL to find out how to configure, build, install, and port
++the GNU C library. You might also consider reading the WWW pages for the
++GNU libc at http://www.gnu.org/software/libc/libc.html.
++
++The GNU C Library is completely documented by the Texinfo manual found
++in the `manual/' subdirectory. The manual is still being updated and
++contains some known errors and omissions; we regret that we do not
++have the resources to work on the manual as much as we would like.
++Please send comments on the manual to <bug-glibc-manual@gnu.org>, and
++not to the library bug-reporting address.
++
++The file NOTES contains a description of the feature-test macros used
++in the GNU C library, explaining how you can tell the library what
++facilities you want it to make available.
++
++We prefer to get bug reports sent using the `glibcbug' shell script which
++is installed together with the rest of the GNU libc to <bugs@gnu.org>.
++Simply run this shell script and fill in the information. Nevertheless
++you can still send bug reports to <bug-glibc@gnu.org> as normal electronic
++mails.
++
++The GNU C Library is free software. See the file COPYING.LIB for copying
++conditions, and LICENSES for notices about a few contributions that require
++these additional notices to be distributed.
+diff -u -udbrN glibc-2.3.2/Versions.def glibc-2.3.2-200304020432/Versions.def
+--- glibc-2.3.2/Versions.def Tue Dec 10 20:05:17 2002
++++ glibc-2.3.2-200304020432/Versions.def Tue Mar 25 21:28:24 2003
+@@ -18,6 +18,7 @@
+ GLIBC_2.3
+ GLIBC_2.3.1
+ GLIBC_2.3.2
++ GLIBC_2.3.3
+ %ifdef USE_IN_LIBIO
+ HURD_CTHREADS_0.3
+ %endif
+@@ -32,6 +33,7 @@
+ libdl {
+ GLIBC_2.0
+ GLIBC_2.1
++ GLIBC_2.3.3
+ }
+ libm {
+ GLIBC_2.0
+@@ -71,6 +73,7 @@
+ GLIBC_2.2.3
+ GLIBC_2.2.6
+ GLIBC_2.3.2
++ GLIBC_2.3.3
+ GLIBC_PRIVATE
+ }
+ libresolv {
+@@ -82,6 +85,7 @@
+ GLIBC_2.1
+ GLIBC_2.2
+ GLIBC_2.3
++ GLIBC_2.3.3
+ }
+ libutil {
+ GLIBC_2.0
+@@ -96,6 +100,7 @@
+ GLIBC_2.1.3
+ GLIBC_2.2.3
+ GLIBC_2.3
++ GLIBC_2.3.3
+ }
+ libanl {
+ GLIBC_2.2.3
+diff -u -udbrN glibc-2.3.2/abilist/ld.abilist glibc-2.3.2-200304020432/abilist/ld.abilist
+--- glibc-2.3.2/abilist/ld.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/ld.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,35 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.0 A
++ _r_debug D 0x14
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __libc_memalign F
++ calloc F
++ free F
++ malloc F
++ realloc F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _dl_mcount F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _r_debug D 0x28
++GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3 A
++GLIBC_2.3 i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++ ___tls_get_addr F
++GLIBC_2.3 i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread x86_64-.*-linux.*/tls
++ __tls_get_addr F
++GLIBC_2.3 s390-.*-linux.*/tls s390x-.*-linux.*/tls
++ __tls_get_offset F
+diff -u -udbrN glibc-2.3.2/abilist/libBrokenLocale.abilist glibc-2.3.2-200304020432/abilist/libBrokenLocale.abilist
+--- glibc-2.3.2/abilist/libBrokenLocale.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/libBrokenLocale.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,13 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __ctype_get_mb_cur_max F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+diff -u -udbrN glibc-2.3.2/abilist/libanl.abilist glibc-2.3.2-200304020432/abilist/libanl.abilist
+--- glibc-2.3.2/abilist/libanl.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/libanl.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,13 @@
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.3 A
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ gai_cancel F
++ gai_error F
++ gai_suspend F
++ getaddrinfo_a F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+diff -u -udbrN glibc-2.3.2/abilist/libc.abilist glibc-2.3.2-200304020432/abilist/libc.abilist
+--- glibc-2.3.2/abilist/libc.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/libc.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,2231 @@
++GCC_3.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GCC_3.0 A
++ _Unwind_Find_FDE F
++ __deregister_frame_info_bases F
++ __register_frame_info_bases F
++ __register_frame_info_table_bases F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++ __fpu_control D 0x2
++ vm86 F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.0 A
++ _IO_stderr_ D 0x50
++ _IO_stdin_ D 0x50
++ _IO_stdout_ D 0x50
++ __strtoq_internal F
++ __strtouq_internal F
++ _sys_errlist D 0x1ec
++ _sys_siglist D 0x80
++ res_init F
++ sys_errlist D 0x1ec
++ sys_sigabbrev D 0x80
++ sys_siglist D 0x80
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ getaliasbyname_r F
++ getaliasent_r F
++ getgrent_r F
++ getgrgid_r F
++ getgrnam_r F
++ gethostbyaddr_r F
++ gethostbyname2_r F
++ gethostbyname_r F
++ gethostent_r F
++ getnetbyaddr_r F
++ getnetbyname_r F
++ getnetent_r F
++ getprotobyname_r F
++ getprotobynumber_r F
++ getprotoent_r F
++ getpwent_r F
++ getpwnam_r F
++ getpwuid_r F
++ getrpcbyname_r F
++ getrpcbynumber_r F
++ getrpcent_r F
++ getservbyname_r F
++ getservbyport_r F
++ getservent_r F
++ getspent_r F
++ getspnam_r F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ _sys_nerr D 0x4
++ sys_nerr D 0x4
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_do_write F
++ _IO_fclose F
++ _IO_fdopen F
++ _IO_file_attach F
++ _IO_file_close_it F
++ _IO_file_fopen F
++ _IO_file_init F
++ _IO_file_overflow F
++ _IO_file_seekoff F
++ _IO_file_setbuf F
++ _IO_file_sync F
++ _IO_file_underflow F
++ _IO_file_write F
++ _IO_file_xsputn F
++ _IO_fopen F
++ _IO_popen F
++ _IO_proc_close F
++ _IO_proc_open F
++ fclose F
++ fdopen F
++ fopen F
++ pclose F
++ popen F
++ pthread_attr_init F
++ tmpfile F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ chown F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ fnmatch F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_fgetpos F
++ _IO_fsetpos F
++ fgetpos F
++ fopencookie F
++ fsetpos F
++ getrlimit F
++ localeconv F
++ msgctl F
++ semctl F
++ setrlimit F
++ shmctl F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ re_max_failures D 0x4
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ pthread_cond_broadcast F
++ pthread_cond_destroy F
++ pthread_cond_init F
++ pthread_cond_signal F
++ pthread_cond_wait F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ realpath F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_adjust_column F
++ _IO_default_doallocate F
++ _IO_default_finish F
++ _IO_default_pbackfail F
++ _IO_default_uflow F
++ _IO_default_xsgetn F
++ _IO_default_xsputn F
++ _IO_doallocbuf F
++ _IO_feof F
++ _IO_ferror F
++ _IO_fflush F
++ _IO_fgets F
++ _IO_file_close F
++ _IO_file_doallocate F
++ _IO_file_open F
++ _IO_file_read F
++ _IO_file_seek F
++ _IO_file_stat F
++ _IO_flockfile F
++ _IO_flush_all F
++ _IO_flush_all_linebuffered F
++ _IO_fprintf F
++ _IO_fputs F
++ _IO_fread F
++ _IO_free_backup_area F
++ _IO_ftell F
++ _IO_ftrylockfile F
++ _IO_funlockfile F
++ _IO_fwrite F
++ _IO_getc F
++ _IO_getline F
++ _IO_gets F
++ _IO_init F
++ _IO_init_marker F
++ _IO_link_in F
++ _IO_marker_delta F
++ _IO_marker_difference F
++ _IO_padn F
++ _IO_peekc_locked F
++ _IO_printf F
++ _IO_putc F
++ _IO_puts F
++ _IO_remove_marker F
++ _IO_seekmark F
++ _IO_seekoff F
++ _IO_seekpos F
++ _IO_setb F
++ _IO_setbuffer F
++ _IO_setvbuf F
++ _IO_sgetn F
++ _IO_sprintf F
++ _IO_sputbackc F
++ _IO_sscanf F
++ _IO_str_init_readonly F
++ _IO_str_init_static F
++ _IO_str_overflow F
++ _IO_str_pbackfail F
++ _IO_str_seekoff F
++ _IO_str_underflow F
++ _IO_sungetc F
++ _IO_switch_to_get_mode F
++ _IO_un_link F
++ _IO_ungetc F
++ _IO_unsave_markers F
++ _IO_vfprintf F
++ _IO_vfscanf F
++ _IO_vsprintf F
++ __adjtimex F
++ __argz_count F
++ __argz_next F
++ __argz_stringify F
++ __assert_fail F
++ __assert_perror_fail F
++ __bsd_getpgrp F
++ __check_rhosts_file D 0x4
++ __close F
++ __cmsg_nxthdr F
++ __connect F
++ __ctype_get_mb_cur_max F
++ __daylight D 0x4
++ __dcgettext F
++ __default_morecore F
++ __dgettext F
++ __dup2 F
++ __errno_location F
++ __fcntl F
++ __ffs F
++ __finite F
++ __finitef F
++ __finitel F
++ __fxstat F
++ __getdelim F
++ __getpagesize F
++ __getpgid F
++ __getpid F
++ __gettimeofday F
++ __gmtime_r F
++ __h_errno_location F
++ __isinf F
++ __isinff F
++ __isinfl F
++ __isnan F
++ __isnanf F
++ __isnanl F
++ __iswctype F
++ __ivaliduser F
++ __libc_calloc F
++ __libc_free F
++ __libc_init_first F
++ __libc_mallinfo F
++ __libc_malloc F
++ __libc_mallopt F
++ __libc_memalign F
++ __libc_pvalloc F
++ __libc_realloc F
++ __libc_start_main F
++ __libc_valloc F
++ __lseek F
++ __lxstat F
++ __mbrlen F
++ __mbrtowc F
++ __mempcpy F
++ __monstartup F
++ __nss_configure_lookup F
++ __nss_database_lookup F
++ __nss_group_lookup F
++ __nss_hosts_lookup F
++ __nss_next F
++ __nss_passwd_lookup F
++ __open F
++ __overflow F
++ __pipe F
++ __printf_fp F
++ __profile_frequency F
++ __read F
++ __res_randomid F
++ __sbrk F
++ __sched_get_priority_max F
++ __sched_get_priority_min F
++ __sched_getparam F
++ __sched_getscheduler F
++ __sched_setscheduler F
++ __sched_yield F
++ __secure_getenv F
++ __select F
++ __send F
++ __setpgid F
++ __sigaction F
++ __sigaddset F
++ __sigdelset F
++ __sigismember F
++ __sigpause F
++ __sigsetjmp F
++ __stpcpy F
++ __stpncpy F
++ __strcasecmp F
++ __strdup F
++ __strerror_r F
++ __strtod_internal F
++ __strtof_internal F
++ __strtok_r F
++ __strtol_internal F
++ __strtold_internal F
++ __strtoll_internal F
++ __strtoul_internal F
++ __strtoull_internal F
++ __sysv_signal F
++ __uflow F
++ __underflow F
++ __vfscanf F
++ __vsnprintf F
++ __vsscanf F
++ __wait F
++ __waitpid F
++ __wcstod_internal F
++ __wcstof_internal F
++ __wcstol_internal F
++ __wcstold_internal F
++ __wcstoll_internal F
++ __wcstoul_internal F
++ __wcstoull_internal F
++ __write F
++ __xmknod F
++ __xpg_basename F
++ __xstat F
++ _exit F
++ _libc_intl_domainname D 0x5
++ _longjmp F
++ _mcleanup F
++ _mcount F
++ _nl_msg_cat_cntr D 0x4
++ _obstack_allocated_p F
++ _obstack_begin F
++ _obstack_begin_1 F
++ _obstack_free F
++ _obstack_memory_used F
++ _obstack_newchunk F
++ _rpc_dtablesize F
++ _seterr_reply F
++ _setjmp F
++ _tolower F
++ _toupper F
++ a64l F
++ abort F
++ abs F
++ accept F
++ access F
++ acct F
++ addmntent F
++ adjtime F
++ adjtimex F
++ advance F
++ alarm F
++ alphasort F
++ argz_add F
++ argz_add_sep F
++ argz_append F
++ argz_count F
++ argz_create F
++ argz_create_sep F
++ argz_delete F
++ argz_extract F
++ argz_insert F
++ argz_next F
++ argz_replace F
++ argz_stringify F
++ asctime F
++ asctime_r F
++ asprintf F
++ atof F
++ atoi F
++ atol F
++ atoll F
++ authnone_create F
++ authunix_create F
++ authunix_create_default F
++ basename F
++ bcmp F
++ bcopy F
++ bdflush F
++ bind F
++ bindresvport F
++ bindtextdomain F
++ brk F
++ bsd_signal F
++ bsearch F
++ btowc F
++ bzero F
++ calloc F
++ callrpc F
++ canonicalize_file_name F
++ catclose F
++ catgets F
++ catopen F
++ cfgetispeed F
++ cfgetospeed F
++ cfmakeraw F
++ cfree F
++ cfsetispeed F
++ cfsetospeed F
++ cfsetspeed F
++ chdir F
++ chflags F
++ chmod F
++ chroot F
++ clearenv F
++ clearerr F
++ clearerr_unlocked F
++ clnt_broadcast F
++ clnt_create F
++ clnt_pcreateerror F
++ clnt_perrno F
++ clnt_perror F
++ clnt_spcreateerror F
++ clnt_sperrno F
++ clnt_sperror F
++ clntraw_create F
++ clnttcp_create F
++ clntudp_bufcreate F
++ clntudp_create F
++ clock F
++ close F
++ closedir F
++ closelog F
++ confstr F
++ connect F
++ copysign F
++ copysignf F
++ copysignl F
++ creat F
++ create_module F
++ ctermid F
++ ctime F
++ ctime_r F
++ cuserid F
++ daemon F
++ daylight D 0x4
++ dcgettext F
++ delete_module F
++ dgettext F
++ difftime F
++ dirfd F
++ dirname F
++ div F
++ dprintf F
++ drand48 F
++ drand48_r F
++ dup F
++ dup2 F
++ dysize F
++ ecvt F
++ ecvt_r F
++ endaliasent F
++ endfsent F
++ endgrent F
++ endhostent F
++ endmntent F
++ endnetent F
++ endnetgrent F
++ endprotoent F
++ endpwent F
++ endrpcent F
++ endservent F
++ endspent F
++ endttyent F
++ endusershell F
++ endutent F
++ envz_add F
++ envz_entry F
++ envz_get F
++ envz_merge F
++ envz_remove F
++ envz_strip F
++ erand48 F
++ erand48_r F
++ err F
++ error F
++ error_at_line F
++ error_message_count D 0x4
++ error_one_per_line D 0x4
++ errx F
++ ether_aton F
++ ether_aton_r F
++ ether_hostton F
++ ether_line F
++ ether_ntoa F
++ ether_ntoa_r F
++ ether_ntohost F
++ euidaccess F
++ execl F
++ execle F
++ execlp F
++ execv F
++ execve F
++ execvp F
++ exit F
++ fchdir F
++ fchflags F
++ fchmod F
++ fchown F
++ fcloseall F
++ fcntl F
++ fcvt F
++ fcvt_r F
++ fdatasync F
++ feof F
++ feof_unlocked F
++ ferror F
++ ferror_unlocked F
++ fexecve F
++ fflush F
++ fflush_unlocked F
++ ffs F
++ fgetc F
++ fgetgrent F
++ fgetgrent_r F
++ fgetpwent F
++ fgetpwent_r F
++ fgets F
++ fgetspent F
++ fgetspent_r F
++ fileno F
++ fileno_unlocked F
++ finite F
++ finitef F
++ finitel F
++ flock F
++ flockfile F
++ fork F
++ fpathconf F
++ fprintf F
++ fputc F
++ fputc_unlocked F
++ fputs F
++ fread F
++ free F
++ freeaddrinfo F
++ freopen F
++ frexp F
++ frexpf F
++ frexpl F
++ fscanf F
++ fseek F
++ fstatfs F
++ fsync F
++ ftell F
++ ftime F
++ ftok F
++ ftruncate F
++ ftrylockfile F
++ fts_children F
++ fts_close F
++ fts_open F
++ fts_read F
++ fts_set F
++ ftw F
++ funlockfile F
++ fwrite F
++ gcvt F
++ get_avphys_pages F
++ get_current_dir_name F
++ get_kernel_syms F
++ get_myaddress F
++ get_nprocs F
++ get_nprocs_conf F
++ get_phys_pages F
++ getaddrinfo F
++ getaliasbyname F
++ getaliasent F
++ getc F
++ getc_unlocked F
++ getchar F
++ getchar_unlocked F
++ getcwd F
++ getdelim F
++ getdirentries F
++ getdomainname F
++ getdtablesize F
++ getegid F
++ getenv F
++ geteuid F
++ getfsent F
++ getfsfile F
++ getfsspec F
++ getgid F
++ getgrent F
++ getgrgid F
++ getgrnam F
++ getgroups F
++ gethostbyaddr F
++ gethostbyname F
++ gethostbyname2 F
++ gethostent F
++ gethostid F
++ gethostname F
++ getitimer F
++ getline F
++ getlogin F
++ getlogin_r F
++ getmntent F
++ getmntent_r F
++ getnetbyaddr F
++ getnetbyname F
++ getnetent F
++ getnetgrent F
++ getnetgrent_r F
++ getopt F
++ getopt_long F
++ getopt_long_only F
++ getpagesize F
++ getpass F
++ getpeername F
++ getpgid F
++ getpgrp F
++ getpid F
++ getppid F
++ getpriority F
++ getprotobyname F
++ getprotobynumber F
++ getprotoent F
++ getpublickey F
++ getpw F
++ getpwent F
++ getpwnam F
++ getpwuid F
++ getresgid F
++ getresuid F
++ getrpcbyname F
++ getrpcbynumber F
++ getrpcent F
++ getrpcport F
++ getrusage F
++ gets F
++ getsecretkey F
++ getservbyname F
++ getservbyport F
++ getservent F
++ getsid F
++ getsockname F
++ getsockopt F
++ getspent F
++ getspnam F
++ getsubopt F
++ gettext F
++ gettimeofday F
++ getttyent F
++ getttynam F
++ getuid F
++ getusershell F
++ getutent F
++ getutent_r F
++ getutid F
++ getutid_r F
++ getutline F
++ getutline_r F
++ getw F
++ getwd F
++ glob F
++ glob_pattern_p F
++ globfree F
++ gmtime F
++ gmtime_r F
++ group_member F
++ gsignal F
++ gtty F
++ h_nerr D 0x4
++ hasmntopt F
++ hcreate F
++ hcreate_r F
++ hdestroy F
++ hdestroy_r F
++ herror F
++ hsearch F
++ hsearch_r F
++ hstrerror F
++ htonl F
++ htons F
++ index F
++ inet_addr F
++ inet_aton F
++ inet_lnaof F
++ inet_makeaddr F
++ inet_netof F
++ inet_network F
++ inet_nsap_addr F
++ inet_nsap_ntoa F
++ inet_ntoa F
++ inet_ntop F
++ inet_pton F
++ init_module F
++ initgroups F
++ initstate F
++ initstate_r F
++ innetgr F
++ insque F
++ ioctl F
++ iruserok F
++ isalnum F
++ isalpha F
++ isascii F
++ isatty F
++ isblank F
++ iscntrl F
++ isdigit F
++ isfdtype F
++ isgraph F
++ isinf F
++ isinff F
++ isinfl F
++ islower F
++ isnan F
++ isnanf F
++ isnanl F
++ isprint F
++ ispunct F
++ isspace F
++ isupper F
++ iswalnum F
++ iswalpha F
++ iswcntrl F
++ iswctype F
++ iswdigit F
++ iswgraph F
++ iswlower F
++ iswprint F
++ iswpunct F
++ iswspace F
++ iswupper F
++ iswxdigit F
++ isxdigit F
++ jrand48 F
++ jrand48_r F
++ kill F
++ killpg F
++ klogctl F
++ l64a F
++ labs F
++ lchown F
++ lckpwdf F
++ lcong48 F
++ lcong48_r F
++ ldexp F
++ ldexpf F
++ ldexpl F
++ ldiv F
++ lfind F
++ link F
++ listen F
++ llabs F
++ lldiv F
++ llseek F
++ localtime F
++ localtime_r F
++ lockf F
++ longjmp F
++ lrand48 F
++ lrand48_r F
++ lsearch F
++ lseek F
++ madvise F
++ mallinfo F
++ malloc F
++ malloc_get_state F
++ malloc_set_state F
++ malloc_stats F
++ malloc_trim F
++ malloc_usable_size F
++ mallopt F
++ mblen F
++ mbrlen F
++ mbrtowc F
++ mbsinit F
++ mbsnrtowcs F
++ mbsrtowcs F
++ mbstowcs F
++ mbtowc F
++ mcheck F
++ memalign F
++ memccpy F
++ memchr F
++ memcmp F
++ memcpy F
++ memfrob F
++ memmem F
++ memmove F
++ memset F
++ mkdir F
++ mkfifo F
++ mkstemp F
++ mktemp F
++ mktime F
++ mlock F
++ mlockall F
++ mmap F
++ modf F
++ modff F
++ modfl F
++ monstartup F
++ mount F
++ mprobe F
++ mprotect F
++ mrand48 F
++ mrand48_r F
++ mremap F
++ msgget F
++ msgrcv F
++ msgsnd F
++ msync F
++ mtrace F
++ munlock F
++ munlockall F
++ munmap F
++ muntrace F
++ nanosleep F
++ nfsservctl F
++ nice F
++ nl_langinfo F
++ nrand48 F
++ nrand48_r F
++ ntohl F
++ ntohs F
++ obstack_exit_failure D 0x4
++ obstack_free F
++ obstack_printf F
++ obstack_vprintf F
++ on_exit F
++ open F
++ open_memstream F
++ opendir F
++ openlog F
++ opterr D 0x4
++ optind D 0x4
++ optopt D 0x4
++ parse_printf_format F
++ pathconf F
++ pause F
++ perror F
++ personality F
++ pipe F
++ pmap_getmaps F
++ pmap_getport F
++ pmap_rmtcall F
++ pmap_set F
++ pmap_unset F
++ poll F
++ prctl F
++ printf F
++ profil F
++ pselect F
++ psignal F
++ pthread_attr_destroy F
++ pthread_attr_getdetachstate F
++ pthread_attr_getinheritsched F
++ pthread_attr_getschedparam F
++ pthread_attr_getschedpolicy F
++ pthread_attr_getscope F
++ pthread_attr_setdetachstate F
++ pthread_attr_setinheritsched F
++ pthread_attr_setschedparam F
++ pthread_attr_setschedpolicy F
++ pthread_attr_setscope F
++ pthread_condattr_destroy F
++ pthread_condattr_init F
++ pthread_equal F
++ pthread_exit F
++ pthread_getschedparam F
++ pthread_mutex_destroy F
++ pthread_mutex_init F
++ pthread_mutex_lock F
++ pthread_mutex_unlock F
++ pthread_self F
++ pthread_setcancelstate F
++ pthread_setcanceltype F
++ pthread_setschedparam F
++ ptrace F
++ putc F
++ putc_unlocked F
++ putchar F
++ putchar_unlocked F
++ putenv F
++ putpwent F
++ puts F
++ putspent F
++ pututline F
++ putw F
++ pvalloc F
++ qecvt F
++ qecvt_r F
++ qfcvt F
++ qfcvt_r F
++ qgcvt F
++ qsort F
++ query_module F
++ quotactl F
++ raise F
++ rand F
++ rand_r F
++ random F
++ random_r F
++ rcmd F
++ re_comp F
++ re_compile_fastmap F
++ re_compile_pattern F
++ re_exec F
++ re_match F
++ re_match_2 F
++ re_search F
++ re_search_2 F
++ re_set_registers F
++ re_set_syntax F
++ read F
++ readdir F
++ readdir_r F
++ readlink F
++ readv F
++ realloc F
++ reboot F
++ recv F
++ recvfrom F
++ recvmsg F
++ regcomp F
++ regerror F
++ regexec F
++ regfree F
++ register_printf_function F
++ registerrpc F
++ remove F
++ remque F
++ rename F
++ revoke F
++ rewind F
++ rewinddir F
++ rexec F
++ rexecoptions D 0x4
++ rindex F
++ rmdir F
++ rpmatch F
++ rresvport F
++ ruserok F
++ ruserpass F
++ sbrk F
++ scalbn F
++ scalbnf F
++ scalbnl F
++ scandir F
++ scanf F
++ sched_get_priority_max F
++ sched_get_priority_min F
++ sched_getparam F
++ sched_getscheduler F
++ sched_rr_get_interval F
++ sched_setparam F
++ sched_setscheduler F
++ sched_yield F
++ seed48 F
++ seed48_r F
++ seekdir F
++ select F
++ semget F
++ semop F
++ send F
++ sendmsg F
++ sendto F
++ setaliasent F
++ setbuf F
++ setbuffer F
++ setcontext F
++ setdomainname F
++ setegid F
++ setenv F
++ seteuid F
++ setfsent F
++ setfsgid F
++ setfsuid F
++ setgid F
++ setgrent F
++ setgroups F
++ sethostent F
++ sethostid F
++ sethostname F
++ setitimer F
++ setjmp F
++ setlinebuf F
++ setlocale F
++ setlogin F
++ setlogmask F
++ setmntent F
++ setnetent F
++ setnetgrent F
++ setpgid F
++ setpgrp F
++ setpriority F
++ setprotoent F
++ setpwent F
++ setregid F
++ setresgid F
++ setresuid F
++ setreuid F
++ setrpcent F
++ setservent F
++ setsid F
++ setsockopt F
++ setspent F
++ setstate F
++ setstate_r F
++ settimeofday F
++ setttyent F
++ setuid F
++ setusershell F
++ setutent F
++ setvbuf F
++ sgetspent F
++ sgetspent_r F
++ shmat F
++ shmdt F
++ shmget F
++ shutdown F
++ sigaction F
++ sigaddset F
++ sigaltstack F
++ sigandset F
++ sigblock F
++ sigdelset F
++ sigemptyset F
++ sigfillset F
++ siggetmask F
++ siginterrupt F
++ sigisemptyset F
++ sigismember F
++ siglongjmp F
++ signal F
++ sigorset F
++ sigpause F
++ sigpending F
++ sigprocmask F
++ sigreturn F
++ sigsetmask F
++ sigstack F
++ sigsuspend F
++ sigvec F
++ sigwait F
++ sleep F
++ snprintf F
++ socket F
++ socketpair F
++ sprintf F
++ srand F
++ srand48 F
++ srand48_r F
++ srandom F
++ srandom_r F
++ sscanf F
++ ssignal F
++ sstk F
++ statfs F
++ step F
++ stime F
++ stpcpy F
++ stpncpy F
++ strcasecmp F
++ strcat F
++ strchr F
++ strcmp F
++ strcoll F
++ strcpy F
++ strcspn F
++ strdup F
++ strerror F
++ strerror_r F
++ strfmon F
++ strfry F
++ strftime F
++ strlen F
++ strncasecmp F
++ strncat F
++ strncmp F
++ strncpy F
++ strndup F
++ strnlen F
++ strpbrk F
++ strptime F
++ strrchr F
++ strsep F
++ strsignal F
++ strspn F
++ strstr F
++ strtod F
++ strtof F
++ strtok F
++ strtok_r F
++ strtol F
++ strtold F
++ strtoll F
++ strtoq F
++ strtoul F
++ strtoull F
++ strtouq F
++ strxfrm F
++ stty F
++ svc_exit F
++ svc_fdset D 0x80
++ svc_getreq F
++ svc_getreqset F
++ svc_register F
++ svc_run F
++ svc_sendreply F
++ svc_unregister F
++ svcerr_auth F
++ svcerr_decode F
++ svcerr_noproc F
++ svcerr_noprog F
++ svcerr_progvers F
++ svcerr_systemerr F
++ svcerr_weakauth F
++ svcfd_create F
++ svcraw_create F
++ svctcp_create F
++ svcudp_bufcreate F
++ svcudp_create F
++ svcudp_enablecache F
++ swab F
++ swapoff F
++ swapon F
++ symlink F
++ sync F
++ syscall F
++ sysconf F
++ sysctl F
++ sysinfo F
++ syslog F
++ system F
++ tcdrain F
++ tcflow F
++ tcflush F
++ tcgetattr F
++ tcgetpgrp F
++ tcsendbreak F
++ tcsetattr F
++ tcsetpgrp F
++ tdelete F
++ telldir F
++ tempnam F
++ textdomain F
++ tfind F
++ time F
++ timegm F
++ timelocal F
++ times F
++ tmpnam F
++ tmpnam_r F
++ toascii F
++ tolower F
++ toupper F
++ towctrans F
++ towlower F
++ towupper F
++ tr_break F
++ truncate F
++ tsearch F
++ ttyname F
++ ttyname_r F
++ ttyslot F
++ twalk F
++ tzset F
++ ualarm F
++ ulckpwdf F
++ ulimit F
++ umask F
++ umount F
++ uname F
++ ungetc F
++ unlink F
++ unsetenv F
++ updwtmp F
++ uselib F
++ usleep F
++ ustat F
++ utime F
++ utimes F
++ utmpname F
++ valloc F
++ vasprintf F
++ vdprintf F
++ verr F
++ verrx F
++ vfork F
++ vfprintf F
++ vfscanf F
++ vhangup F
++ vlimit F
++ vprintf F
++ vscanf F
++ vsnprintf F
++ vsprintf F
++ vsscanf F
++ vsyslog F
++ vtimes F
++ vwarn F
++ vwarnx F
++ wait F
++ wait3 F
++ wait4 F
++ waitpid F
++ warn F
++ warnx F
++ wcpcpy F
++ wcpncpy F
++ wcrtomb F
++ wcscat F
++ wcschr F
++ wcscmp F
++ wcscoll F
++ wcscpy F
++ wcscspn F
++ wcsdup F
++ wcslen F
++ wcsncat F
++ wcsncmp F
++ wcsncpy F
++ wcsnrtombs F
++ wcspbrk F
++ wcsrchr F
++ wcsrtombs F
++ wcsspn F
++ wcsstr F
++ wcstod F
++ wcstof F
++ wcstok F
++ wcstol F
++ wcstold F
++ wcstombs F
++ wcstoq F
++ wcstoul F
++ wcstouq F
++ wcswidth F
++ wcsxfrm F
++ wctob F
++ wctomb F
++ wctrans F
++ wctype F
++ wcwidth F
++ wmemchr F
++ wmemcmp F
++ wmemcpy F
++ wmemmove F
++ wmemset F
++ write F
++ writev F
++ xdr_accepted_reply F
++ xdr_array F
++ xdr_authunix_parms F
++ xdr_bool F
++ xdr_bytes F
++ xdr_callhdr F
++ xdr_callmsg F
++ xdr_char F
++ xdr_cryptkeyarg F
++ xdr_cryptkeyarg2 F
++ xdr_cryptkeyres F
++ xdr_des_block F
++ xdr_double F
++ xdr_enum F
++ xdr_float F
++ xdr_free F
++ xdr_int F
++ xdr_key_netstarg F
++ xdr_key_netstres F
++ xdr_keybuf F
++ xdr_keystatus F
++ xdr_long F
++ xdr_netobj F
++ xdr_opaque F
++ xdr_opaque_auth F
++ xdr_pmap F
++ xdr_pmaplist F
++ xdr_pointer F
++ xdr_reference F
++ xdr_rejected_reply F
++ xdr_replymsg F
++ xdr_rmtcall_args F
++ xdr_rmtcallres F
++ xdr_short F
++ xdr_string F
++ xdr_u_char F
++ xdr_u_int F
++ xdr_u_long F
++ xdr_u_short F
++ xdr_union F
++ xdr_vector F
++ xdr_void F
++ xdr_wrapstring F
++ xdrmem_create F
++ xdrrec_create F
++ xdrrec_endofrecord F
++ xdrrec_eof F
++ xdrrec_skiprecord F
++ xdrstdio_create F
++ xencrypt F
++ xprt_register F
++ xprt_unregister F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __fork F
++ _nl_default_dirname D 0x12
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __bzero F
++ __clone F
++ clone F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls
++ __divdi3 F
++ __moddi3 F
++ __udivdi3 F
++ __umoddi3 F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ atexit F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++ __deregister_frame F
++ __frame_state_for F
++ __register_frame F
++ __register_frame_info_table F
++ __register_frame_table F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ __deregister_frame_info F
++ __register_frame_info F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ _IO_file_jumps D 0x54
++ _IO_list_all D 0x4
++ __after_morecore_hook D 0x4
++ __ctype32_b D 0x4
++ __ctype_b D 0x4
++ __ctype_tolower D 0x4
++ __ctype_toupper D 0x4
++ __curbrk D 0x4
++ __environ D 0x4
++ __free_hook D 0x4
++ __malloc_hook D 0x4
++ __malloc_initialize_hook D 0x4
++ __memalign_hook D 0x4
++ __morecore D 0x4
++ __progname D 0x4
++ __progname_full D 0x4
++ __rcmd_errstr D 0x4
++ __realloc_hook D 0x4
++ __timezone D 0x4
++ __tzname D 0x8
++ _environ D 0x4
++ _nl_domain_bindings D 0x4
++ _null_auth D 0xc
++ _obstack D 0x4
++ environ D 0x4
++ error_print_progname D 0x4
++ h_errlist D 0x14
++ loc1 D 0x4
++ loc2 D 0x4
++ locs D 0x4
++ mallwatch D 0x4
++ obstack_alloc_failed_handler D 0x4
++ optarg D 0x4
++ program_invocation_name D 0x4
++ program_invocation_short_name D 0x4
++ re_syntax_options D 0x4
++ rpc_createerr D 0x10
++ stderr D 0x4
++ stdin D 0x4
++ stdout D 0x4
++ svcauthdes_stats D 0xc
++ timezone D 0x4
++ tzname D 0x8
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls s390-.*-linux.*/tls
++ ___brk_addr D 0x4
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ mcount F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls
++ ioperm F
++ iopl F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls
++ _errno D 0x4
++ _h_errno D 0x4
++ errno D 0x4
++ h_errno D 0x4
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 sh[34].*-.*-linux.*/notls
++ _res D 0x200
++GLIBC_2.0 m68.*-.*-linux.*/notls
++ _res D 0x1fe
++ cacheflush F
++GLIBC_2.0 m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __fpu_control D 0x4
++GLIBC_2.0 powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls
++ __ashldi3 F
++ __ashrdi3 F
++ __cmpdi2 F
++ __fixdfdi F
++ __fixsfdi F
++ __fixunsdfdi F
++ __fixunssfdi F
++ __floatdidf F
++ __floatdisf F
++ __lshrdi3 F
++ __ucmpdi2 F
++GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++ __memcpy_by2 F
++ __memcpy_by4 F
++ __memcpy_g F
++ __mempcpy_by2 F
++ __mempcpy_by4 F
++ __mempcpy_byn F
++ __memset_ccn_by2 F
++ __memset_ccn_by4 F
++ __memset_gcn_by2 F
++ __memset_gcn_by4 F
++ __stpcpy_g F
++ __strcat_c F
++ __strcat_g F
++ __strchr_c F
++ __strchr_g F
++ __strchrnul_c F
++ __strchrnul_g F
++ __strcmp_gg F
++ __strcpy_g F
++ __strcspn_cg F
++ __strcspn_g F
++ __strlen_g F
++ __strncat_g F
++ __strncmp_g F
++ __strncpy_by2 F
++ __strncpy_by4 F
++ __strncpy_byn F
++ __strncpy_gg F
++ __strpbrk_cg F
++ __strpbrk_g F
++ __strrchr_c F
++ __strrchr_g F
++ __strspn_cg F
++ __strspn_g F
++ __strstr_cg F
++ __strstr_g F
++GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1.1 A
++GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _Exit F
++ __mempcpy_small F
++ __stpcpy_small F
++ __strcpy_small F
++ __strcspn_c1 F
++ __strcspn_c2 F
++ __strcspn_c3 F
++ __strpbrk_c2 F
++ __strpbrk_c3 F
++ __strsep_1c F
++ __strsep_2c F
++ __strsep_3c F
++ __strsep_g F
++ __strspn_c1 F
++ __strspn_c2 F
++ __strspn_c3 F
++ __strtok_r_1c F
++ __strverscmp F
++ getutmp F
++ getutmpx F
++ imaxabs F
++ imaxdiv F
++ strchrnul F
++ xdr_hyper F
++ xdr_int64_t F
++ xdr_longlong_t F
++ xdr_u_hyper F
++ xdr_u_longlong_t F
++ xdr_uint64_t F
++GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1.2 A
++GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __vfork F
++GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1.3 A
++GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __cxa_atexit F
++ __cxa_finalize F
++ __sigsuspend F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls
++ scalbln F
++ scalblnf F
++ scalblnl F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.2 ia64-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ wordexp F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_fgetpos64 F
++ _IO_fsetpos64 F
++ __fxstat64 F
++ __lxstat64 F
++ __xstat64 F
++ fgetpos64 F
++ fsetpos64 F
++ getrlimit64 F
++ readdir64 F
++ readdir64_r F
++ scandir64 F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ glob64 F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ alphasort64 F
++ versionsort64 F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_file_finish F
++ _IO_getline_info F
++ __asprintf F
++ __backtrace F
++ __backtrace_symbols F
++ __backtrace_symbols_fd F
++ __duplocale F
++ __freelocale F
++ __isalnum_l F
++ __isalpha_l F
++ __isascii_l F
++ __isblank_l F
++ __iscntrl_l F
++ __isdigit_l F
++ __isgraph_l F
++ __islower_l F
++ __isprint_l F
++ __ispunct_l F
++ __isspace_l F
++ __isupper_l F
++ __iswalnum_l F
++ __iswalpha_l F
++ __iswblank_l F
++ __iswcntrl_l F
++ __iswctype_l F
++ __iswdigit_l F
++ __iswgraph_l F
++ __iswlower_l F
++ __iswprint_l F
++ __iswpunct_l F
++ __iswspace_l F
++ __iswupper_l F
++ __iswxdigit_l F
++ __isxdigit_l F
++ __libc_allocate_rtsig F
++ __libc_current_sigrtmax F
++ __libc_current_sigrtmin F
++ __libc_freeres F
++ __libc_sa_len F
++ __newlocale F
++ __poll F
++ __pread64 F
++ __pwrite64 F
++ __rawmemchr F
++ __signbit F
++ __signbitf F
++ __strcasecmp_l F
++ __strcasestr F
++ __strcoll_l F
++ __strfmon_l F
++ __strncasecmp_l F
++ __strtod_l F
++ __strtof_l F
++ __strtol_l F
++ __strtold_l F
++ __strtoll_l F
++ __strtoul_l F
++ __strtoull_l F
++ __strxfrm_l F
++ __toascii_l F
++ __tolower_l F
++ __toupper_l F
++ __towctrans F
++ __towctrans_l F
++ __towlower_l F
++ __towupper_l F
++ __wcscasecmp_l F
++ __wcscoll_l F
++ __wcsncasecmp_l F
++ __wcstod_l F
++ __wcstof_l F
++ __wcstol_l F
++ __wcstold_l F
++ __wcstoll_l F
++ __wcstoul_l F
++ __wcstoull_l F
++ __wcsxfrm_l F
++ __wctype_l F
++ _argp_unlock_xxx F
++ _authenticate F
++ _dl_mcount_wrapper F
++ _dl_mcount_wrapper_check F
++ addseverity F
++ argp_err_exit_status D 0x4
++ argp_error F
++ argp_failure F
++ argp_help F
++ argp_parse F
++ argp_state_help F
++ argp_usage F
++ authdes_create F
++ authdes_getucred F
++ authdes_pk_create F
++ backtrace F
++ backtrace_symbols F
++ backtrace_symbols_fd F
++ capget F
++ capset F
++ cbc_crypt F
++ clntunix_create F
++ creat64 F
++ des_setparity F
++ ecb_crypt F
++ endutxent F
++ fattach F
++ fdetach F
++ ffsl F
++ ffsll F
++ fgetc_unlocked F
++ fgets_unlocked F
++ fmtmsg F
++ fopen64 F
++ fputs_unlocked F
++ fread_unlocked F
++ freopen64 F
++ fseeko F
++ fseeko64 F
++ fstatfs64 F
++ fstatvfs F
++ fstatvfs64 F
++ ftello F
++ ftello64 F
++ ftruncate64 F
++ ftw64 F
++ fwrite_unlocked F
++ gai_strerror F
++ getcontext F
++ getdate F
++ getdate_err D 0x4
++ getdate_r F
++ getmsg F
++ getnameinfo F
++ getnetname F
++ getpmsg F
++ getpt F
++ getutxent F
++ getutxid F
++ getutxline F
++ globfree64 F
++ gnu_get_libc_release F
++ gnu_get_libc_version F
++ grantpt F
++ host2netname F
++ iconv F
++ iconv_close F
++ iconv_open F
++ if_freenameindex F
++ if_indextoname F
++ if_nameindex F
++ if_nametoindex F
++ in6addr_any D 0x10
++ in6addr_loopback D 0x10
++ isastream F
++ iswblank F
++ key_decryptsession F
++ key_decryptsession_pk F
++ key_encryptsession F
++ key_encryptsession_pk F
++ key_gendes F
++ key_get_conv F
++ key_secretkey_is_set F
++ key_setnet F
++ key_setsecret F
++ lockf64 F
++ lseek64 F
++ makecontext F
++ mempcpy F
++ mmap64 F
++ netname2host F
++ netname2user F
++ nftw F
++ nftw64 F
++ ntp_adjtime F
++ ntp_gettime F
++ open64 F
++ passwd2des F
++ pread F
++ pread64 F
++ printf_size F
++ printf_size_info F
++ ptsname F
++ ptsname_r F
++ putgrent F
++ putmsg F
++ putpmsg F
++ pututxline F
++ pwrite F
++ pwrite64 F
++ rawmemchr F
++ rtime F
++ sendfile F
++ setrlimit64 F
++ setutxent F
++ sighold F
++ sigignore F
++ sigqueue F
++ sigrelse F
++ sigset F
++ sigtimedwait F
++ sigwaitinfo F
++ statfs64 F
++ statvfs F
++ statvfs64 F
++ strcasestr F
++ strtoimax F
++ strtoumax F
++ strverscmp F
++ svcunix_create F
++ svcunixfd_create F
++ swapcontext F
++ sysv_signal F
++ tcgetsid F
++ tdestroy F
++ tmpfile64 F
++ truncate64 F
++ umount2 F
++ unlockpt F
++ updwtmpx F
++ user2netname F
++ utmpxname F
++ versionsort F
++ waitid F
++ wcscasecmp F
++ wcsncasecmp F
++ wcsnlen F
++ wcstoimax F
++ wcstoll F
++ wcstoull F
++ wcstoumax F
++ wcswcs F
++ wordfree F
++ xdecrypt F
++ xdr_authdes_cred F
++ xdr_authdes_verf F
++ xdr_getcredres F
++ xdr_int16_t F
++ xdr_int32_t F
++ xdr_int8_t F
++ xdr_netnamestr F
++ xdr_sizeof F
++ xdr_uint16_t F
++ xdr_uint32_t F
++ xdr_uint8_t F
++ xdr_unixcred F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ __key_decryptsession_pk_LOCAL D 0x4
++ __key_encryptsession_pk_LOCAL D 0x4
++ __key_gendes_LOCAL D 0x4
++ _sys_errlist D 0x1f4
++ _sys_siglist D 0x100
++ argp_program_bug_address D 0x4
++ argp_program_version D 0x4
++ argp_program_version_hook D 0x4
++ sys_errlist D 0x1f4
++ sys_sigabbrev D 0x100
++ sys_siglist D 0x100
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls
++ __signbitl F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls
++| GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ _IO_2_1_stderr_ D 0x98
++ _IO_2_1_stdin_ D 0x98
++ _IO_2_1_stdout_ D 0x98
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ modify_ldt F
++GLIBC_2.1 powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ _IO_2_1_stderr_ D 0xa0
++ _IO_2_1_stdin_ D 0xa0
++ _IO_2_1_stdout_ D 0xa0
++GLIBC_2.1 s390-.*-linux.*/tls
++ __chown F
++GLIBC_2.2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.1 A
++GLIBC_2.2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ pivot_root F
++ posix_openpt F
++GLIBC_2.2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.2 A
++GLIBC_2.2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __nss_hostname_digits_dots F
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.3 A
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __rpc_thread_createerr F
++ __rpc_thread_svc_fdset F
++ __rpc_thread_svc_max_pollfd F
++ __rpc_thread_svc_pollfd F
++ sprofil F
++GLIBC_2.2.4 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.4 A
++GLIBC_2.2.4 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ dl_iterate_phdr F
++ getgrouplist F
++ sockatmark F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++ __arch_prctl F
++ arch_prctl F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_adjust_wcolumn F
++ _IO_free_wbackup_area F
++ _IO_init_wmarker F
++ _IO_iter_begin F
++ _IO_iter_end F
++ _IO_iter_file F
++ _IO_iter_next F
++ _IO_least_wmarker F
++ _IO_list_lock F
++ _IO_list_resetlock F
++ _IO_list_unlock F
++ _IO_seekwmark F
++ _IO_sputbackwc F
++ _IO_sungetwc F
++ _IO_switch_to_main_wget_area F
++ _IO_switch_to_wbackup_area F
++ _IO_switch_to_wget_mode F
++ _IO_unsave_wmarkers F
++ _IO_wdefault_doallocate F
++ _IO_wdefault_finish F
++ _IO_wdefault_pbackfail F
++ _IO_wdefault_uflow F
++ _IO_wdefault_xsgetn F
++ _IO_wdefault_xsputn F
++ _IO_wdo_write F
++ _IO_wdoallocbuf F
++ _IO_wfile_overflow F
++ _IO_wfile_seekoff F
++ _IO_wfile_sync F
++ _IO_wfile_underflow F
++ _IO_wfile_xsputn F
++ _IO_wmarker_delta F
++ _IO_wsetb F
++ __assert F
++ __cyg_profile_func_enter F
++ __cyg_profile_func_exit F
++ __endmntent F
++ __fbufsize F
++ __flbf F
++ __fpending F
++ __fpurge F
++ __freadable F
++ __freading F
++ __fsetlocking F
++ __fwritable F
++ __fwriting F
++ __getmntent_r F
++ __nl_langinfo_l F
++ __open64 F
++ __res_init F
++ __res_nclose F
++ __res_ninit F
++ __res_state F
++ __setmntent F
++ __statfs F
++ __strndup F
++ __sysconf F
++ __sysctl F
++ __wctrans_l F
++ __woverflow F
++ __wuflow F
++ __wunderflow F
++ __xpg_sigpause F
++ _flushlbf F
++ bind_textdomain_codeset F
++ dcngettext F
++ dngettext F
++ fgetwc F
++ fgetwc_unlocked F
++ fgetws F
++ fgetws_unlocked F
++ fmemopen F
++ fputwc F
++ fputwc_unlocked F
++ fputws F
++ fputws_unlocked F
++ fwide F
++ fwprintf F
++ fwscanf F
++ getdirentries64 F
++ getloadavg F
++ getwc F
++ getwc_unlocked F
++ getwchar F
++ getwchar_unlocked F
++ iruserok_af F
++ mcheck_check_all F
++ mcheck_pedantic F
++ memrchr F
++ mincore F
++ mkdtemp F
++ mkstemp64 F
++ moncontrol F
++ ngettext F
++ posix_fadvise F
++ posix_fadvise64 F
++ posix_fallocate F
++ posix_fallocate64 F
++ posix_madvise F
++ posix_memalign F
++ posix_spawn F
++ posix_spawn_file_actions_addclose F
++ posix_spawn_file_actions_adddup2 F
++ posix_spawn_file_actions_addopen F
++ posix_spawn_file_actions_destroy F
++ posix_spawn_file_actions_init F
++ posix_spawnattr_destroy F
++ posix_spawnattr_getflags F
++ posix_spawnattr_getpgroup F
++ posix_spawnattr_getschedparam F
++ posix_spawnattr_getschedpolicy F
++ posix_spawnattr_getsigdefault F
++ posix_spawnattr_getsigmask F
++ posix_spawnattr_init F
++ posix_spawnattr_setflags F
++ posix_spawnattr_setpgroup F
++ posix_spawnattr_setschedparam F
++ posix_spawnattr_setschedpolicy F
++ posix_spawnattr_setsigdefault F
++ posix_spawnattr_setsigmask F
++ posix_spawnp F
++ putwc F
++ putwc_unlocked F
++ putwchar F
++ putwchar_unlocked F
++ rcmd_af F
++ rexec_af F
++ rresvport_af F
++ ruserok_af F
++ svc_getreq_common F
++ svc_getreq_poll F
++ svc_max_pollfd D 0x4
++ swprintf F
++ swscanf F
++ ungetwc F
++ vfwprintf F
++ vfwscanf F
++ vswprintf F
++ vswscanf F
++ vwprintf F
++ vwscanf F
++ wcschrnul F
++ wcsftime F
++ wmempcpy F
++ wprintf F
++ wscanf F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++ __ctype32_b D 0x8
++ __ctype32_tolower D 0x8
++ __ctype32_toupper D 0x8
++ __ctype_b D 0x8
++ __ctype_tolower D 0x8
++ __ctype_toupper D 0x8
++ _res D 0x238
++ _sys_errlist D 0x3e8
++ sys_errlist D 0x3e8
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_2_1_stderr_ D 0xe0
++ _IO_2_1_stdin_ D 0xe0
++ _IO_2_1_stdout_ D 0xe0
++ _IO_file_jumps D 0xa8
++ _IO_list_all D 0x8
++ _IO_wfile_jumps D 0xa8
++ __after_morecore_hook D 0x8
++ __curbrk D 0x8
++ __environ D 0x8
++ __free_hook D 0x8
++ __key_decryptsession_pk_LOCAL D 0x8
++ __key_encryptsession_pk_LOCAL D 0x8
++ __key_gendes_LOCAL D 0x8
++ __malloc_hook D 0x8
++ __malloc_initialize_hook D 0x8
++ __memalign_hook D 0x8
++ __morecore D 0x8
++ __progname D 0x8
++ __progname_full D 0x8
++ __rcmd_errstr D 0x8
++ __realloc_hook D 0x8
++ __timezone D 0x8
++ __tzname D 0x10
++ _environ D 0x8
++ _nl_domain_bindings D 0x8
++ _null_auth D 0x18
++ _obstack D 0x8
++ _res_hconf D 0x48
++ _sys_siglist D 0x200
++ argp_program_bug_address D 0x8
++ argp_program_version D 0x8
++ argp_program_version_hook D 0x8
++ environ D 0x8
++ error_print_progname D 0x8
++ h_errlist D 0x28
++ loc1 D 0x8
++ loc2 D 0x8
++ locs D 0x8
++ mallwatch D 0x8
++ obstack_alloc_failed_handler D 0x8
++ optarg D 0x8
++ program_invocation_name D 0x8
++ program_invocation_short_name D 0x8
++ re_syntax_options D 0x8
++ rpc_createerr D 0x20
++ stderr D 0x8
++ stdin D 0x8
++ stdout D 0x8
++ svc_pollfd D 0x8
++ svcauthdes_stats D 0x18
++ sys_sigabbrev D 0x200
++ sys_siglist D 0x200
++ timezone D 0x8
++ tzname D 0x10
++GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.2.6 A
++GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __nanosleep F
++GLIBC_2.2.6 ia64-.*-linux.*/tls
++ getunwind F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ __ctype32_tolower D 0x4
++ __ctype32_toupper D 0x4
++ _res_hconf D 0x30
++ svc_pollfd D 0x4
++GLIBC_2.2 i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ _IO_wfile_jumps D 0x54
++GLIBC_2.2 ia64-.*-linux.*/tls
++ __clone2 F
++ __divdf3 F
++ __divsf3 F
++ __divtf3 F
++ __multi3 F
++ _inb F
++ _inl F
++ _inw F
++ _outb F
++ _outl F
++ _outw F
++ inb F
++ inl F
++ inw F
++ outb F
++ outw F
++ pciconfig_read F
++ pciconfig_write F
++GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls
++ ___brk_addr D 0x8
++GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ _nl_default_dirname D 0x20
++GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.2 A
++ __register_atfork F
++ lchmod F
++ sched_getaffinity F
++ sched_setaffinity F
++ strptime_l F
++GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls x86_64-.*-linux.*/tls
++ epoll_create F
++ epoll_ctl F
++ epoll_wait F
++GLIBC_2.3.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.3 A
++ remap_file_pages F
++GLIBC_2.3.3 i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls
++ _sys_siglist D 0x104
++ sys_sigabbrev D 0x104
++ sys_siglist D 0x104
++GLIBC_2.3.3 ia64-.*-linux.*/tls powerpc64-.*-linux.*/thread s390x-.*-linux.*/tls x86_64-.*-linux.*/tls
++| GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ strtoll_l F
++ strtoull_l F
++GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3 A
++ __ctype_b_loc F
++ __ctype_tolower_loc F
++ __ctype_toupper_loc F
++ __isctype F
++ __strftime_l F
++ __uselocale F
++ __wcsftime_l F
++ duplocale F
++ fgetxattr F
++ flistxattr F
++ freeifaddrs F
++ freelocale F
++ fremovexattr F
++ fsetxattr F
++ futimes F
++ getifaddrs F
++ getxattr F
++ isalnum_l F
++ isalpha_l F
++ isblank_l F
++ iscntrl_l F
++ isctype F
++ isdigit_l F
++ isgraph_l F
++ islower_l F
++ isprint_l F
++ ispunct_l F
++ isspace_l F
++ isupper_l F
++ iswalnum_l F
++ iswalpha_l F
++ iswblank_l F
++ iswcntrl_l F
++ iswctype_l F
++ iswdigit_l F
++ iswgraph_l F
++ iswlower_l F
++ iswprint_l F
++ iswpunct_l F
++ iswspace_l F
++ iswupper_l F
++ iswxdigit_l F
++ isxdigit_l F
++ lgetxattr F
++ listxattr F
++ llistxattr F
++ lremovexattr F
++ lsetxattr F
++ lutimes F
++ newlocale F
++ nl_langinfo_l F
++ readahead F
++ removexattr F
++ sendfile64 F
++ setxattr F
++ strcasecmp_l F
++ strcoll_l F
++ strfmon_l F
++ strftime_l F
++ strncasecmp_l F
++ strtod_l F
++ strtof_l F
++ strtol_l F
++ strtold_l F
++ strtoul_l F
++ strxfrm_l F
++ tolower_l F
++ toupper_l F
++ towctrans_l F
++ towlower_l F
++ towupper_l F
++ uselocale F
++ wcscasecmp_l F
++ wcscoll_l F
++ wcsftime_l F
++ wcsncasecmp_l F
++ wcstod_l F
++ wcstof_l F
++ wcstol_l F
++ wcstold_l F
++ wcstoll_l F
++ wcstoul_l F
++ wcstoull_l F
++ wcsxfrm_l F
++ wctrans_l F
++ wctype_l F
++GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ _sys_errlist D 0x1f8
++ sys_errlist D 0x1f8
++GLIBC_2.3 ia64-.*-linux.*/tls powerpc64-.*-linux.*/thread s390x-.*-linux.*/tls x86_64-.*-linux.*/tls
++ _sys_errlist D 0x3f0
++ sys_errlist D 0x3f0
+diff -u -udbrN glibc-2.3.2/abilist/libcrypt.abilist glibc-2.3.2-200304020432/abilist/libcrypt.abilist
+--- glibc-2.3.2/abilist/libcrypt.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/libcrypt.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,19 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ crypt F
++ crypt_r F
++ encrypt F
++ encrypt_r F
++ fcrypt F
++ setkey F
++ setkey_r F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2 s390x-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+diff -u -udbrN glibc-2.3.2/abilist/libdl.abilist glibc-2.3.2-200304020432/abilist/libdl.abilist
+--- glibc-2.3.2/abilist/libdl.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/libdl.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,33 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ dlopen F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ dladdr F
++ dlclose F
++ dlerror F
++ dlsym F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ dlvsym F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2 s390x-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.3 A
++ dladdr1 F
++ dlinfo F
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+diff -u -udbrN glibc-2.3.2/abilist/libm.abilist glibc-2.3.2-200304020432/abilist/libm.abilist
+--- glibc-2.3.2/abilist/libm.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/libm.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,355 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _LIB_VERSION D 0x4
++ acos F
++ acosf F
++ acosh F
++ acoshf F
++ acoshl F
++ acosl F
++ asin F
++ asinf F
++ asinh F
++ asinhf F
++ asinhl F
++ asinl F
++ atan F
++ atan2 F
++ atan2f F
++ atan2l F
++ atanf F
++ atanh F
++ atanhf F
++ atanhl F
++ atanl F
++ cbrt F
++ cbrtf F
++ cbrtl F
++ ceil F
++ ceilf F
++ ceill F
++ copysign F
++ copysignf F
++ copysignl F
++ cos F
++ cosf F
++ cosh F
++ coshf F
++ coshl F
++ cosl F
++ drem F
++ dremf F
++ dreml F
++ erf F
++ erfc F
++ erfcf F
++ erfcl F
++ erff F
++ erfl F
++ exp F
++ expf F
++ expl F
++ expm1 F
++ expm1f F
++ expm1l F
++ fabs F
++ fabsf F
++ fabsl F
++ finite F
++ finitef F
++ finitel F
++ floor F
++ floorf F
++ floorl F
++ fmod F
++ fmodf F
++ fmodl F
++ frexp F
++ frexpf F
++ frexpl F
++ gamma F
++ gammaf F
++ gammal F
++ hypot F
++ hypotf F
++ hypotl F
++ ilogb F
++ ilogbf F
++ ilogbl F
++ j0 F
++ j0f F
++ j0l F
++ j1 F
++ j1f F
++ j1l F
++ jn F
++ jnf F
++ jnl F
++ ldexp F
++ ldexpf F
++ ldexpl F
++ lgamma F
++ lgamma_r F
++ lgammaf F
++ lgammaf_r F
++ lgammal F
++ lgammal_r F
++ log F
++ log10 F
++ log10f F
++ log10l F
++ log1p F
++ log1pf F
++ log1pl F
++ logb F
++ logbf F
++ logbl F
++ logf F
++ logl F
++ matherr F
++ modf F
++ modff F
++ modfl F
++ nextafter F
++ nextafterf F
++ nextafterl F
++ pow F
++ powf F
++ powl F
++ remainder F
++ remainderf F
++ remainderl F
++ rint F
++ rintf F
++ rintl F
++ scalb F
++ scalbf F
++ scalbl F
++ scalbn F
++ scalbnf F
++ scalbnl F
++ signgam D 0x4
++ significand F
++ significandf F
++ significandl F
++ sin F
++ sinf F
++ sinh F
++ sinhf F
++ sinhl F
++ sinl F
++ sqrt F
++ sqrtf F
++ sqrtl F
++ tan F
++ tanf F
++ tanh F
++ tanhf F
++ tanhl F
++ tanl F
++ y0 F
++ y0f F
++ y0l F
++ y1 F
++ y1f F
++ y1l F
++ yn F
++ ynf F
++ ynl F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ feclearexcept F
++ fegetenv F
++ fegetexceptflag F
++ feraiseexcept F
++ fesetenv F
++ fesetexceptflag F
++ feupdateenv F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __clog10 F
++ __clog10f F
++ __clog10l F
++ __finite F
++ __finitef F
++ __finitel F
++ __fpclassify F
++ __fpclassifyf F
++ __signbit F
++ __signbitf F
++ cabs F
++ cabsf F
++ cabsl F
++ cacos F
++ cacosf F
++ cacosh F
++ cacoshf F
++ cacoshl F
++ cacosl F
++ carg F
++ cargf F
++ cargl F
++ casin F
++ casinf F
++ casinh F
++ casinhf F
++ casinhl F
++ casinl F
++ catan F
++ catanf F
++ catanh F
++ catanhf F
++ catanhl F
++ catanl F
++ ccos F
++ ccosf F
++ ccosh F
++ ccoshf F
++ ccoshl F
++ ccosl F
++ cexp F
++ cexpf F
++ cexpl F
++ cimag F
++ cimagf F
++ cimagl F
++ clog F
++ clog10 F
++ clog10f F
++ clog10l F
++ clogf F
++ clogl F
++ conj F
++ conjf F
++ conjl F
++ cpow F
++ cpowf F
++ cpowl F
++ cproj F
++ cprojf F
++ cprojl F
++ creal F
++ crealf F
++ creall F
++ csin F
++ csinf F
++ csinh F
++ csinhf F
++ csinhl F
++ csinl F
++ csqrt F
++ csqrtf F
++ csqrtl F
++ ctan F
++ ctanf F
++ ctanh F
++ ctanhf F
++ ctanhl F
++ ctanl F
++ exp10 F
++ exp10f F
++ exp10l F
++ exp2 F
++ exp2f F
++ fdim F
++ fdimf F
++ fdiml F
++ fegetround F
++ feholdexcept F
++ fesetround F
++ fetestexcept F
++ fma F
++ fmaf F
++ fmal F
++ fmax F
++ fmaxf F
++ fmaxl F
++ fmin F
++ fminf F
++ fminl F
++ llrint F
++ llrintf F
++ llrintl F
++ llround F
++ llroundf F
++ llroundl F
++ log2 F
++ log2f F
++ log2l F
++ lrint F
++ lrintf F
++ lrintl F
++ lround F
++ lroundf F
++ lroundl F
++ nan F
++ nanf F
++ nanl F
++ nearbyint F
++ nearbyintf F
++ nearbyintl F
++ nexttoward F
++ nexttowardf F
++ nexttowardl F
++ pow10 F
++ pow10f F
++ pow10l F
++ remquo F
++ remquof F
++ remquol F
++ round F
++ roundf F
++ roundl F
++ scalbln F
++ scalblnf F
++ scalblnl F
++ sincos F
++ sincosf F
++ sincosl F
++ tgamma F
++ tgammaf F
++ tgammal F
++ trunc F
++ truncf F
++ truncl F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls
++ __fpclassifyl F
++ __signbitl F
++ exp2l F
++GLIBC_2.1 powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __fe_dfl_env D 0x8
++ __fe_enabled_env D 0x8
++ __fe_nomask_env F
++ __fe_nonieee_env D 0x8
++GLIBC_2.2.3 ia64-.*-linux.*/tls
++ GLIBC_2.2.3 A
++ matherrf F
++ matherrl F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ fedisableexcept F
++ feenableexcept F
++ fegetexcept F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls
++ __expl F
++ __expm1l F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+diff -u -udbrN glibc-2.3.2/abilist/libnsl.abilist glibc-2.3.2-200304020432/abilist/libnsl.abilist
+--- glibc-2.3.2/abilist/libnsl.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/libnsl.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,142 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __yp_check F
++ xdr_domainname F
++ xdr_keydat F
++ xdr_mapname F
++ xdr_peername F
++ xdr_valdat F
++ xdr_yp_buf F
++ xdr_ypbind_binding F
++ xdr_ypbind_resp F
++ xdr_ypbind_resptype F
++ xdr_ypbind_setdom F
++ xdr_ypdelete_args F
++ xdr_ypmap_parms F
++ xdr_ypmaplist F
++ xdr_yppush_status F
++ xdr_yppushresp_xfr F
++ xdr_ypreq_key F
++ xdr_ypreq_nokey F
++ xdr_ypreq_xfr F
++ xdr_ypresp_all F
++ xdr_ypresp_key_val F
++ xdr_ypresp_maplist F
++ xdr_ypresp_master F
++ xdr_ypresp_order F
++ xdr_ypresp_val F
++ xdr_ypresp_xfr F
++ xdr_ypstat F
++ xdr_ypupdate_args F
++ xdr_ypxfrstat F
++ yp_all F
++ yp_bind F
++ yp_first F
++ yp_get_default_domain F
++ yp_maplist F
++ yp_master F
++ yp_match F
++ yp_next F
++ yp_order F
++ yp_unbind F
++ yp_update F
++ ypbinderr_string F
++ yperr_string F
++ ypprot_err F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __free_fdresult F
++ __nis_default_access F
++ __nis_default_group F
++ __nis_default_owner F
++ __nis_default_ttl F
++ __nis_finddirectory F
++ __nis_hash F
++ __nisbind_connect F
++ __nisbind_create F
++ __nisbind_destroy F
++ __nisbind_next F
++ nis_add F
++ nis_add_entry F
++ nis_addmember F
++ nis_checkpoint F
++ nis_clone_directory F
++ nis_clone_object F
++ nis_clone_result F
++ nis_creategroup F
++ nis_destroy_object F
++ nis_destroygroup F
++ nis_dir_cmp F
++ nis_domain_of F
++ nis_domain_of_r F
++ nis_first_entry F
++ nis_free_directory F
++ nis_free_object F
++ nis_free_request F
++ nis_freenames F
++ nis_freeresult F
++ nis_freeservlist F
++ nis_freetags F
++ nis_getnames F
++ nis_getservlist F
++ nis_ismember F
++ nis_leaf_of F
++ nis_leaf_of_r F
++ nis_lerror F
++ nis_list F
++ nis_local_directory F
++ nis_local_group F
++ nis_local_host F
++ nis_local_principal F
++ nis_lookup F
++ nis_mkdir F
++ nis_modify F
++ nis_modify_entry F
++ nis_name_of F
++ nis_name_of_r F
++ nis_next_entry F
++ nis_perror F
++ nis_ping F
++ nis_print_directory F
++ nis_print_entry F
++ nis_print_group F
++ nis_print_group_entry F
++ nis_print_link F
++ nis_print_object F
++ nis_print_result F
++ nis_print_rights F
++ nis_print_table F
++ nis_read_obj F
++ nis_remove F
++ nis_remove_entry F
++ nis_removemember F
++ nis_rmdir F
++ nis_servstate F
++ nis_sperrno F
++ nis_sperror F
++ nis_sperror_r F
++ nis_stats F
++ nis_verifygroup F
++ nis_write_obj F
++ readColdStartFile F
++ writeColdStartFile F
++ xdr_cback_data F
++ xdr_obj_p F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ xdr_ypall F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+diff -u -udbrN glibc-2.3.2/abilist/libpthread.abilist glibc-2.3.2-200304020432/abilist/libpthread.abilist
+--- glibc-2.3.2/abilist/libpthread.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/libpthread.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,256 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ pthread_attr_init F
++ pthread_create F
++ sem_destroy F
++ sem_getvalue F
++ sem_init F
++ sem_post F
++ sem_trywait F
++ sem_wait F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ pthread_atfork F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ pthread_cond_broadcast F
++ pthread_cond_destroy F
++ pthread_cond_init F
++ pthread_cond_signal F
++ pthread_cond_timedwait F
++ pthread_cond_wait F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ _IO_flockfile F
++ _IO_ftrylockfile F
++ _IO_funlockfile F
++ __close F
++ __connect F
++ __errno_location F
++ __fcntl F
++ __fork F
++ __h_errno_location F
++ __lseek F
++ __open F
++ __pthread_getspecific F
++ __pthread_key_create F
++ __pthread_mutex_destroy F
++ __pthread_mutex_init F
++ __pthread_mutex_lock F
++ __pthread_mutex_trylock F
++ __pthread_mutex_unlock F
++ __pthread_mutexattr_destroy F
++ __pthread_mutexattr_init F
++ __pthread_mutexattr_settype F
++ __pthread_once F
++ __pthread_setspecific F
++ __read F
++ __send F
++ __sigaction F
++ __wait F
++ __write F
++ _pthread_cleanup_pop F
++ _pthread_cleanup_pop_restore F
++ _pthread_cleanup_push F
++ _pthread_cleanup_push_defer F
++ accept F
++ close F
++ connect F
++ fcntl F
++ flockfile F
++ fork F
++ fsync F
++ ftrylockfile F
++ funlockfile F
++ longjmp F
++ lseek F
++ msync F
++ nanosleep F
++ open F
++ pause F
++ pthread_attr_destroy F
++ pthread_attr_getdetachstate F
++ pthread_attr_getinheritsched F
++ pthread_attr_getschedparam F
++ pthread_attr_getschedpolicy F
++ pthread_attr_getscope F
++ pthread_attr_setdetachstate F
++ pthread_attr_setinheritsched F
++ pthread_attr_setschedparam F
++ pthread_attr_setschedpolicy F
++ pthread_attr_setscope F
++ pthread_cancel F
++ pthread_condattr_destroy F
++ pthread_condattr_init F
++ pthread_detach F
++ pthread_equal F
++ pthread_exit F
++ pthread_getschedparam F
++ pthread_getspecific F
++ pthread_join F
++ pthread_key_create F
++ pthread_key_delete F
++ pthread_kill F
++ pthread_kill_other_threads_np F
++ pthread_mutex_destroy F
++ pthread_mutex_init F
++ pthread_mutex_lock F
++ pthread_mutex_trylock F
++ pthread_mutex_unlock F
++ pthread_mutexattr_destroy F
++ pthread_mutexattr_getkind_np F
++ pthread_mutexattr_init F
++ pthread_mutexattr_setkind_np F
++ pthread_once F
++ pthread_self F
++ pthread_setcancelstate F
++ pthread_setcanceltype F
++ pthread_setschedparam F
++ pthread_setspecific F
++ pthread_sigmask F
++ pthread_testcancel F
++ raise F
++ read F
++ recv F
++ recvfrom F
++ recvmsg F
++ send F
++ sendmsg F
++ sendto F
++ sigaction F
++ siglongjmp F
++ sigwait F
++ system F
++ tcdrain F
++ vfork F
++ wait F
++ waitpid F
++ write F
++GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1.1 A
++GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ sem_close F
++ sem_open F
++ sem_unlink F
++GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1.2 A
++GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __vfork F
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __libc_allocate_rtsig F
++ __libc_current_sigrtmax F
++ __libc_current_sigrtmin F
++ pthread_attr_getguardsize F
++ pthread_attr_getstackaddr F
++ pthread_attr_getstacksize F
++ pthread_attr_setguardsize F
++ pthread_attr_setstackaddr F
++ pthread_attr_setstacksize F
++ pthread_getconcurrency F
++ pthread_mutexattr_gettype F
++ pthread_mutexattr_settype F
++ pthread_rwlock_destroy F
++ pthread_rwlock_init F
++ pthread_rwlock_rdlock F
++ pthread_rwlock_tryrdlock F
++ pthread_rwlock_trywrlock F
++ pthread_rwlock_unlock F
++ pthread_rwlock_wrlock F
++ pthread_rwlockattr_destroy F
++ pthread_rwlockattr_getkind_np F
++ pthread_rwlockattr_getpshared F
++ pthread_rwlockattr_init F
++ pthread_rwlockattr_setkind_np F
++ pthread_rwlockattr_setpshared F
++ pthread_setconcurrency F
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.3 A
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ pthread_getattr_np F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __open64 F
++ __pread64 F
++ __pthread_rwlock_destroy F
++ __pthread_rwlock_init F
++ __pthread_rwlock_rdlock F
++ __pthread_rwlock_tryrdlock F
++ __pthread_rwlock_trywrlock F
++ __pthread_rwlock_unlock F
++ __pthread_rwlock_wrlock F
++ __pwrite64 F
++ __res_state F
++ lseek64 F
++ open64 F
++ pread F
++ pread64 F
++ pthread_attr_getstack F
++ pthread_attr_setstack F
++ pthread_barrier_destroy F
++ pthread_barrier_init F
++ pthread_barrier_wait F
++ pthread_barrierattr_destroy F
++ pthread_barrierattr_init F
++ pthread_barrierattr_setpshared F
++ pthread_condattr_getpshared F
++ pthread_condattr_setpshared F
++ pthread_getcpuclockid F
++ pthread_mutex_timedlock F
++ pthread_mutexattr_getpshared F
++ pthread_mutexattr_setpshared F
++ pthread_rwlock_timedrdlock F
++ pthread_rwlock_timedwrlock F
++ pthread_spin_destroy F
++ pthread_spin_init F
++ pthread_spin_lock F
++ pthread_spin_trylock F
++ pthread_spin_unlock F
++ pthread_yield F
++ pwrite F
++ pwrite64 F
++ sem_timedwait F
++GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.2.6 A
++GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __nanosleep F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.2 A
++GLIBC_2.3.3 i.86-.*-linux.*/thread sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.3.3 A
++ pthread_barrierattr_getpshared F
++ pthread_condattr_getclock F
++ pthread_condattr_setclock F
++ pthread_timedjoin_np F
++ pthread_tryjoin_np F
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+diff -u -udbrN glibc-2.3.2/abilist/libresolv.abilist glibc-2.3.2-200304020432/abilist/libresolv.abilist
+--- glibc-2.3.2/abilist/libresolv.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/libresolv.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,95 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.0 A
++ dn_expand F
++ res_mkquery F
++ res_query F
++ res_querydomain F
++ res_search F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __b64_ntop F
++ __b64_pton F
++ __dn_comp F
++ __dn_count_labels F
++ __dn_skipname F
++ __fp_nquery F
++ __fp_query F
++ __fp_resstat F
++ __hostalias F
++ __loc_aton F
++ __loc_ntoa F
++ __p_cdname F
++ __p_cdnname F
++ __p_class F
++ __p_fqname F
++ __p_fqnname F
++ __p_option F
++ __p_query F
++ __p_secstodate F
++ __p_time F
++ __p_type F
++ __putlong F
++ __putshort F
++ __res_close F
++ __res_dnok F
++ __res_hnok F
++ __res_isourserver F
++ __res_mailok F
++ __res_nameinquery F
++ __res_ownok F
++ __res_queriesmatch F
++ __res_send F
++ __sym_ntop F
++ __sym_ntos F
++ __sym_ston F
++ _gethtbyaddr F
++ _gethtbyname F
++ _gethtbyname2 F
++ _gethtent F
++ _getlong F
++ _getshort F
++ _sethtent F
++ inet_net_ntop F
++ inet_net_pton F
++ inet_neta F
++ res_gethostbyaddr F
++ res_gethostbyname F
++ res_gethostbyname2 F
++ res_send_setqhook F
++ res_send_setrhook F
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ __p_class_syms D 0x54
++ __p_type_syms D 0x21c
++ _res_opcodes D 0x40
++GLIBC_2.0 ia64-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __p_class_syms D 0xa8
++ __p_type_syms D 0x438
++ _res_opcodes D 0x80
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ __dn_expand F
++ __res_hostalias F
++ __res_mkquery F
++ __res_nmkquery F
++ __res_nquery F
++ __res_nquerydomain F
++ __res_nsearch F
++ __res_nsend F
++ __res_query F
++ __res_querydomain F
++ __res_search F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.2 A
++ __p_rcode F
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+diff -u -udbrN glibc-2.3.2/abilist/librt.abilist glibc-2.3.2-200304020432/abilist/librt.abilist
+--- glibc-2.3.2/abilist/librt.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/librt.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,44 @@
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.1 A
++GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ aio_cancel F
++ aio_cancel64 F
++ aio_error F
++ aio_error64 F
++ aio_fsync F
++ aio_fsync64 F
++ aio_init F
++ aio_read F
++ aio_read64 F
++ aio_return F
++ aio_return64 F
++ aio_suspend F
++ aio_suspend64 F
++ aio_write F
++ aio_write64 F
++ lio_listio F
++ lio_listio64 F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ clock_getcpuclockid F
++ clock_getres F
++ clock_gettime F
++ clock_nanosleep F
++ clock_settime F
++ shm_open F
++ shm_unlink F
++ timer_create F
++ timer_delete F
++ timer_getoverrun F
++ timer_gettime F
++ timer_settime F
++GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+diff -u -udbrN glibc-2.3.2/abilist/libthread_db.abilist glibc-2.3.2-200304020432/abilist/libthread_db.abilist
+--- glibc-2.3.2/abilist/libthread_db.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/libthread_db.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,59 @@
++GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.1.3 A
++GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ td_init F
++ td_log F
++ td_ta_clear_event F
++ td_ta_delete F
++ td_ta_enable_stats F
++ td_ta_event_addr F
++ td_ta_event_getmsg F
++ td_ta_get_nthreads F
++ td_ta_get_ph F
++ td_ta_get_stats F
++ td_ta_map_id2thr F
++ td_ta_map_lwp2thr F
++ td_ta_new F
++ td_ta_reset_stats F
++ td_ta_set_event F
++ td_ta_setconcurrency F
++ td_ta_thr_iter F
++ td_ta_tsd_iter F
++ td_thr_clear_event F
++ td_thr_dbresume F
++ td_thr_dbsuspend F
++ td_thr_event_enable F
++ td_thr_event_getmsg F
++ td_thr_get_info F
++ td_thr_getfpregs F
++ td_thr_getgregs F
++ td_thr_getxregs F
++ td_thr_getxregsize F
++ td_thr_set_event F
++ td_thr_setfpregs F
++ td_thr_setgregs F
++ td_thr_setprio F
++ td_thr_setsigpending F
++ td_thr_setxregs F
++ td_thr_sigsetmask F
++ td_thr_tsd F
++ td_thr_validate F
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.2.3 A
++GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ td_symbol_list F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2 s390x-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3.3 A
++ td_thr_tlsbase F
++GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls
++ GLIBC_2.3 A
++ td_thr_tls_get_addr F
+diff -u -udbrN glibc-2.3.2/abilist/libutil.abilist glibc-2.3.2-200304020432/abilist/libutil.abilist
+--- glibc-2.3.2/abilist/libutil.abilist Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/abilist/libutil.abilist Wed Apr 2 06:39:52 2003
+@@ -0,0 +1,18 @@
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++ GLIBC_2.0 A
++GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls
++| GLIBC_2.2.5 x86_64-.*-linux.*/tls
++| GLIBC_2.2 s390x-.*-linux.*/tls
++| GLIBC_2.3 powerpc64-.*-linux.*/thread
++ forkpty F
++ login F
++ login_tty F
++ logout F
++ logwtmp F
++ openpty F
++GLIBC_2.2.5 x86_64-.*-linux.*/tls
++ GLIBC_2.2.5 A
++GLIBC_2.2 s390x-.*-linux.*/tls
++ GLIBC_2.2 A
++GLIBC_2.3 powerpc64-.*-linux.*/thread
++ GLIBC_2.3 A
+diff -u -udbrN glibc-2.3.2/argp/tst-argp1.c glibc-2.3.2-200304020432/argp/tst-argp1.c
+--- glibc-2.3.2/argp/tst-argp1.c Wed Dec 4 23:45:02 2002
++++ glibc-2.3.2-200304020432/argp/tst-argp1.c Mon Mar 17 20:21:04 2003
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 2002 Free Software Foundation, Inc.
++/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
+
+@@ -29,7 +29,7 @@
+ #define OPT_TOPLEVEL 304
+
+
+-static const struct argp_option options[] =
++static const struct argp_option test_options[] =
+ {
+ { NULL, 0, NULL, 0, "\
+ This is a test for threads so we allow ther user to selection the number of \
+@@ -89,12 +89,12 @@
+ /* Data structure to communicate with argp functions. */
+ static struct argp argp =
+ {
+- options, parse_opt
++ test_options, parse_opt
+ };
+
+
+-int
+-main (void)
++static int
++do_test (void)
+ {
+ int argc = 2;
+ char *argv[3] = { (char *) "tst-argp1", (char *) "--help", NULL };
+@@ -113,3 +113,6 @@
+ {
+ return ARGP_ERR_UNKNOWN;
+ }
++
++#define TEST_FUNCTION do_test ()
++#include "../test-skeleton.c"
+diff -u -udbrN glibc-2.3.2/config.h.in glibc-2.3.2-200304020432/config.h.in
+--- glibc-2.3.2/config.h.in Tue Feb 4 09:35:22 2003
++++ glibc-2.3.2-200304020432/config.h.in Mon Mar 10 10:10:43 2003
+@@ -58,6 +58,9 @@
+ /* Define a symbol_name as a global .symbol_name for ld. */
+ #undef HAVE_ASM_GLOBAL_DOT_NAME
+
++/* Define if the assembler generates debugging information directly. */
++#undef HAVE_CPP_ASM_DEBUGINFO
++
+ /* Define if _Unwind_Find_FDE should be exported from glibc. */
+ #undef EXPORT_UNWIND_FIND_FDE
+
+diff -u -udbrN glibc-2.3.2/config.make.in glibc-2.3.2-200304020432/config.make.in
+--- glibc-2.3.2/config.make.in Thu Nov 14 23:53:32 2002
++++ glibc-2.3.2-200304020432/config.make.in Wed Mar 26 02:15:05 2003
+@@ -1,5 +1,5 @@
+ # @configure_input@
+-# From $Id: config.make.in,v 1.90 2002/11/14 03:59:36 roland Exp $.
++# From $Id: config.make.in,v 1.92 2003/03/26 01:15:05 roland Exp $.
+ # Don't edit this file. Put configuration parameters in configparms instead.
+
+ version = @VERSION@
+@@ -50,6 +50,8 @@
+ old-glibc-headers = @old_glibc_headers@
+ unwind-find-fde = @libc_cv_gcc_unwind_find_fde@
+ have-initfini-array = @libc_cv_initfinit_array@
++have-cpp-asm-debuginfo = @libc_cv_cpp_asm_debuginfo@
++enable-check-abi = @enable_check_abi@
+
+ static-libgcc = @libc_cv_gcc_static_libgcc@
+
+diff -u -udbrN glibc-2.3.2/configure glibc-2.3.2-200304020432/configure
+--- glibc-2.3.2/configure Wed Feb 26 10:20:48 2003
++++ glibc-2.3.2-200304020432/configure Tue Apr 1 08:53:27 2003
+@@ -312,7 +312,7 @@
+ # include <unistd.h>
+ #endif"
+
+-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS with_fp with_cvs oldest_abi subdirs force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os base_machine sysnames INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S PWD_P CC MAKE MSGFMT MAKEINFO SED AUTOCONF CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD CCVERSION SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO OLD_DEBIAN_INSTALL_INFO BISON VERSIONING libc_cv_asm_protected_directive libc_cv_initfinit_array libc_cv_z_nodelete libc_cv_z_nodlopen libc_cv_z_initfirst libc_cv_Bgroup libc_cv_z_combreloc libc_cv_have_initfini no_whole_archive exceptions LIBGD EGREP sizeof_long_double libc_cv_gcc_unwind_find_fde uname_sysname uname_release uname_version old_glibc_headers libc_cv_slibdir libc_cv_localedir libc_cv_sysconfdir libc_cv_rootsbindir use_ldconfig ldd_rewrite_script gnu_ld gnu_as elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES linux_doors mach_interface_list VERSION RELEASE LIBOBJS LTLIBOBJS'
++ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS with_fp with_cvs enable_check_abi oldest_abi subdirs force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os base_machine sysnames INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD PWD_P MAKE MSGFMT MAKEINFO SED AUTOCONF CCVERSION SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO OLD_DEBIAN_INSTALL_INFO BISON VERSIONING libc_cv_asm_protected_directive libc_cv_initfinit_array libc_cv_z_nodelete libc_cv_z_nodlopen libc_cv_z_initfirst libc_cv_Bgroup libc_cv_z_combreloc libc_cv_have_initfini libc_cv_cpp_asm_debuginfo no_whole_archive exceptions LIBGD EGREP sizeof_long_double libc_cv_gcc_unwind_find_fde uname_sysname uname_release uname_version old_glibc_headers libc_cv_slibdir libc_cv_localedir libc_cv_sysconfdir libc_cv_rootsbindir use_ldconfig ldd_rewrite_script gnu_ld gnu_as elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES linux_doors mach_interface_list VERSION RELEASE LIBOBJS LTLIBOBJS'
+ ac_subst_files=''
+
+ # Initialize some variables set by options.
+@@ -851,6 +851,8 @@
+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --disable-sanity-checks really do not use threads (should not be used except
+ in special situations) [default=yes]
++ --enable-check-abi do "make check-abi" in "make check" (no/warn/yes)
++ [default=no]
+ --enable-shared build shared library [default=yes if GNU ld &
+ ELF]
+ --enable-profile build profiled library [default=yes]
+@@ -1479,6 +1481,15 @@
+ enable_sanity=yes
+ fi;
+
++
++# Check whether --enable-check-abi or --disable-check-abi was given.
++if test "${enable_check_abi+set}" = set; then
++ enableval="$enable_check_abi"
++ enable_check_abi=$enableval
++else
++ enable_check_abi=no
++fi;
++
+ static=yes
+ # Check whether --enable-shared or --disable-shared was given.
+ if test "${enable_shared+set}" = set; then
+@@ -1822,8 +1833,33 @@
+ m68k) base_machine=m68k machine=m68k/m68020 ;;
+ m88???) base_machine=m88k machine=m88k/$machine ;;
+ m88k) base_machine=m88k machine=m88k/m88100 ;;
+-mips64*) base_machine=mips64 machine=mips/mips64/$machine ;;
+-mips*) base_machine=mips machine=mips/$machine ;;
++mips64*) base_machine=mips64
++ case "$CC $CPPFLAGS $CFLAGS " in
++ *" -mabi=n32 "*) mips_cc_abi=n32 ;;
++ *" -mabi=64 "*|*" -mabi=n64 "*) mips_cc_abi=64 ;;
++ *" -mabi=32 "*|*" -mabi=o32 "*) mips_cc_abi=32 ;;
++ *) mips_cc_abi=default ;;
++ esac
++ case $config_os in
++ *abin32*) mips_config_abi=n32 ;;
++ *abi64*|*abin64*) mips_config_abi=64 ;;
++ *abi32*|*abio32*) mips_config_abi=32 ;;
++ *) mips_config_abi=$mips_cc_abi ;;
++ esac
++ case $mips_config_abi in
++ default) machine=mips/mips64/n32 mips_config_abi=n32 ;;
++ n32) machine=mips/mips64/n32 ;;
++ 64) machine=mips/mips64/n64 ;;
++ 32) machine=mips/mips32/kern64 ;;
++ esac
++ machine=$machine/$config_machine
++ if test $mips_config_abi != $mips_cc_abi; then
++ # This won't make it to config.make, but we want to
++ # set this in case configure tests depend on it.
++ CPPFLAGS="$CPPFLAGS -mabi=$mips_config_abi"
++ fi
++ ;;
++mips*) base_machine=mips machine=mips/mips32/$machine ;;
+ powerpc) base_machine=powerpc machine=powerpc/powerpc32 ;;
+ powerpc64) base_machine=powerpc machine=powerpc/powerpc64 ;;
+ s390) base_machine=s390 machine=s390/s390-32 ;;
+@@ -2170,442 +2206,6 @@
+ fi
+
+
+-# We need the physical current working directory. We cannot use the
+-# "pwd -P" shell builtin since that's not portable. Instead we try to
+-# find a pwd binary. Note that assigning to the PWD environment
+-# variable might have some interesting side effects, so we don't do
+-# that.
+-# Extract the first word of "pwd", so it can be a program name with args.
+-set dummy pwd; ac_word=$2
+-echo "$as_me:$LINENO: checking for $ac_word" >&5
+-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+-if test "${ac_cv_path_PWD_P+set}" = set; then
+- echo $ECHO_N "(cached) $ECHO_C" >&6
+-else
+- case $PWD_P in
+- [\\/]* | ?:[\\/]*)
+- ac_cv_path_PWD_P="$PWD_P" # Let the user override the test with a path.
+- ;;
+- *)
+- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+- IFS=$as_save_IFS
+- test -z "$as_dir" && as_dir=.
+- for ac_exec_ext in '' $ac_executable_extensions; do
+- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+- ac_cv_path_PWD_P="$as_dir/$ac_word$ac_exec_ext"
+- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+- break 2
+- fi
+-done
+-done
+-
+- test -z "$ac_cv_path_PWD_P" && ac_cv_path_PWD_P="no"
+- ;;
+-esac
+-fi
+-PWD_P=$ac_cv_path_PWD_P
+-
+-if test -n "$PWD_P"; then
+- echo "$as_me:$LINENO: result: $PWD_P" >&5
+-echo "${ECHO_T}$PWD_P" >&6
+-else
+- echo "$as_me:$LINENO: result: no" >&5
+-echo "${ECHO_T}no" >&6
+-fi
+-
+-if test "$PWD_P" = no; then
+- { { echo "$as_me:$LINENO: error: *** A pwd binary could not be found." >&5
+-echo "$as_me: error: *** A pwd binary could not be found." >&2;}
+- { (exit 1); exit 1; }; }
+-fi
+-
+-# These programs are version sensitive.
+-
+-for ac_prog in ${ac_tool_prefix}gcc ${ac_tool_prefix}cc
+-do
+- # Extract the first word of "$ac_prog", so it can be a program name with args.
+-set dummy $ac_prog; ac_word=$2
+-echo "$as_me:$LINENO: checking for $ac_word" >&5
+-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+-if test "${ac_cv_prog_CC+set}" = set; then
+- echo $ECHO_N "(cached) $ECHO_C" >&6
+-else
+- if test -n "$CC"; then
+- ac_cv_prog_CC="$CC" # Let the user override the test.
+-else
+-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+- IFS=$as_save_IFS
+- test -z "$as_dir" && as_dir=.
+- for ac_exec_ext in '' $ac_executable_extensions; do
+- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+- ac_cv_prog_CC="$ac_prog"
+- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+- break 2
+- fi
+-done
+-done
+-
+-fi
+-fi
+-CC=$ac_cv_prog_CC
+-if test -n "$CC"; then
+- echo "$as_me:$LINENO: result: $CC" >&5
+-echo "${ECHO_T}$CC" >&6
+-else
+- echo "$as_me:$LINENO: result: no" >&5
+-echo "${ECHO_T}no" >&6
+-fi
+-
+- test -n "$CC" && break
+-done
+-
+-if test -z "$CC"; then
+- ac_verc_fail=yes
+-else
+- # Found it, now check the version.
+- echo "$as_me:$LINENO: checking version of $CC" >&5
+-echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
+- ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'`
+- case $ac_prog_version in
+- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+- 3.[2-9]*)
+- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+-
+- esac
+- echo "$as_me:$LINENO: result: $ac_prog_version" >&5
+-echo "${ECHO_T}$ac_prog_version" >&6
+-fi
+-if test $ac_verc_fail = yes; then
+- critic_missing="$critic_missing gcc"
+-fi
+-
+-for ac_prog in gnumake gmake make
+-do
+- # Extract the first word of "$ac_prog", so it can be a program name with args.
+-set dummy $ac_prog; ac_word=$2
+-echo "$as_me:$LINENO: checking for $ac_word" >&5
+-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+-if test "${ac_cv_prog_MAKE+set}" = set; then
+- echo $ECHO_N "(cached) $ECHO_C" >&6
+-else
+- if test -n "$MAKE"; then
+- ac_cv_prog_MAKE="$MAKE" # Let the user override the test.
+-else
+-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+- IFS=$as_save_IFS
+- test -z "$as_dir" && as_dir=.
+- for ac_exec_ext in '' $ac_executable_extensions; do
+- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+- ac_cv_prog_MAKE="$ac_prog"
+- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+- break 2
+- fi
+-done
+-done
+-
+-fi
+-fi
+-MAKE=$ac_cv_prog_MAKE
+-if test -n "$MAKE"; then
+- echo "$as_me:$LINENO: result: $MAKE" >&5
+-echo "${ECHO_T}$MAKE" >&6
+-else
+- echo "$as_me:$LINENO: result: no" >&5
+-echo "${ECHO_T}no" >&6
+-fi
+-
+- test -n "$MAKE" && break
+-done
+-
+-if test -z "$MAKE"; then
+- ac_verc_fail=yes
+-else
+- # Found it, now check the version.
+- echo "$as_me:$LINENO: checking version of $MAKE" >&5
+-echo $ECHO_N "checking version of $MAKE... $ECHO_C" >&6
+- ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'`
+- case $ac_prog_version in
+- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+- 3.79* | 3.[89]*)
+- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+-
+- esac
+- echo "$as_me:$LINENO: result: $ac_prog_version" >&5
+-echo "${ECHO_T}$ac_prog_version" >&6
+-fi
+-if test $ac_verc_fail = yes; then
+- critic_missing="$critic_missing make"
+-fi
+-
+-
+-
+-if test -n "$critic_missing"; then
+-{ { echo "$as_me:$LINENO: error:
+-*** These critical programs are missing or too old:$critic_missing
+-*** Check the INSTALL file for required versions." >&5
+-echo "$as_me: error:
+-*** These critical programs are missing or too old:$critic_missing
+-*** Check the INSTALL file for required versions." >&2;}
+- { (exit 1); exit 1; }; }
+-fi
+-
+-
+-for ac_prog in gnumsgfmt gmsgfmt msgfmt
+-do
+- # Extract the first word of "$ac_prog", so it can be a program name with args.
+-set dummy $ac_prog; ac_word=$2
+-echo "$as_me:$LINENO: checking for $ac_word" >&5
+-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+-if test "${ac_cv_prog_MSGFMT+set}" = set; then
+- echo $ECHO_N "(cached) $ECHO_C" >&6
+-else
+- if test -n "$MSGFMT"; then
+- ac_cv_prog_MSGFMT="$MSGFMT" # Let the user override the test.
+-else
+-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+- IFS=$as_save_IFS
+- test -z "$as_dir" && as_dir=.
+- for ac_exec_ext in '' $ac_executable_extensions; do
+- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+- ac_cv_prog_MSGFMT="$ac_prog"
+- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+- break 2
+- fi
+-done
+-done
+-
+-fi
+-fi
+-MSGFMT=$ac_cv_prog_MSGFMT
+-if test -n "$MSGFMT"; then
+- echo "$as_me:$LINENO: result: $MSGFMT" >&5
+-echo "${ECHO_T}$MSGFMT" >&6
+-else
+- echo "$as_me:$LINENO: result: no" >&5
+-echo "${ECHO_T}no" >&6
+-fi
+-
+- test -n "$MSGFMT" && break
+-done
+-
+-if test -z "$MSGFMT"; then
+- ac_verc_fail=yes
+-else
+- # Found it, now check the version.
+- echo "$as_me:$LINENO: checking version of $MSGFMT" >&5
+-echo $ECHO_N "checking version of $MSGFMT... $ECHO_C" >&6
+- ac_prog_version=`$MSGFMT --version 2>&1 | sed -n 's/^.*GNU gettext.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
+- case $ac_prog_version in
+- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+- 0.10.3[6-9]* | 0.10.[4-9][0-9]* | 0.1[1-9]* | 0.[2-9][0-9]* | [1-9].*)
+- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+-
+- esac
+- echo "$as_me:$LINENO: result: $ac_prog_version" >&5
+-echo "${ECHO_T}$ac_prog_version" >&6
+-fi
+-if test $ac_verc_fail = yes; then
+- MSGFMT=: aux_missing="$aux_missing msgfmt"
+-fi
+-
+-for ac_prog in makeinfo
+-do
+- # Extract the first word of "$ac_prog", so it can be a program name with args.
+-set dummy $ac_prog; ac_word=$2
+-echo "$as_me:$LINENO: checking for $ac_word" >&5
+-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+-if test "${ac_cv_prog_MAKEINFO+set}" = set; then
+- echo $ECHO_N "(cached) $ECHO_C" >&6
+-else
+- if test -n "$MAKEINFO"; then
+- ac_cv_prog_MAKEINFO="$MAKEINFO" # Let the user override the test.
+-else
+-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+- IFS=$as_save_IFS
+- test -z "$as_dir" && as_dir=.
+- for ac_exec_ext in '' $ac_executable_extensions; do
+- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+- ac_cv_prog_MAKEINFO="$ac_prog"
+- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+- break 2
+- fi
+-done
+-done
+-
+-fi
+-fi
+-MAKEINFO=$ac_cv_prog_MAKEINFO
+-if test -n "$MAKEINFO"; then
+- echo "$as_me:$LINENO: result: $MAKEINFO" >&5
+-echo "${ECHO_T}$MAKEINFO" >&6
+-else
+- echo "$as_me:$LINENO: result: no" >&5
+-echo "${ECHO_T}no" >&6
+-fi
+-
+- test -n "$MAKEINFO" && break
+-done
+-
+-if test -z "$MAKEINFO"; then
+- ac_verc_fail=yes
+-else
+- # Found it, now check the version.
+- echo "$as_me:$LINENO: checking version of $MAKEINFO" >&5
+-echo $ECHO_N "checking version of $MAKEINFO... $ECHO_C" >&6
+- ac_prog_version=`$MAKEINFO --version 2>&1 | sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'`
+- case $ac_prog_version in
+- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+- 4.*)
+- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+-
+- esac
+- echo "$as_me:$LINENO: result: $ac_prog_version" >&5
+-echo "${ECHO_T}$ac_prog_version" >&6
+-fi
+-if test $ac_verc_fail = yes; then
+- MAKEINFO=: aux_missing="$aux_missing makeinfo"
+-fi
+-
+-for ac_prog in sed
+-do
+- # Extract the first word of "$ac_prog", so it can be a program name with args.
+-set dummy $ac_prog; ac_word=$2
+-echo "$as_me:$LINENO: checking for $ac_word" >&5
+-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+-if test "${ac_cv_prog_SED+set}" = set; then
+- echo $ECHO_N "(cached) $ECHO_C" >&6
+-else
+- if test -n "$SED"; then
+- ac_cv_prog_SED="$SED" # Let the user override the test.
+-else
+-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+- IFS=$as_save_IFS
+- test -z "$as_dir" && as_dir=.
+- for ac_exec_ext in '' $ac_executable_extensions; do
+- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+- ac_cv_prog_SED="$ac_prog"
+- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+- break 2
+- fi
+-done
+-done
+-
+-fi
+-fi
+-SED=$ac_cv_prog_SED
+-if test -n "$SED"; then
+- echo "$as_me:$LINENO: result: $SED" >&5
+-echo "${ECHO_T}$SED" >&6
+-else
+- echo "$as_me:$LINENO: result: no" >&5
+-echo "${ECHO_T}no" >&6
+-fi
+-
+- test -n "$SED" && break
+-done
+-
+-if test -z "$SED"; then
+- ac_verc_fail=yes
+-else
+- # Found it, now check the version.
+- echo "$as_me:$LINENO: checking version of $SED" >&5
+-echo $ECHO_N "checking version of $SED... $ECHO_C" >&6
+- ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed version \([0-9]*\.[0-9.]*\).*$/\1/p'`
+- case $ac_prog_version in
+- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+- 3.0[2-9]*|3.[1-9]*|[4-9]*)
+- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+-
+- esac
+- echo "$as_me:$LINENO: result: $ac_prog_version" >&5
+-echo "${ECHO_T}$ac_prog_version" >&6
+-fi
+-if test $ac_verc_fail = yes; then
+- SED=: aux_missing="$aux_missing sed"
+-fi
+-
+-
+-if test "x$with_cvs" != xyes; then
+- for ac_prog in autoconf
+-do
+- # Extract the first word of "$ac_prog", so it can be a program name with args.
+-set dummy $ac_prog; ac_word=$2
+-echo "$as_me:$LINENO: checking for $ac_word" >&5
+-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+-if test "${ac_cv_prog_AUTOCONF+set}" = set; then
+- echo $ECHO_N "(cached) $ECHO_C" >&6
+-else
+- if test -n "$AUTOCONF"; then
+- ac_cv_prog_AUTOCONF="$AUTOCONF" # Let the user override the test.
+-else
+-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+- IFS=$as_save_IFS
+- test -z "$as_dir" && as_dir=.
+- for ac_exec_ext in '' $ac_executable_extensions; do
+- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+- ac_cv_prog_AUTOCONF="$ac_prog"
+- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+- break 2
+- fi
+-done
+-done
+-
+-fi
+-fi
+-AUTOCONF=$ac_cv_prog_AUTOCONF
+-if test -n "$AUTOCONF"; then
+- echo "$as_me:$LINENO: result: $AUTOCONF" >&5
+-echo "${ECHO_T}$AUTOCONF" >&6
+-else
+- echo "$as_me:$LINENO: result: no" >&5
+-echo "${ECHO_T}no" >&6
+-fi
+-
+- test -n "$AUTOCONF" && break
+-done
+-test -n "$AUTOCONF" || AUTOCONF="no"
+-
+- case "x$AUTOCONF" in
+- xno|x|x:) AUTOCONF=no ;;
+- *)
+- echo "$as_me:$LINENO: checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works" >&5
+-echo $ECHO_N "checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works... $ECHO_C" >&6
+-if test "${libc_cv_autoconf_works+set}" = set; then
+- echo $ECHO_N "(cached) $ECHO_C" >&6
+-else
+- if (cd $srcdir; $AUTOCONF $ACFLAGS configure.in > /dev/null 2>&1); then
+- libc_cv_autoconf_works=yes
+- else
+- libc_cv_autoconf_works=no
+- fi
+-fi
+-echo "$as_me:$LINENO: result: $libc_cv_autoconf_works" >&5
+-echo "${ECHO_T}$libc_cv_autoconf_works" >&6
+- test $libc_cv_autoconf_works = yes || AUTOCONF=no
+- ;;
+- esac
+- test "x$AUTOCONF" != xno || aux_missing="$aux_missing autoconf"
+-fi
+-
+ ac_ext=c
+ ac_cpp='$CPP $CPPFLAGS'
+ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+@@ -3801,7 +3401,7 @@
+ echo "${ECHO_T}$ac_prog_version" >&6
+ fi
+ if test $ac_verc_fail = yes; then
+- AS=: critic_missing=t
++ AS=: critic_missing="$critic_missing as"
+ fi
+
+ for ac_prog in $LD
+@@ -3862,9 +3462,441 @@
+ echo "${ECHO_T}$ac_prog_version" >&6
+ fi
+ if test $ac_verc_fail = yes; then
+- LD=: critic_missing=t
++ LD=: critic_missing="$critic_missing ld"
++fi
++
++
++# We need the physical current working directory. We cannot use the
++# "pwd -P" shell builtin since that's not portable. Instead we try to
++# find a pwd binary. Note that assigning to the PWD environment
++# variable might have some interesting side effects, so we don't do
++# that.
++# Extract the first word of "pwd", so it can be a program name with args.
++set dummy pwd; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_path_PWD_P+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ case $PWD_P in
++ [\\/]* | ?:[\\/]*)
++ ac_cv_path_PWD_P="$PWD_P" # Let the user override the test with a path.
++ ;;
++ *)
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_path_PWD_P="$as_dir/$ac_word$ac_exec_ext"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++ test -z "$ac_cv_path_PWD_P" && ac_cv_path_PWD_P="no"
++ ;;
++esac
+ fi
++PWD_P=$ac_cv_path_PWD_P
+
++if test -n "$PWD_P"; then
++ echo "$as_me:$LINENO: result: $PWD_P" >&5
++echo "${ECHO_T}$PWD_P" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++if test "$PWD_P" = no; then
++ { { echo "$as_me:$LINENO: error: *** A pwd binary could not be found." >&5
++echo "$as_me: error: *** A pwd binary could not be found." >&2;}
++ { (exit 1); exit 1; }; }
++fi
++
++# These programs are version sensitive.
++
++for ac_prog in ${ac_tool_prefix}gcc ${ac_tool_prefix}cc
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$CC"; then
++ ac_cv_prog_CC="$CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_CC="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++CC=$ac_cv_prog_CC
++if test -n "$CC"; then
++ echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$CC" && break
++done
++
++if test -z "$CC"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $CC" >&5
++echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
++ ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 3.[2-9]*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ critic_missing="$critic_missing gcc"
++fi
++
++for ac_prog in gnumake gmake make
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_MAKE+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$MAKE"; then
++ ac_cv_prog_MAKE="$MAKE" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_MAKE="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++MAKE=$ac_cv_prog_MAKE
++if test -n "$MAKE"; then
++ echo "$as_me:$LINENO: result: $MAKE" >&5
++echo "${ECHO_T}$MAKE" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$MAKE" && break
++done
++
++if test -z "$MAKE"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $MAKE" >&5
++echo $ECHO_N "checking version of $MAKE... $ECHO_C" >&6
++ ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 3.79* | 3.[89]*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ critic_missing="$critic_missing make"
++fi
++
++
++for ac_prog in gnumsgfmt gmsgfmt msgfmt
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_MSGFMT+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$MSGFMT"; then
++ ac_cv_prog_MSGFMT="$MSGFMT" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_MSGFMT="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++MSGFMT=$ac_cv_prog_MSGFMT
++if test -n "$MSGFMT"; then
++ echo "$as_me:$LINENO: result: $MSGFMT" >&5
++echo "${ECHO_T}$MSGFMT" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$MSGFMT" && break
++done
++
++if test -z "$MSGFMT"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $MSGFMT" >&5
++echo $ECHO_N "checking version of $MSGFMT... $ECHO_C" >&6
++ ac_prog_version=`$MSGFMT --version 2>&1 | sed -n 's/^.*GNU gettext.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 0.10.3[6-9]* | 0.10.[4-9][0-9]* | 0.1[1-9]* | 0.[2-9][0-9]* | [1-9].*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ MSGFMT=: aux_missing="$aux_missing msgfmt"
++fi
++
++for ac_prog in makeinfo
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_MAKEINFO+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$MAKEINFO"; then
++ ac_cv_prog_MAKEINFO="$MAKEINFO" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_MAKEINFO="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++MAKEINFO=$ac_cv_prog_MAKEINFO
++if test -n "$MAKEINFO"; then
++ echo "$as_me:$LINENO: result: $MAKEINFO" >&5
++echo "${ECHO_T}$MAKEINFO" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$MAKEINFO" && break
++done
++
++if test -z "$MAKEINFO"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $MAKEINFO" >&5
++echo $ECHO_N "checking version of $MAKEINFO... $ECHO_C" >&6
++ ac_prog_version=`$MAKEINFO --version 2>&1 | sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 4.*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ MAKEINFO=: aux_missing="$aux_missing makeinfo"
++fi
++
++for ac_prog in sed
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_SED+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$SED"; then
++ ac_cv_prog_SED="$SED" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_SED="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++SED=$ac_cv_prog_SED
++if test -n "$SED"; then
++ echo "$as_me:$LINENO: result: $SED" >&5
++echo "${ECHO_T}$SED" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$SED" && break
++done
++
++if test -z "$SED"; then
++ ac_verc_fail=yes
++else
++ # Found it, now check the version.
++ echo "$as_me:$LINENO: checking version of $SED" >&5
++echo $ECHO_N "checking version of $SED... $ECHO_C" >&6
++ ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed version \([0-9]*\.[0-9.]*\).*$/\1/p'`
++ case $ac_prog_version in
++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
++ 3.0[2-9]*|3.[1-9]*|[4-9]*)
++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
++
++ esac
++ echo "$as_me:$LINENO: result: $ac_prog_version" >&5
++echo "${ECHO_T}$ac_prog_version" >&6
++fi
++if test $ac_verc_fail = yes; then
++ SED=: aux_missing="$aux_missing sed"
++fi
++
++
++if test "x$with_cvs" != xyes; then
++ for ac_prog in autoconf
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_AUTOCONF+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if test -n "$AUTOCONF"; then
++ ac_cv_prog_AUTOCONF="$AUTOCONF" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_AUTOCONF="$ac_prog"
++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++
++fi
++fi
++AUTOCONF=$ac_cv_prog_AUTOCONF
++if test -n "$AUTOCONF"; then
++ echo "$as_me:$LINENO: result: $AUTOCONF" >&5
++echo "${ECHO_T}$AUTOCONF" >&6
++else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++ test -n "$AUTOCONF" && break
++done
++test -n "$AUTOCONF" || AUTOCONF="no"
++
++ case "x$AUTOCONF" in
++ xno|x|x:) AUTOCONF=no ;;
++ *)
++ echo "$as_me:$LINENO: checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works" >&5
++echo $ECHO_N "checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works... $ECHO_C" >&6
++if test "${libc_cv_autoconf_works+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ if (cd $srcdir; $AUTOCONF $ACFLAGS configure.in > /dev/null 2>&1); then
++ libc_cv_autoconf_works=yes
++ else
++ libc_cv_autoconf_works=no
++ fi
++fi
++echo "$as_me:$LINENO: result: $libc_cv_autoconf_works" >&5
++echo "${ECHO_T}$libc_cv_autoconf_works" >&6
++ test $libc_cv_autoconf_works = yes || AUTOCONF=no
++ ;;
++ esac
++ test "x$AUTOCONF" != xno || aux_missing="$aux_missing autoconf"
++fi
++
++test -n "$critic_missing" && { { echo "$as_me:$LINENO: error:
++*** These critical programs are missing or too old:$critic_missing
++*** Check the INSTALL file for required versions." >&5
++echo "$as_me: error:
++*** These critical programs are missing or too old:$critic_missing
++*** Check the INSTALL file for required versions." >&2;}
++ { (exit 1); exit 1; }; }
+
+ test -n "$aux_missing" && { echo "$as_me:$LINENO: WARNING:
+ *** These auxiliary programs are missing or incompatible versions:$aux_missing
+@@ -4357,7 +4389,12 @@
+ #include "confdefs.h"
+ /* Nothing whatsoever. */
+ EOF
+-if ${CC-cc} $CFLAGS -c conftest.S 2>/dev/null; then
++if { ac_try='${CC-cc} $CFLAGS -c conftest.S 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
+ libc_cv_need_minus_P=no
+ else
+ libc_cv_need_minus_P=yes
+@@ -4380,7 +4417,12 @@
+ .text
+ EOF
+ libc_cv_dot_text=
+-if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
++if { ac_try='${CC-cc} $CFLAGS -c conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
+ libc_cv_dot_text=.text
+ fi
+ rm -f conftest*
+@@ -4406,7 +4448,12 @@
+ ${ac_globl} foo
+ foo:
+ EOF
+- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
++ if { ac_try='${CC-cc} $CFLAGS -c conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
+ libc_cv_asm_global_directive=${ac_globl}
+ fi
+ rm -f conftest*
+@@ -4441,9 +4488,10 @@
+ # (but it doesn't work), so we must do a linking check to be sure.
+ cat > conftest1.c <<\EOF
+ extern int glibc_conftest_frobozz;
+-main () { printf ("%d\n", glibc_conftest_frobozz); }
++void _start() { glibc_conftest_frobozz = 1; }
+ EOF
+ if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \
++ -nostartfiles -nostdlib \
+ -o conftest conftest.s conftest1.c 1>&5 2>&5; then
+ libc_cv_asm_set_directive=yes
+ else
+@@ -4475,7 +4523,12 @@
+ foo:
+ .byte 1
+ EOF
+- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
++ if { ac_try='${CC-cc} $CFLAGS -c conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
+ libc_cv_asm_type_prefix=${ac_try_prefix}
+ fi
+ rm -f conftest*
+@@ -4692,7 +4745,12 @@
+ int bar __attribute__ ((visibility ("protected"))) = 1;
+ EOF
+ libc_cv_visibility_attribute=no
+- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then
++ if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
+ if grep '\.hidden.*foo' conftest.s >/dev/null; then
+ if grep '\.protected.*bar' conftest.s >/dev/null; then
+ libc_cv_visibility_attribute=yes
+@@ -4724,7 +4782,12 @@
+ int bar (int x) { return x; }
+ EOF
+ libc_cv_broken_visibility_attribute=yes
+- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then
++ if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
+ if grep '\.hidden[ _]foo' conftest.s >/dev/null; then
+ libc_cv_broken_visibility_attribute=no
+ fi
+@@ -4756,7 +4819,12 @@
+ int dfoo = 1;
+ EOF
+ libc_cv_broken_alias_attribute=yes
+- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then
++ if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
+ if grep 'xyzzy' conftest.s >/dev/null &&
+ grep 'abccb' conftest.s >/dev/null; then
+ libc_cv_broken_alias_attribute=no
+@@ -5128,7 +5196,7 @@
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 5131 "configure"
++#line 5199 "configure"
+ #include "confdefs.h"
+ void underscore_test(void) {
+ return; }
+@@ -5180,7 +5248,12 @@
+ .weak foo
+ .weak bar; bar = foo
+ EOF
+-if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
++if { ac_try='${CC-cc} $CFLAGS -c conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
+ libc_cv_asm_weak_directive=yes
+ else
+ libc_cv_asm_weak_directive=no
+@@ -5205,7 +5278,12 @@
+ ${libc_cv_asm_global_directive} baz
+ baz:
+ EOF
+- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
++ if { ac_try='${CC-cc} $CFLAGS -c conftest.s 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
+ libc_cv_asm_weakext_directive=yes
+ else
+ libc_cv_asm_weakext_directive=no
+@@ -5272,6 +5350,57 @@
+ ;;
+ esac
+
++echo "$as_me:$LINENO: checking if -g produces usable source locations for assembler-with-cpp" >&5
++echo $ECHO_N "checking if -g produces usable source locations for assembler-with-cpp... $ECHO_C" >&6
++if test "${libc_cv_cpp_asm_debuginfo+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ cat > conftest.S <<EOF
++#include "confdefs.h"
++
++/* comment on
++ two lines */
++ ${libc_cv_dot_text}
++ ${libc_cv_asm_global_directive} foo
++foo:
++ /* Unfortunately this test only works for a real instruction,
++ not for any of the machine-independent pseudo-ops.
++ So we just have to assume everybody has a "nop". */
++ nop
++ /* comment */
++ nop
++ /* comment */
++ nop
++EOF
++if { ac_try='${CC-cc} $CFLAGS -g -c conftest.S 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; } &&
++ ac_pattern='conftest\.S'
++ { ac_try='readelf --debug-dump=line conftest.o |
++ grep $ac_pattern 1>&5'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ libc_cv_cpp_asm_debuginfo=yes
++else
++ libc_cv_cpp_asm_debuginfo=no
++fi
++rm -f conftest*
++fi
++echo "$as_me:$LINENO: result: $libc_cv_cpp_asm_debuginfo" >&5
++echo "${ECHO_T}$libc_cv_cpp_asm_debuginfo" >&6
++if test $libc_cv_cpp_asm_debuginfo = yes; then
++ cat >>confdefs.h <<\_ACEOF
++#define HAVE_CPP_ASM_DEBUGINFO 1
++_ACEOF
++
++fi
++
+ echo "$as_me:$LINENO: checking for ld --no-whole-archive" >&5
+ echo $ECHO_N "checking for ld --no-whole-archive... $ECHO_C" >&6
+ if test "${libc_cv_ld_no_whole_archive+set}" = set; then
+@@ -5393,7 +5522,7 @@
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+ cat > conftest.c <<EOF
+-#line 5396 "configure"
++#line 5525 "configure"
+ static char *__EH_FRAME_BEGIN__;
+ _start ()
+ {
+@@ -5493,7 +5622,7 @@
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+ cat > conftest.c <<EOF
+-#line 5496 "configure"
++#line 5625 "configure"
+ int foo (int a)
+ {
+ a = __builtin_expect (a, 10);
+@@ -5561,7 +5690,7 @@
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+ cat > conftest.c <<EOF
+-#line 5564 "configure"
++#line 5693 "configure"
+ int foo (int a)
+ {
+ static const int ar[] = { &&l1 - &&l1, &&l2 - &&l1 };
+@@ -6335,8 +6464,8 @@
+ *) dest=$srcdir/$dir ;;
+ esac
+ if test -r $dest/configure; then
+- echo "$as_me:$LINENO: result: running configure fragment for $dest" >&5
+-echo "${ECHO_T}running configure fragment for $dest" >&6
++ echo "$as_me:$LINENO: result: running configure fragment for $dir" >&5
++echo "${ECHO_T}running configure fragment for $dir" >&6
+ . $dest/configure
+ fi
+
+@@ -7176,6 +7305,7 @@
+ s,@LIBS@,$LIBS,;t t
+ s,@with_fp@,$with_fp,;t t
+ s,@with_cvs@,$with_cvs,;t t
++s,@enable_check_abi@,$enable_check_abi,;t t
+ s,@oldest_abi@,$oldest_abi,;t t
+ s,@subdirs@,$subdirs,;t t
+ s,@force_install@,$force_install,;t t
+@@ -7194,13 +7324,7 @@
+ s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
+ s,@INSTALL_DATA@,$INSTALL_DATA,;t t
+ s,@LN_S@,$LN_S,;t t
+-s,@PWD_P@,$PWD_P,;t t
+ s,@CC@,$CC,;t t
+-s,@MAKE@,$MAKE,;t t
+-s,@MSGFMT@,$MSGFMT,;t t
+-s,@MAKEINFO@,$MAKEINFO,;t t
+-s,@SED@,$SED,;t t
+-s,@AUTOCONF@,$AUTOCONF,;t t
+ s,@CFLAGS@,$CFLAGS,;t t
+ s,@LDFLAGS@,$LDFLAGS,;t t
+ s,@CPPFLAGS@,$CPPFLAGS,;t t
+@@ -7216,6 +7340,12 @@
+ s,@MIG@,$MIG,;t t
+ s,@AS@,$AS,;t t
+ s,@LD@,$LD,;t t
++s,@PWD_P@,$PWD_P,;t t
++s,@MAKE@,$MAKE,;t t
++s,@MSGFMT@,$MSGFMT,;t t
++s,@MAKEINFO@,$MAKEINFO,;t t
++s,@SED@,$SED,;t t
++s,@AUTOCONF@,$AUTOCONF,;t t
+ s,@CCVERSION@,$CCVERSION,;t t
+ s,@SYSINCLUDES@,$SYSINCLUDES,;t t
+ s,@libc_cv_gcc_static_libgcc@,$libc_cv_gcc_static_libgcc,;t t
+@@ -7237,6 +7367,7 @@
+ s,@libc_cv_Bgroup@,$libc_cv_Bgroup,;t t
+ s,@libc_cv_z_combreloc@,$libc_cv_z_combreloc,;t t
+ s,@libc_cv_have_initfini@,$libc_cv_have_initfini,;t t
++s,@libc_cv_cpp_asm_debuginfo@,$libc_cv_cpp_asm_debuginfo,;t t
+ s,@no_whole_archive@,$no_whole_archive,;t t
+ s,@exceptions@,$exceptions,;t t
+ s,@LIBGD@,$LIBGD,;t t
+diff -u -udbrN glibc-2.3.2/configure.in glibc-2.3.2-200304020432/configure.in
+--- glibc-2.3.2/configure.in Wed Feb 26 01:46:31 2003
++++ glibc-2.3.2-200304020432/configure.in Tue Apr 1 08:53:27 2003
+@@ -113,6 +113,14 @@
+ [enable_sanity=$enableval],
+ [enable_sanity=yes])
+
++AC_SUBST(enable_check_abi)
++AC_ARG_ENABLE([check-abi],
++ AC_HELP_STRING([--enable-check-abi],
++ [do "make check-abi" in "make check" (no/warn/yes)
++ @<:@default=no@:>@]),
++ [enable_check_abi=$enableval],
++ [enable_check_abi=no])
++
+ dnl Arguments to enable or disable building the static, shared, profiled,
+ dnl and -fomit-frame-pointer libraries.
+ dnl I've disabled this for now since we cannot build glibc without static
+@@ -378,8 +386,33 @@
+ m68k) base_machine=m68k machine=m68k/m68020 ;;
+ m88???) base_machine=m88k machine=m88k/$machine ;;
+ m88k) base_machine=m88k machine=m88k/m88100 ;;
+-mips64*) base_machine=mips64 machine=mips/mips64/$machine ;;
+-mips*) base_machine=mips machine=mips/$machine ;;
++mips64*) base_machine=mips64
++ case "$CC $CPPFLAGS $CFLAGS " in
++ *" -mabi=n32 "*) mips_cc_abi=n32 ;;
++ *" -mabi=64 "*|*" -mabi=n64 "*) mips_cc_abi=64 ;;
++ *" -mabi=32 "*|*" -mabi=o32 "*) mips_cc_abi=32 ;;
++ *) mips_cc_abi=default ;;
++ esac
++ case $config_os in
++ *abin32*) mips_config_abi=n32 ;;
++ *abi64*|*abin64*) mips_config_abi=64 ;;
++ *abi32*|*abio32*) mips_config_abi=32 ;;
++ *) mips_config_abi=$mips_cc_abi ;;
++ esac
++ case $mips_config_abi in
++ default) machine=mips/mips64/n32 mips_config_abi=n32 ;;
++ n32) machine=mips/mips64/n32 ;;
++ 64) machine=mips/mips64/n64 ;;
++ 32) machine=mips/mips32/kern64 ;;
++ esac
++ machine=$machine/$config_machine
++ if test $mips_config_abi != $mips_cc_abi; then
++ # This won't make it to config.make, but we want to
++ # set this in case configure tests depend on it.
++ CPPFLAGS="$CPPFLAGS -mabi=$mips_config_abi"
++ fi
++ ;;
++mips*) base_machine=mips machine=mips/mips32/$machine ;;
+ powerpc) base_machine=powerpc machine=powerpc/powerpc32 ;;
+ powerpc64) base_machine=powerpc machine=powerpc/powerpc64 ;;
+ s390) base_machine=s390 machine=s390/s390-32 ;;
+@@ -637,6 +670,23 @@
+ fi
+ AC_PROG_LN_S
+
++AC_PROG_CC
++if test $host != $build; then
++ AC_CHECK_PROGS(BUILD_CC, gcc cc)
++fi
++AC_SUBST(cross_compiling)
++AC_PROG_CPP
++LIBC_PROG_BINUTILS
++AC_SUBST(MIG)dnl Needed by sysdeps/mach/configure.in
++
++# Accept binutils 2.13 or newer.
++AC_CHECK_PROG_VER(AS, $AS, --version,
++ [GNU assembler.* \([0-9]*\.[0-9.]*\)],
++ [2.1[3-9]*], AS=: critic_missing="$critic_missing as")
++AC_CHECK_PROG_VER(LD, $LD, --version,
++ [GNU ld.* \([0-9][0-9]*\.[0-9.]*\)],
++ [2.1[3-9]*], LD=: critic_missing="$critic_missing ld")
++
+ # We need the physical current working directory. We cannot use the
+ # "pwd -P" shell builtin since that's not portable. Instead we try to
+ # find a pwd binary. Note that assigning to the PWD environment
+@@ -656,14 +706,6 @@
+ [GNU Make[^0-9]*\([0-9][0-9.]*\)],
+ [3.79* | 3.[89]*], critic_missing="$critic_missing make")
+
+-
+-if test -n "$critic_missing"; then
+-AC_MSG_ERROR([
+-*** These critical programs are missing or too old:$critic_missing
+-*** Check the INSTALL file for required versions.])
+-fi
+-
+-
+ AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version,
+ [GNU gettext.* \([0-9]*\.[0-9.]*\)],
+ [0.10.3[6-9]* | 0.10.[4-9][0-9]* | 0.1[1-9]* | 0.[2-9][0-9]* | [1-9].*],
+@@ -695,22 +737,9 @@
+ test "x$AUTOCONF" != xno || aux_missing="$aux_missing autoconf"
+ fi
+
+-AC_PROG_CC
+-if test $host != $build; then
+- AC_CHECK_PROGS(BUILD_CC, gcc cc)
+-fi
+-AC_SUBST(cross_compiling)
+-AC_PROG_CPP
+-LIBC_PROG_BINUTILS
+-AC_SUBST(MIG)dnl Needed by sysdeps/mach/configure.in
+-
+-# Accept binutils 2.13 or newer.
+-AC_CHECK_PROG_VER(AS, $AS, --version,
+- [GNU assembler.* \([0-9]*\.[0-9.]*\)],
+- [2.1[3-9]*], AS=: critic_missing=t)
+-AC_CHECK_PROG_VER(LD, $LD, --version,
+- [GNU ld.* \([0-9][0-9]*\.[0-9.]*\)],
+- [2.1[3-9]*], LD=: critic_missing=t)
++test -n "$critic_missing" && AC_MSG_ERROR([
++*** These critical programs are missing or too old:$critic_missing
++*** Check the INSTALL file for required versions.])
+
+ test -n "$aux_missing" && AC_MSG_WARN([
+ *** These auxiliary programs are missing or incompatible versions:$aux_missing
+@@ -889,7 +918,7 @@
+ #include "confdefs.h"
+ /* Nothing whatsoever. */
+ EOF
+-if ${CC-cc} $CFLAGS -c conftest.S 2>/dev/null; then
++if AC_TRY_COMMAND(${CC-cc} $CFLAGS -c conftest.S 1>&AS_MESSAGE_LOG_FD); then
+ libc_cv_need_minus_P=no
+ else
+ libc_cv_need_minus_P=yes
+@@ -906,7 +935,7 @@
+ .text
+ EOF
+ libc_cv_dot_text=
+-if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
++if AC_TRY_COMMAND(${CC-cc} $CFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
+ libc_cv_dot_text=.text
+ fi
+ rm -f conftest*])
+@@ -925,7 +954,7 @@
+ ${ac_globl} foo
+ foo:
+ EOF
+- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
++ if AC_TRY_COMMAND(${CC-cc} $CFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
+ libc_cv_asm_global_directive=${ac_globl}
+ fi
+ rm -f conftest*
+@@ -948,9 +977,10 @@
+ # (but it doesn't work), so we must do a linking check to be sure.
+ cat > conftest1.c <<\EOF
+ extern int glibc_conftest_frobozz;
+-main () { printf ("%d\n", glibc_conftest_frobozz); }
++void _start() { glibc_conftest_frobozz = 1; }
+ EOF
+ if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \
++ -nostartfiles -nostdlib \
+ -o conftest conftest.s conftest1.c 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
+ libc_cv_asm_set_directive=yes
+ else
+@@ -973,7 +1003,7 @@
+ foo:
+ .byte 1
+ EOF
+- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
++ if AC_TRY_COMMAND(${CC-cc} $CFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
+ libc_cv_asm_type_prefix=${ac_try_prefix}
+ fi
+ rm -f conftest*
+@@ -1111,7 +1141,7 @@
+ int bar __attribute__ ((visibility ("protected"))) = 1;
+ EOF
+ libc_cv_visibility_attribute=no
+- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then
++ if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD); then
+ if grep '\.hidden.*foo' conftest.s >/dev/null; then
+ if grep '\.protected.*bar' conftest.s >/dev/null; then
+ libc_cv_visibility_attribute=yes
+@@ -1134,7 +1164,7 @@
+ int bar (int x) { return x; }
+ EOF
+ libc_cv_broken_visibility_attribute=yes
+- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then
++ if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s1>&AS_MESSAGE_LOG_FD); then
+ changequote(,)dnl
+ if grep '\.hidden[ _]foo' conftest.s >/dev/null; then
+ changequote([,])dnl
+@@ -1159,7 +1189,7 @@
+ int dfoo = 1;
+ EOF
+ libc_cv_broken_alias_attribute=yes
+- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then
++ if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD); then
+ if grep 'xyzzy' conftest.s >/dev/null &&
+ grep 'abccb' conftest.s >/dev/null; then
+ libc_cv_broken_alias_attribute=no
+@@ -1398,7 +1428,7 @@
+ .weak foo
+ .weak bar; bar = foo
+ EOF
+-if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
++if AC_TRY_COMMAND(${CC-cc} $CFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
+ libc_cv_asm_weak_directive=yes
+ else
+ libc_cv_asm_weak_directive=no
+@@ -1418,7 +1448,7 @@
+ ${libc_cv_asm_global_directive} baz
+ baz:
+ EOF
+- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
++ if AC_TRY_COMMAND(${CC-cc} $CFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
+ libc_cv_asm_weakext_directive=yes
+ else
+ libc_cv_asm_weakext_directive=no
+@@ -1462,6 +1492,38 @@
+ ;;
+ esac
+
++AC_CACHE_CHECK(if -g produces usable source locations for assembler-with-cpp,
++ libc_cv_cpp_asm_debuginfo, [dnl
++cat > conftest.S <<EOF
++#include "confdefs.h"
++
++/* comment on
++ two lines */
++ ${libc_cv_dot_text}
++ ${libc_cv_asm_global_directive} foo
++foo:
++ /* Unfortunately this test only works for a real instruction,
++ not for any of the machine-independent pseudo-ops.
++ So we just have to assume everybody has a "nop". */
++ nop
++ /* comment */
++ nop
++ /* comment */
++ nop
++EOF
++if AC_TRY_COMMAND([${CC-cc} $CFLAGS -g -c conftest.S 1>&AS_MESSAGE_LOG_FD]) &&
++ ac_pattern='conftest\.S'
++ AC_TRY_COMMAND([readelf --debug-dump=line conftest.o |
++ grep $ac_pattern 1>&AS_MESSAGE_LOG_FD]); then
++ libc_cv_cpp_asm_debuginfo=yes
++else
++ libc_cv_cpp_asm_debuginfo=no
++fi
++rm -f conftest*])AC_SUBST(libc_cv_cpp_asm_debuginfo)
++if test $libc_cv_cpp_asm_debuginfo = yes; then
++ AC_DEFINE(HAVE_CPP_ASM_DEBUGINFO)
++fi
++
+ AC_CACHE_CHECK(for ld --no-whole-archive, libc_cv_ld_no_whole_archive, [dnl
+ cat > conftest.c <<\EOF
+ _start () {}
+@@ -1732,7 +1794,7 @@
+ *) dest=$srcdir/$dir ;;
+ esac
+ if test -r $dest/configure; then
+- AC_MSG_RESULT(running configure fragment for $dest)
++ AC_MSG_RESULT(running configure fragment for $dir)
+ . $dest/configure
+ fi
+ [
+diff -u -udbrN glibc-2.3.2/csu/Makefile glibc-2.3.2-200304020432/csu/Makefile
+--- glibc-2.3.2/csu/Makefile Tue Dec 31 23:24:37 2002
++++ glibc-2.3.2-200304020432/csu/Makefile Sun Mar 23 00:00:17 2003
+@@ -1,5 +1,5 @@
+ # Makefile for csu code for GNU C library.
+-# Copyright (C) 1995,96,97,98,99,2000,01,2002 Free Software Foundation, Inc.
++# Copyright (C) 1995,96,97,98,99,2000,01,02,2003 Free Software Foundation, Inc.
+ # This file is part of the GNU C Library.
+
+ # The GNU C Library is free software; you can redistribute it and/or
+@@ -41,6 +41,8 @@
+ abi-note.S init.c munch-tmpl.c
+ generated = version-info.h
+ before-compile = $(objpfx)version-info.h
++
++tests := tst-atomic tst-atomic-long
+
+ all: # Make this the default target; it will be defined in Rules.
+
+diff -u -udbrN glibc-2.3.2/csu/tst-atomic-long.c glibc-2.3.2-200304020432/csu/tst-atomic-long.c
+--- glibc-2.3.2/csu/tst-atomic-long.c Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/csu/tst-atomic-long.c Sun Mar 23 00:00:17 2003
+@@ -0,0 +1,28 @@
++/* Tests for atomic.h macros.
++ Copyright (C) 2003 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++ Contributed by Jakub Jelinek <jakub@redhat.com>, 2003.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, write to the Free
++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++ 02111-1307 USA. */
++
++#include <bits/wordsize.h>
++
++#define atomic_t long
++#if __WORDSIZE == 64
++# define TEST_ATOMIC64 1
++#endif
++
++#include "tst-atomic.c"
+diff -u -udbrN glibc-2.3.2/csu/tst-atomic.c glibc-2.3.2-200304020432/csu/tst-atomic.c
+--- glibc-2.3.2/csu/tst-atomic.c Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/csu/tst-atomic.c Wed Mar 26 05:01:47 2003
+@@ -0,0 +1,373 @@
++/* Tests for atomic.h macros.
++ Copyright (C) 2003 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++ Contributed by Jakub Jelinek <jakub@redhat.com>, 2003.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, write to the Free
++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++ 02111-1307 USA. */
++
++#include <stdio.h>
++#include <atomic.h>
++
++#ifndef atomic_t
++# define atomic_t int
++#endif
++
++/* Test various atomic.h macros. */
++static int
++do_test (void)
++{
++ atomic_t mem;
++ int ret = 0;
++
++#ifdef atomic_compare_and_exchange_val_acq
++ mem = 24;
++ if (atomic_compare_and_exchange_val_acq (&mem, 35, 24) != 24
++ || mem != 35)
++ {
++ puts ("atomic_compare_and_exchange_val_acq test 1 failed");
++ ret = 1;
++ }
++
++ mem = 12;
++ if (atomic_compare_and_exchange_val_acq (&mem, 10, 15) != 12
++ || mem != 12)
++ {
++ puts ("atomic_compare_and_exchange_val_acq test 2 failed");
++ ret = 1;
++ }
++
++ mem = -15;
++ if (atomic_compare_and_exchange_val_acq (&mem, -56, -15) != -15
++ || mem != -56)
++ {
++ puts ("atomic_compare_and_exchange_val_acq test 3 failed");
++ ret = 1;
++ }
++
++ mem = -1;
++ if (atomic_compare_and_exchange_val_acq (&mem, 17, 0) != -1
++ || mem != -1)
++ {
++ puts ("atomic_compare_and_exchange_val_acq test 4 failed");
++ ret = 1;
++ }
++#endif
++
++ mem = 24;
++ if (atomic_compare_and_exchange_bool_acq (&mem, 35, 24)
++ || mem != 35)
++ {
++ puts ("atomic_compare_and_exchange_bool_acq test 1 failed");
++ ret = 1;
++ }
++
++ mem = 12;
++ if (! atomic_compare_and_exchange_bool_acq (&mem, 10, 15)
++ || mem != 12)
++ {
++ puts ("atomic_compare_and_exchange_bool_acq test 2 failed");
++ ret = 1;
++ }
++
++ mem = -15;
++ if (atomic_compare_and_exchange_bool_acq (&mem, -56, -15)
++ || mem != -56)
++ {
++ puts ("atomic_compare_and_exchange_bool_acq test 3 failed");
++ ret = 1;
++ }
++
++ mem = -1;
++ if (! atomic_compare_and_exchange_bool_acq (&mem, 17, 0)
++ || mem != -1)
++ {
++ puts ("atomic_compare_and_exchange_bool_acq test 4 failed");
++ ret = 1;
++ }
++
++ mem = 64;
++ if (atomic_exchange (&mem, 31) != 64
++ || mem != 31)
++ {
++ puts ("atomic_exchange test failed");
++ ret = 1;
++ }
++
++ mem = 2;
++ if (atomic_exchange_and_add (&mem, 11) != 2
++ || mem != 13)
++ {
++ puts ("atomic_exchange_and_add test failed");
++ ret = 1;
++ }
++
++ mem = -21;
++ atomic_add (&mem, 22);
++ if (mem != 1)
++ {
++ puts ("atomic_add test failed");
++ ret = 1;
++ }
++
++ mem = -1;
++ atomic_increment (&mem);
++ if (mem != 0)
++ {
++ puts ("atomic_increment test failed");
++ ret = 1;
++ }
++
++ mem = 0;
++ if (atomic_increment_and_test (&mem)
++ || mem != 1)
++ {
++ puts ("atomic_increment_and_test test 1 failed");
++ ret = 1;
++ }
++
++ mem = 35;
++ if (atomic_increment_and_test (&mem)
++ || mem != 36)
++ {
++ puts ("atomic_increment_and_test test 2 failed");
++ ret = 1;
++ }
++
++ mem = -1;
++ if (! atomic_increment_and_test (&mem)
++ || mem != 0)
++ {
++ puts ("atomic_increment_and_test test 3 failed");
++ ret = 1;
++ }
++
++ mem = 17;
++ atomic_decrement (&mem);
++ if (mem != 16)
++ {
++ puts ("atomic_decrement test failed");
++ ret = 1;
++ }
++
++ mem = 0;
++ if (atomic_decrement_and_test (&mem)
++ || mem != -1)
++ {
++ puts ("atomic_decrement_and_test test 1 failed");
++ ret = 1;
++ }
++
++ mem = 15;
++ if (atomic_decrement_and_test (&mem)
++ || mem != 14)
++ {
++ puts ("atomic_decrement_and_test test 2 failed");
++ ret = 1;
++ }
++
++ mem = 1;
++ if (! atomic_decrement_and_test (&mem)
++ || mem != 0)
++ {
++ puts ("atomic_decrement_and_test test 3 failed");
++ ret = 1;
++ }
++
++ mem = 1;
++ if (atomic_decrement_if_positive (&mem) != 1
++ || mem != 0)
++ {
++ puts ("atomic_decrement_if_positive test 1 failed");
++ ret = 1;
++ }
++
++ mem = 0;
++ if (atomic_decrement_if_positive (&mem) != 0
++ || mem != 0)
++ {
++ puts ("atomic_decrement_if_positive test 2 failed");
++ ret = 1;
++ }
++
++ mem = -1;
++ if (atomic_decrement_if_positive (&mem) != -1
++ || mem != -1)
++ {
++ puts ("atomic_decrement_if_positive test 3 failed");
++ ret = 1;
++ }
++
++ mem = -12;
++ if (! atomic_add_negative (&mem, 10)
++ || mem != -2)
++ {
++ puts ("atomic_add_negative test 1 failed");
++ ret = 1;
++ }
++
++ mem = 0;
++ if (atomic_add_negative (&mem, 100)
++ || mem != 100)
++ {
++ puts ("atomic_add_negative test 2 failed");
++ ret = 1;
++ }
++
++ mem = 15;
++ if (atomic_add_negative (&mem, -10)
++ || mem != 5)
++ {
++ puts ("atomic_add_negative test 3 failed");
++ ret = 1;
++ }
++
++ mem = -12;
++ if (atomic_add_negative (&mem, 14)
++ || mem != 2)
++ {
++ puts ("atomic_add_negative test 4 failed");
++ ret = 1;
++ }
++
++ mem = 0;
++ if (! atomic_add_negative (&mem, -1)
++ || mem != -1)
++ {
++ puts ("atomic_add_negative test 5 failed");
++ ret = 1;
++ }
++
++ mem = -31;
++ if (atomic_add_negative (&mem, 31)
++ || mem != 0)
++ {
++ puts ("atomic_add_negative test 6 failed");
++ ret = 1;
++ }
++
++ mem = -34;
++ if (atomic_add_zero (&mem, 31)
++ || mem != -3)
++ {
++ puts ("atomic_add_zero test 1 failed");
++ ret = 1;
++ }
++
++ mem = -36;
++ if (! atomic_add_zero (&mem, 36)
++ || mem != 0)
++ {
++ puts ("atomic_add_zero test 2 failed");
++ ret = 1;
++ }
++
++ mem = 113;
++ if (atomic_add_zero (&mem, -13)
++ || mem != 100)
++ {
++ puts ("atomic_add_zero test 3 failed");
++ ret = 1;
++ }
++
++ mem = -18;
++ if (atomic_add_zero (&mem, 20)
++ || mem != 2)
++ {
++ puts ("atomic_add_zero test 4 failed");
++ ret = 1;
++ }
++
++ mem = 10;
++ if (atomic_add_zero (&mem, -20)
++ || mem != -10)
++ {
++ puts ("atomic_add_zero test 5 failed");
++ ret = 1;
++ }
++
++ mem = 10;
++ if (! atomic_add_zero (&mem, -10)
++ || mem != 0)
++ {
++ puts ("atomic_add_zero test 6 failed");
++ ret = 1;
++ }
++
++ mem = 0;
++ atomic_bit_set (&mem, 1);
++ if (mem != 2)
++ {
++ puts ("atomic_bit_set test 1 failed");
++ ret = 1;
++ }
++
++ mem = 8;
++ atomic_bit_set (&mem, 3);
++ if (mem != 8)
++ {
++ puts ("atomic_bit_set test 2 failed");
++ ret = 1;
++ }
++
++#ifdef TEST_ATOMIC64
++ mem = 16;
++ atomic_bit_set (&mem, 35);
++ if (mem != 0x800000010LL)
++ {
++ puts ("atomic_bit_set test 3 failed");
++ ret = 1;
++ }
++#endif
++
++ mem = 0;
++ if (atomic_bit_test_set (&mem, 1)
++ || mem != 2)
++ {
++ puts ("atomic_bit_test_set test 1 failed");
++ ret = 1;
++ }
++
++ mem = 8;
++ if (! atomic_bit_test_set (&mem, 3)
++ || mem != 8)
++ {
++ puts ("atomic_bit_test_set test 2 failed");
++ ret = 1;
++ }
++
++#ifdef TEST_ATOMIC64
++ mem = 16;
++ if (atomic_bit_test_set (&mem, 35)
++ || mem != 0x800000010LL)
++ {
++ puts ("atomic_bit_test_set test 3 failed");
++ ret = 1;
++ }
++
++ mem = 0x100000000LL;
++ if (! atomic_bit_test_set (&mem, 32)
++ || mem != 0x100000000LL)
++ {
++ puts ("atomic_bit_test_set test 4 failed");
++ ret = 1;
++ }
++#endif
++
++ return ret;
++}
++
++#define TEST_FUNCTION do_test ()
++#include "../test-skeleton.c"
+diff -u -udbrN glibc-2.3.2/dlfcn/Makefile glibc-2.3.2-200304020432/dlfcn/Makefile
+--- glibc-2.3.2/dlfcn/Makefile Wed Feb 26 01:46:32 2003
++++ glibc-2.3.2-200304020432/dlfcn/Makefile Sun Mar 16 00:14:46 2003
+@@ -19,7 +19,8 @@
+ subdir := dlfcn
+ headers := bits/dlfcn.h dlfcn.h
+ extra-libs := libdl
+-libdl-routines := dlopen dlclose dlsym dlvsym dlerror dladdr eval
++libdl-routines := dlopen dlclose dlsym dlvsym dlerror dladdr dladdr1 dlinfo \
++ eval
+ distribute := dlopenold.c glreflib1.c glreflib2.c failtestmod.c eval.c \
+ defaultmod1.c defaultmod2.c errmsg1mod.c modatexit.c \
+ modcxaatexit.c modstatic.c \
+@@ -37,7 +38,7 @@
+
+ ifeq (yes,$(build-shared))
+ tests = glrefmain failtest tst-dladdr default errmsg1 tstcxaatexit \
+- bug-dlopen1 bug-dlsym1
++ bug-dlopen1 bug-dlsym1 tst-dlinfo
+ ifeq (yes,$(have-protected))
+ tests += tstatexit
+ endif
+@@ -73,6 +74,9 @@
+
+ $(objpfx)tst-dladdr: $(libdl)
+ $(objpfx)tst-dladdr.out: $(objpfx)glreflib1.so
++
++$(objpfx)tst-dlinfo: $(libdl)
++$(objpfx)tst-dlinfo.out: $(objpfx)glreflib1.so
+
+ LDFLAGS-default = $(LDFLAGS-rdynamic)
+ $(objpfx)default: $(libdl) $(objpfx)defaultmod1.so $(objpfx)defaultmod2.so
+diff -u -udbrN glibc-2.3.2/dlfcn/Versions glibc-2.3.2-200304020432/dlfcn/Versions
+--- glibc-2.3.2/dlfcn/Versions Wed Jul 7 20:25:24 1999
++++ glibc-2.3.2-200304020432/dlfcn/Versions Sun Mar 16 00:14:44 2003
+@@ -5,4 +5,7 @@
+ GLIBC_2.1 {
+ dlopen; dlvsym;
+ }
++ GLIBC_2.3.3 {
++ dladdr1; dlinfo;
++ }
+ }
+diff -u -udbrN glibc-2.3.2/dlfcn/dladdr.c glibc-2.3.2-200304020432/dlfcn/dladdr.c
+--- glibc-2.3.2/dlfcn/dladdr.c Sat Jul 7 21:20:52 2001
++++ glibc-2.3.2-200304020432/dlfcn/dladdr.c Mon Mar 10 10:12:11 2003
+@@ -1,5 +1,5 @@
+ /* Locate the shared object symbol nearest a given address.
+- Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
++ Copyright (C) 1996, 1997, 1998, 1999, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -22,5 +22,5 @@
+ int
+ dladdr (const void *address, Dl_info *info)
+ {
+- return _dl_addr (address, info);
++ return _dl_addr (address, info, NULL, NULL);
+ }
+diff -u -udbrN glibc-2.3.2/dlfcn/dladdr1.c glibc-2.3.2-200304020432/dlfcn/dladdr1.c
+--- glibc-2.3.2/dlfcn/dladdr1.c Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/dlfcn/dladdr1.c Mon Mar 10 10:12:11 2003
+@@ -0,0 +1,35 @@
++/* Locate the shared object symbol nearest a given address.
++ Copyright (C) 2003 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, write to the Free
++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++ 02111-1307 USA. */
++
++#include <dlfcn.h>
++
++int
++dladdr1 (const void *address, Dl_info *info, void **extra, int flags)
++{
++ switch (flags)
++ {
++ default: /* Make this an error? */
++ case 0:
++ return _dl_addr (address, info, NULL, NULL);
++ case RTLD_DL_SYMENT:
++ return _dl_addr (address, info, NULL, (const ElfW(Sym) **) extra);
++ case RTLD_DL_LINKMAP:
++ return _dl_addr (address, info, (struct link_map **) extra, NULL);
++ }
++}
+diff -u -udbrN glibc-2.3.2/dlfcn/dlerror.c glibc-2.3.2-200304020432/dlfcn/dlerror.c
+--- glibc-2.3.2/dlfcn/dlerror.c Tue Nov 19 07:51:37 2002
++++ glibc-2.3.2-200304020432/dlfcn/dlerror.c Sat Mar 15 21:06:37 2003
+@@ -1,5 +1,5 @@
+ /* Return error detail for failing <dlfcn.h> functions.
+- Copyright (C) 1995,1996,1997,1998,1999,2000,2002
++ Copyright (C) 1995,1996,1997,1998,1999,2000,2002, 2003
+ Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+@@ -69,9 +69,19 @@
+ else if (result->errstring != NULL)
+ {
+ buf = (char *) result->errstring;
+- if (__asprintf (&buf, result->errcode != 0 ? "%s: %s: %s" : "%s: %s",
+- result->objname, _(result->errstring),
+- strerror (result->errcode)) != -1)
++ int n;
++ if (result->errcode == 0)
++ n = __asprintf (&buf, "%s%s%s",
++ result->objname,
++ result->objname[0] == '\0' ? "" : ": ",
++ _(result->errstring));
++ else
++ n = __asprintf (&buf, "%s%s%s: %s",
++ result->objname,
++ result->objname[0] == '\0' ? "" : ": ",
++ _(result->errstring),
++ strerror (result->errcode));
++ if (n != -1)
+ {
+ /* We don't need the error string anymore. */
+ if (strcmp (result->errstring, "out of memory") != 0)
+diff -u -udbrN glibc-2.3.2/dlfcn/dlfcn.h glibc-2.3.2-200304020432/dlfcn/dlfcn.h
+--- glibc-2.3.2/dlfcn/dlfcn.h Sat Oct 27 01:58:28 2001
++++ glibc-2.3.2-200304020432/dlfcn/dlfcn.h Sun Mar 16 00:14:44 2003
+@@ -1,5 +1,5 @@
+ /* User functions for run-time dynamic loading.
+- Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc.
++ Copyright (C) 1995-1999,2000,2001,2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -21,6 +21,8 @@
+ #define _DLFCN_H 1
+
+ #include <features.h>
++#define __need_size_t
++#include <stddef.h>
+
+ /* Collect various system dependent definitions and declarations. */
+ #include <bits/dlfcn.h>
+@@ -83,7 +85,74 @@
+ /* Fill in *INFO with the following information about ADDRESS.
+ Returns 0 iff no shared object's segments contain that address. */
+ extern int dladdr (__const void *__address, Dl_info *__info) __THROW;
+-#endif
++
++/* Same as `dladdr', but additionally sets *EXTRA_INFO according to FLAGS. */
++extern int dladdr1 (__const void *__address, Dl_info *__info,
++ void **__extra_info, int __flags) __THROW;
++
++/* These are the possible values for the FLAGS argument to `dladdr1'.
++ This indicates what extra information is stored at *EXTRA_INFO.
++ It may also be zero, in which case the EXTRA_INFO argument is not used. */
++enum
++ {
++ /* Matching symbol table entry (const ElfNN_Sym *). */
++ RTLD_DL_SYMENT = 1,
++
++ /* The object containing the address (struct link_map *). */
++ RTLD_DL_LINKMAP = 2
++ };
++
++
++/* Get information about the shared object HANDLE refers to.
++ REQUEST is from among the values below, and determines the use of ARG.
++
++ On success, returns zero. On failure, returns -1 and records an error
++ message to be fetched with `dlerror'. */
++extern int dlinfo (void *__restrict __handle,
++ int __request, void *__restrict __arg);
++
++/* These are the possible values for the REQUEST argument to `dlinfo'. */
++enum
++ {
++ /* Treat ARG as `struct link_map **';
++ store the `struct link_map *' for HANDLE there. */
++ RTLD_DI_LINKMAP = 2,
++
++ /* Treat ARG as `Dl_serinfo *' (see below), and fill in to describe the
++ directories that will be searched for dependencies of this object.
++ RTLD_DI_SERINFOSIZE fills in just the `dls_cnt' and `dls_size'
++ entries to indicate the size of the buffer that must be passed to
++ RTLD_DI_SERINFO to fill in the full information. */
++ RTLD_DI_SERINFO = 4,
++ RTLD_DI_SERINFOSIZE = 5,
++
++ /* Treat ARG as `char *', and store there the directory name used to
++ expand $ORIGIN in this shared object's dependency file names. */
++ RTLD_DI_ORIGIN = 6,
++
++ RTLD_DI_LMID = 1, /* Unsupported, defined by Solaris. */
++ RTLD_DI_CONFIGADDR = 3 /* Unsupported, defined by Solaris. */
++ };
++
++
++/* This is the type of elements in `Dl_serinfo', below.
++ The `dls_name' member points to space in the buffer passed to `dlinfo'. */
++typedef struct
++{
++ char *dls_name; /* Name of library search path directory. */
++ unsigned int dls_flags; /* Indicates where this directory came from. */
++} Dl_serpath;
++
++/* This is the structure that must be passed (by reference) to `dlinfo' for
++ the RTLD_DI_SERINFO and RTLD_DI_SERINFOSIZE requests. */
++typedef struct
++{
++ size_t dls_size; /* Size in bytes of the whole buffer. */
++ unsigned int dls_cnt; /* Number of elements in `dls_serpath'. */
++ Dl_serpath dls_serpath[1]; /* Actually longer, dls_cnt elements. */
++} Dl_serinfo;
++#endif /* __USE_GNU */
++
+
+ __END_DECLS
+
+diff -u -udbrN glibc-2.3.2/dlfcn/dlinfo.c glibc-2.3.2-200304020432/dlfcn/dlinfo.c
+--- glibc-2.3.2/dlfcn/dlinfo.c Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/dlfcn/dlinfo.c Sun Mar 16 00:14:44 2003
+@@ -0,0 +1,87 @@
++/* dlinfo -- Get information from the dynamic linker.
++ Copyright (C) 2003 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, write to the Free
++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++ 02111-1307 USA. */
++
++#include <dlfcn.h>
++#include <link.h>
++#include <ldsodefs.h>
++#include <libintl.h>
++
++struct dlinfo_args
++{
++ ElfW(Addr) caller;
++ void *handle;
++ int request;
++ void *arg;
++};
++
++static void
++dlinfo_doit (void *argsblock)
++{
++ struct dlinfo_args *const args = argsblock;
++ struct link_map *l = args->handle;
++
++#if 0
++ if (args->handle == RTLD_SELF)
++ {
++
++ /* Find the highest-addressed object that CALLER is not below. */
++ for (l = GL(dl_loaded); l != NULL; l = l->l_next)
++ if (caller >= l->l_map_start && caller < l->l_map_end)
++ /* There must be exactly one DSO for the range of the virtual
++ memory. Otherwise something is really broken. */
++ break;
++
++ if (l == NULL)
++ _dl_signal_error (0, NULL, NULL, N_("\
++RTLD_SELF used in code not dynamically loaded"));
++ }
++#endif
++
++ switch (args->request)
++ {
++ case RTLD_DI_LMID:
++ case RTLD_DI_CONFIGADDR:
++ default:
++ _dl_signal_error (0, NULL, NULL, N_("unsupported dlinfo request"));
++ break;
++
++ case RTLD_DI_LINKMAP:
++ *(struct link_map **) args->arg = l;
++ break;
++
++ case RTLD_DI_SERINFO:
++ _dl_rtld_di_serinfo (l, args->arg, false);
++ break;
++ case RTLD_DI_SERINFOSIZE:
++ _dl_rtld_di_serinfo (l, args->arg, true);
++ break;
++
++ case RTLD_DI_ORIGIN:
++ strcpy (args->arg, l->l_origin);
++ break;
++ }
++}
++
++int
++dlinfo (void *handle, int request, void *arg)
++{
++ struct dlinfo_args args = { (ElfW(Addr)) RETURN_ADDRESS (0),
++ handle, request, arg };
++ return _dlerror_run (&dlinfo_doit, &args) ? -1 : 0;
++}
+diff -u -udbrN glibc-2.3.2/dlfcn/tst-dlinfo.c glibc-2.3.2-200304020432/dlfcn/tst-dlinfo.c
+--- glibc-2.3.2/dlfcn/tst-dlinfo.c Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/dlfcn/tst-dlinfo.c Sun Mar 16 00:14:48 2003
+@@ -0,0 +1,96 @@
++/* Test for dlinfo.
++ Copyright (C) 2003 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, write to the Free
++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++ 02111-1307 USA. */
++
++#include <dlfcn.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <error.h>
++
++#define TEST_FUNCTION do_test ()
++
++static int
++do_test (void)
++{
++ int status = 0;
++
++ void *handle = dlopen ("glreflib1.so", RTLD_NOW);
++ if (handle == NULL)
++ error (EXIT_FAILURE, 0, "cannot load: glreflib1.so: %s", dlerror ());
++
++#define TRY(req, arg) \
++ if (dlinfo (handle, req, arg) != 0) \
++ { \
++ printf ("dlinfo failed for %s: %s\n", #req, dlerror ()); \
++ status = 1; \
++ } \
++ else
++
++ struct link_map *l;
++ TRY (RTLD_DI_LINKMAP, &l)
++ {
++ if (l != handle)
++ {
++ printf ("bogus link_map? %p != %p\n", l, handle);
++ status = 1;
++ }
++ }
++
++ char origin[8192]; /* >= PATH_MAX, in theory */
++ TRY (RTLD_DI_ORIGIN, origin)
++ {
++ printf ("origin: %s\n", origin);
++ }
++
++ Dl_serinfo counts;
++ TRY (RTLD_DI_SERINFOSIZE, &counts)
++ {
++ Dl_serinfo *buf = alloca (counts.dls_size);
++ buf->dls_cnt = counts.dls_cnt;
++ buf->dls_size = counts.dls_size;
++ printf ("%u library directories\n", buf->dls_cnt);
++ TRY (RTLD_DI_SERINFO, buf)
++ {
++ if (counts.dls_cnt != buf->dls_cnt)
++ {
++ printf ("??? became %u library directories\n", buf->dls_cnt);
++ status = 1;
++ }
++ for (unsigned int i = 0; i < buf->dls_cnt; ++i)
++ printf ("\t%#02x\t%s\n",
++ buf->dls_serpath[i].dls_flags,
++ buf->dls_serpath[i].dls_name);
++ }
++ }
++
++ unsigned long int lmid = 0xdeadbeefUL;
++ if (dlinfo (handle, RTLD_DI_LMID, &lmid) != 0)
++ printf ("dlinfo refuses RTLD_DI_LMID: %s\n", dlerror ());
++ else
++ {
++ printf ("dlinfo RTLD_DI_LMID worked? %#lx\n", lmid);
++ status = lmid == 0xdeadbeefUL;
++ }
++
++#undef TRY
++ dlclose (handle);
++
++ return status;
++}
++
++#include "../test-skeleton.c"
+diff -u -udbrN glibc-2.3.2/elf/Makefile glibc-2.3.2-200304020432/elf/Makefile
+--- glibc-2.3.2/elf/Makefile Fri Feb 21 07:28:09 2003
++++ glibc-2.3.2-200304020432/elf/Makefile Thu Mar 27 10:47:28 2003
+@@ -181,6 +181,9 @@
+
+ include ../Rules
+
++check-abi: check-abi-ld
++update-abi: update-abi-ld
++
+ ifeq (yes,$(build-shared))
+ # Make sure these things are built in the `make lib' pass so they can be used
+ # to run programs during the `make others' pass.
+@@ -210,7 +213,8 @@
+ mv -f $@T $@
+
+ $(objpfx)librtld.mk: $(objpfx)librtld.map Makefile
+- sed -n 's@^$(common-objpfx)\([^(]*\)(\([^)]*\.os\))$$@\1 \2@p' $< | \
++ sed -n 's@^$(common-objpfx)\([^(]*\)(\([^)]*\.os\)) *.*$$@\1 \2@p' \
++ $< | \
+ while read lib file; do \
+ case $$lib in \
+ libc_pic.a) \
+diff -u -udbrN glibc-2.3.2/elf/Versions glibc-2.3.2-200304020432/elf/Versions
+--- glibc-2.3.2/elf/Versions Wed Dec 4 19:22:02 2002
++++ glibc-2.3.2-200304020432/elf/Versions Sun Mar 16 00:14:44 2003
+@@ -51,6 +51,6 @@
+ _dl_unload_cache;
+ _rtld_global; _dl_tls_symaddr; _dl_allocate_tls; _dl_deallocate_tls;
+ _dl_get_tls_static_info; _dl_allocate_tls_init;
+- _dl_get_origin; _dl_tls_setup;
++ _dl_get_origin; _dl_tls_setup; _dl_rtld_di_serinfo;
+ }
+ }
+diff -u -udbrN glibc-2.3.2/elf/cache.c glibc-2.3.2-200304020432/elf/cache.c
+--- glibc-2.3.2/elf/cache.c Sun Dec 29 20:14:59 2002
++++ glibc-2.3.2-200304020432/elf/cache.c Sun Mar 16 02:03:52 2003
+@@ -1,4 +1,5 @@
+-/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
++/* Copyright (C) 1999, 2000, 2001, 2002, 2003
++ Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Andreas Jaeger <aj@suse.de>, 1999.
+
+@@ -86,6 +87,11 @@
+ case FLAG_POWERPC_LIB64:
+ fputs(",64bit", stdout);
+ break;
++ case FLAG_MIPS64_LIBN32:
++ fputs(",N32", stdout);
++ break;
++ case FLAG_MIPS64_LIBN64:
++ fputs(",64bit", stdout);
+ case 0:
+ break;
+ default:
+@@ -458,7 +464,7 @@
+ {
+ struct cache_entry *new_entry, *ptr, *prev;
+ char *full_path;
+- int len, i;
++ size_t len, i;
+
+ new_entry = (struct cache_entry *) xmalloc (sizeof (struct cache_entry));
+
+diff -u -udbrN glibc-2.3.2/elf/dl-addr.c glibc-2.3.2-200304020432/elf/dl-addr.c
+--- glibc-2.3.2/elf/dl-addr.c Sat Sep 28 05:35:22 2002
++++ glibc-2.3.2-200304020432/elf/dl-addr.c Mon Mar 10 10:12:11 2003
+@@ -1,5 +1,5 @@
+ /* Locate the shared object symbol nearest a given address.
+- Copyright (C) 1996-2000, 2001, 2002 Free Software Foundation, Inc.
++ Copyright (C) 1996-2000,2001,2002,2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -24,7 +24,8 @@
+
+ int
+ internal_function
+-_dl_addr (const void *address, Dl_info *info)
++_dl_addr (const void *address, Dl_info *info,
++ struct link_map **mapp, const ElfW(Sym) **symbolp)
+ {
+ const ElfW(Addr) addr = DL_LOOKUP_ADDRESS (address);
+ struct link_map *l, *match;
+@@ -92,6 +93,11 @@
+ && (ELFW(ST_BIND) (symtab->st_info) == STB_GLOBAL
+ || ELFW(ST_BIND) (symtab->st_info) == STB_WEAK))
+ matchsym = (ElfW(Sym) *) symtab;
++
++ if (mapp)
++ *mapp = match;
++ if (symbolp)
++ *symbolp = matchsym;
+
+ if (matchsym)
+ {
+diff -u -udbrN glibc-2.3.2/elf/dl-close.c glibc-2.3.2-200304020432/elf/dl-close.c
+--- glibc-2.3.2/elf/dl-close.c Mon Jan 27 21:44:03 2003
++++ glibc-2.3.2-200304020432/elf/dl-close.c Sun Mar 16 02:03:52 2003
+@@ -371,7 +371,7 @@
+ this search list, going in either direction. When the
+ whole chunk is at the end of the used area then we can
+ reclaim it. */
+- if (imap->l_tls_offset == tls_free_end)
++ if ((size_t) imap->l_tls_offset == tls_free_end)
+ /* Extend the contiguous chunk being reclaimed. */
+ tls_free_end += imap->l_tls_blocksize;
+ else if (imap->l_tls_offset + imap->l_tls_blocksize
+diff -u -udbrN glibc-2.3.2/elf/dl-conflict.c glibc-2.3.2-200304020432/elf/dl-conflict.c
+--- glibc-2.3.2/elf/dl-conflict.c Thu Oct 17 19:05:51 2002
++++ glibc-2.3.2-200304020432/elf/dl-conflict.c Fri Mar 14 06:34:36 2003
+@@ -1,5 +1,5 @@
+ /* Resolve conflicts against already prelinked libraries.
+- Copyright (C) 2001, 2002 Free Software Foundation, Inc.
++ Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Jakub Jelinek <jakub@redhat.com>, 2001.
+
+@@ -28,7 +28,7 @@
+ #include <sys/types.h>
+ #include "dynamic-link.h"
+
+-
++#if ! ELF_MACHINE_NO_RELA
+ void
+ _dl_resolve_conflicts (struct link_map *l, ElfW(Rela) *conflict,
+ ElfW(Rela) *conflictend)
+@@ -65,3 +65,4 @@
+ elf_machine_rela (l, conflict, NULL, NULL, (void *) conflict->r_offset);
+ }
+ }
++#endif
+diff -u -udbrN glibc-2.3.2/elf/dl-load.c glibc-2.3.2-200304020432/elf/dl-load.c
+--- glibc-2.3.2/elf/dl-load.c Thu Jan 16 19:14:41 2003
++++ glibc-2.3.2-200304020432/elf/dl-load.c Sun Mar 16 00:14:44 2003
+@@ -1,5 +1,5 @@
+ /* Map in a shared object's segments from the file.
+- Copyright (C) 1995,96,97,98,99,2000,2001,2002 Free Software Foundation, Inc.
++ Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -26,6 +26,7 @@
+ #include <string.h>
+ #include <unistd.h>
+ #include <ldsodefs.h>
++#include <bits/wordsize.h>
+ #include <sys/mman.h>
+ #include <sys/param.h>
+ #include <sys/stat.h>
+@@ -97,19 +98,26 @@
+ /* Type for the buffer we put the ELF header and hopefully the program
+ header. This buffer does not really have to be too large. In most
+ cases the program header follows the ELF header directly. If this
+- is not the case all bets are off and we can make the header arbitrarily
+- large and still won't get it read. This means the only question is
+- how large are the ELF and program header combined. The ELF header
+- in 64-bit files is 56 bytes long. Each program header entry is again
+- 56 bytes long. I.e., even with a file which has 17 program header
+- entries we only have to read 1kB. And 17 program header entries is
+- plenty, normal files have < 10. If this heuristic should really fail
+- for some file the code in `_dl_map_object_from_fd' knows how to
+- recover. */
++ is not the case all bets are off and we can make the header
++ arbitrarily large and still won't get it read. This means the only
++ question is how large are the ELF and program header combined. The
++ ELF header 32-bit files is 52 bytes long and in 64-bit files is 64
++ bytes long. Each program header entry is again 32 and 56 bytes
++ long respectively. I.e., even with a file which has 7 program
++ header entries we only have to read 512B. Add to this a bit of
++ margin for program notes and reading 512B and 640B for 32-bit and
++ 64-bit files respecitvely is enough. If this heuristic should
++ really fail for some file the code in `_dl_map_object_from_fd'
++ knows how to recover. */
+ struct filebuf
+ {
+ ssize_t len;
+- char buf[1024] __attribute__ ((aligned (__alignof (ElfW(Ehdr)))));
++#if __WORDSIZE == 32
++# define FILEBUF_SIZE 512
++#else
++# define FILEBUF_SIZE 640
++#endif
++ char buf[FILEBUF_SIZE] __attribute__ ((aligned (__alignof (ElfW(Ehdr)))));
+ };
+
+ /* This is the decomposed LD_LIBRARY_PATH search path. */
+@@ -568,6 +576,34 @@
+ sps->malloced = 1;
+ }
+
++/* Make sure cached path information is stored in *SP
++ and return true if there are any paths to search there. */
++static inline bool
++cache_rpath (struct link_map *l,
++ struct r_search_path_struct *sp,
++ int tag,
++ const char *what)
++{
++ if (sp->dirs == (void *) -1)
++ return false;
++
++ if (sp->dirs != NULL)
++ return true;
++
++ if (l->l_info[tag] == NULL)
++ {
++ /* There is no path. */
++ sp->dirs = (void *) -1;
++ return false;
++ }
++
++ /* Make sure the cache information is available. */
++ decompose_rpath (sp, (const char *) (D_PTR (l, l_info[DT_STRTAB])
++ + l->l_info[tag]->d_un.d_val),
++ l, what);
++ return true;
++}
++
+
+ void
+ internal_function
+@@ -877,6 +913,7 @@
+ int prot;
+ } loadcmds[l->l_phnum], *c;
+ size_t nloadcmds = 0;
++ bool has_holes = false;
+
+ /* The struct is initialized to zero so this is not necessary:
+ l->l_ld = 0;
+@@ -922,6 +959,11 @@
+ c->allocend = ph->p_vaddr + ph->p_memsz;
+ c->mapoff = ph->p_offset & ~(ph->p_align - 1);
+
++ /* Determine whether there is a gap between the last segment
++ and this one. */
++ if (nloadcmds > 1 && c[-1].mapend != c->mapstart)
++ has_holes = true;
++
+ /* Optimize a common case. */
+ #if (PF_R | PF_W | PF_X) == 7 && (PROT_READ | PROT_WRITE | PROT_EXEC) == 7
+ c->prot = (PF_TO_PROT
+@@ -1014,6 +1056,15 @@
+ break;
+ }
+
++ if (__builtin_expect (nloadcmds == 0, 0))
++ {
++ /* This only happens for a bogus object that will be caught with
++ another error below. But we don't want to go through the
++ calculations below using NLOADCMDS - 1. */
++ errstring = N_("object file has no loadable segments");
++ goto call_lose;
++ }
++
+ /* Now process the load commands and map segments into memory. */
+ c = loadcmds;
+
+@@ -1051,6 +1102,7 @@
+ l->l_map_end = l->l_map_start + maplength;
+ l->l_addr = l->l_map_start - c->mapstart;
+
++ if (has_holes)
+ /* Change protection on the excess portion to disallow all access;
+ the portions we do not remap later will be inaccessible as if
+ unallocated. Then jump into the normal segment-mapping loop to
+@@ -1118,23 +1170,18 @@
+ if (zeropage > zero)
+ {
+ /* Zero the final part of the last page of the segment. */
+- if ((c->prot & PROT_WRITE) == 0)
++ if (__builtin_expect ((c->prot & PROT_WRITE) == 0, 0))
+ {
+ /* Dag nab it. */
+- if (__builtin_expect (__mprotect ((caddr_t)
+- (zero
+- & ~(GL(dl_pagesize)
+- - 1)),
+- GL(dl_pagesize),
+- c->prot|PROT_WRITE) < 0,
+- 0))
++ if (__mprotect ((caddr_t) (zero & ~(GL(dl_pagesize) - 1)),
++ GL(dl_pagesize), c->prot|PROT_WRITE) < 0)
+ {
+ errstring = N_("cannot change memory protections");
+ goto call_lose_errno;
+ }
+ }
+ memset ((void *) zero, '\0', zeropage - zero);
+- if ((c->prot & PROT_WRITE) == 0)
++ if (__builtin_expect ((c->prot & PROT_WRITE) == 0, 0))
+ __mprotect ((caddr_t) (zero & ~(GL(dl_pagesize) - 1)),
+ GL(dl_pagesize), c->prot);
+ }
+@@ -1728,29 +1775,9 @@
+ /* First try the DT_RPATH of the dependent object that caused NAME
+ to be loaded. Then that object's dependent, and on up. */
+ for (l = loader; fd == -1 && l; l = l->l_loader)
+- {
+- if (l->l_rpath_dirs.dirs == NULL)
+- {
+- if (l->l_info[DT_RPATH] == NULL)
+- {
+- /* There is no path. */
+- l->l_rpath_dirs.dirs = (void *) -1;
+- continue;
+- }
+- else
+- {
+- /* Make sure the cache information is available. */
+- size_t ptrval = (D_PTR (l, l_info[DT_STRTAB])
+- + l->l_info[DT_RPATH]->d_un.d_val);
+- decompose_rpath (&l->l_rpath_dirs,
+- (const char *) ptrval, l, "RPATH");
+- }
+- }
+-
+- if (l->l_rpath_dirs.dirs != (void *) -1)
++ if (cache_rpath (l, &l->l_rpath_dirs, DT_RPATH, "RPATH"))
+ fd = open_path (name, namelen, preloaded, &l->l_rpath_dirs,
+ &realname, &fb);
+- }
+
+ /* If dynamically linked, try the DT_RPATH of the executable
+ itself. */
+@@ -1766,37 +1793,12 @@
+ fd = open_path (name, namelen, preloaded, &env_path_list,
+ &realname, &fb);
+
+- /* Look at the RUNPATH information for this binary.
+-
+- Note that this is no real loop. 'while' is used only to enable
+- us to use 'break' instead of a 'goto' to jump to the end. The
+- loop is always left after the first round. */
+- while (fd == -1 && loader != NULL
+- && loader->l_runpath_dirs.dirs != (void *) -1)
+- {
+- if (loader->l_runpath_dirs.dirs == NULL)
+- {
+- if (loader->l_info[DT_RUNPATH] == NULL)
+- {
+- /* No RUNPATH. */
+- loader->l_runpath_dirs.dirs = (void *) -1;
+- break;
+- }
+- else
+- {
+- /* Make sure the cache information is available. */
+- size_t ptrval = (D_PTR (loader, l_info[DT_STRTAB])
+- + loader->l_info[DT_RUNPATH]->d_un.d_val);
+- decompose_rpath (&loader->l_runpath_dirs,
+- (const char *) ptrval, loader, "RUNPATH");
+- }
+- }
+-
+- if (loader->l_runpath_dirs.dirs != (void *) -1)
++ /* Look at the RUNPATH information for this binary. */
++ if (fd == -1 && loader != NULL
++ && cache_rpath (loader, &loader->l_runpath_dirs,
++ DT_RUNPATH, "RUNPATH"))
+ fd = open_path (name, namelen, preloaded,
+ &loader->l_runpath_dirs, &realname, &fb);
+- break;
+- }
+
+ if (fd == -1
+ && (__builtin_expect (! preloaded, 1)
+@@ -1920,3 +1922,87 @@
+ return _dl_map_object_from_fd (name, fd, &fb, realname, loader, type, mode);
+ }
+ INTDEF (_dl_map_object)
++
++void
++internal_function
++_dl_rtld_di_serinfo (struct link_map *loader, Dl_serinfo *si, bool counting)
++{
++ if (counting)
++ {
++ si->dls_cnt = 0;
++ si->dls_size = 0;
++ }
++
++ unsigned int idx = 0;
++ char *allocptr = (char *) &si->dls_serpath[si->dls_cnt];
++ inline void add_path (const struct r_search_path_struct *sps,
++ unsigned int flags)
++# define add_path(sps, flags) add_path(sps, 0) /* XXX */
++ {
++ if (sps->dirs != (void *) -1)
++ {
++ struct r_search_path_elem **dirs = sps->dirs;
++ do
++ {
++ const struct r_search_path_elem *const r = *dirs++;
++ if (counting)
++ {
++ si->dls_cnt++;
++ si->dls_size += r->dirnamelen;
++ }
++ else
++ {
++ Dl_serpath *const sp = &si->dls_serpath[idx++];
++ sp->dls_name = allocptr;
++ allocptr = __mempcpy (allocptr,
++ r->dirname, r->dirnamelen - 1);
++ *allocptr++ = '\0';
++ sp->dls_flags = flags;
++ }
++ }
++ while (*dirs != NULL);
++ }
++ }
++
++ /* When the object has the RUNPATH information we don't use any RPATHs. */
++ if (loader->l_info[DT_RUNPATH] == NULL)
++ {
++ /* First try the DT_RPATH of the dependent object that caused NAME
++ to be loaded. Then that object's dependent, and on up. */
++
++ struct link_map *l = loader;
++ do
++ {
++ if (cache_rpath (l, &l->l_rpath_dirs, DT_RPATH, "RPATH"))
++ add_path (&l->l_rpath_dirs, XXX_RPATH);
++ l = l->l_loader;
++ }
++ while (l != NULL);
++
++ /* If dynamically linked, try the DT_RPATH of the executable itself. */
++ l = GL(dl_loaded);
++ if (l != NULL && l->l_type != lt_loaded && l != loader)
++ if (cache_rpath (l, &l->l_rpath_dirs, DT_RPATH, "RPATH"))
++ add_path (&l->l_rpath_dirs, XXX_RPATH);
++ }
++
++ /* Try the LD_LIBRARY_PATH environment variable. */
++ add_path (&env_path_list, XXX_ENV);
++
++ /* Look at the RUNPATH information for this binary. */
++ if (cache_rpath (loader, &loader->l_runpath_dirs, DT_RUNPATH, "RUNPATH"))
++ add_path (&loader->l_runpath_dirs, XXX_RUNPATH);
++
++ /* XXX
++ Here is where ld.so.cache gets checked, but we don't have
++ a way to indicate that in the results for Dl_serinfo. */
++
++ /* Finally, try the default path. */
++ if (!(loader->l_flags_1 & DF_1_NODEFLIB))
++ add_path (&rtld_search_dirs, XXX_default);
++
++ if (counting)
++ /* Count the struct size before the string area, which we didn't
++ know before we completed dls_cnt. */
++ si->dls_size += (char *) &si->dls_serpath[si->dls_cnt] - (char *) si;
++}
+diff -u -udbrN glibc-2.3.2/elf/dl-lookup.c glibc-2.3.2-200304020432/elf/dl-lookup.c
+--- glibc-2.3.2/elf/dl-lookup.c Sat Jan 11 10:51:49 2003
++++ glibc-2.3.2-200304020432/elf/dl-lookup.c Wed Mar 26 06:51:33 2003
+@@ -273,19 +273,32 @@
+ {
+ /* It is very tricky. We need to figure out what value to
+ return for the protected symbol. */
++ if (type_class == ELF_RTYPE_CLASS_PLT)
++ {
++ if (current_value.s != NULL && current_value.m != undef_map)
++ {
++ current_value.s = *ref;
++ current_value.m = undef_map;
++ }
++ }
++ else
++ {
+ struct sym_val protected_value = { NULL, NULL };
+
+ for (scope = symbol_scope; *scope; ++scope)
+- if (_dl_do_lookup (undef_name, hash, *ref, &protected_value, *scope,
+- 0, flags, NULL, ELF_RTYPE_CLASS_PLT))
++ if (_dl_do_lookup (undef_name, hash, *ref,
++ &protected_value, *scope, 0, flags,
++ NULL, ELF_RTYPE_CLASS_PLT))
+ break;
+
+- if (protected_value.s != NULL && protected_value.m != undef_map)
++ if (protected_value.s != NULL
++ && protected_value.m != undef_map)
+ {
+ current_value.s = *ref;
+ current_value.m = undef_map;
+ }
+ }
++ }
+
+ /* We have to check whether this would bind UNDEF_MAP to an object
+ in the global scope which was dynamically loaded. In this case
+@@ -465,18 +478,31 @@
+ {
+ /* It is very tricky. We need to figure out what value to
+ return for the protected symbol. */
++ if (type_class == ELF_RTYPE_CLASS_PLT)
++ {
++ if (current_value.s != NULL && current_value.m != undef_map)
++ {
++ current_value.s = *ref;
++ current_value.m = undef_map;
++ }
++ }
++ else
++ {
+ struct sym_val protected_value = { NULL, NULL };
+
+ for (scope = symbol_scope; *scope; ++scope)
+- if (_dl_do_lookup_versioned (undef_name, hash, *ref, &protected_value,
++ if (_dl_do_lookup_versioned (undef_name, hash, *ref,
++ &protected_value,
+ *scope, 0, version, NULL,
+ ELF_RTYPE_CLASS_PLT))
+ break;
+
+- if (protected_value.s != NULL && protected_value.m != undef_map)
++ if (protected_value.s != NULL
++ && protected_value.m != undef_map)
+ {
+ current_value.s = *ref;
+ current_value.m = undef_map;
++ }
+ }
+ }
+
+diff -u -udbrN glibc-2.3.2/elf/dl-profile.c glibc-2.3.2-200304020432/elf/dl-profile.c
+--- glibc-2.3.2/elf/dl-profile.c Fri Aug 2 23:46:57 2002
++++ glibc-2.3.2-200304020432/elf/dl-profile.c Thu Mar 20 08:07:22 2003
+@@ -1,5 +1,5 @@
+ /* Profiling of shared libraries.
+- Copyright (C) 1997,1998,1999,2000,2001,2002 Free Software Foundation, Inc.
++ Copyright (C) 1997-2002, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
+ Based on the BSD mcount implementation.
+@@ -34,7 +34,7 @@
+ #include <sys/mman.h>
+ #include <sys/param.h>
+ #include <sys/stat.h>
+-#include <atomicity.h>
++#include <atomic.h>
+
+ /* The LD_PROFILE feature has to be implemented different to the
+ normal profiling using the gmon/ functions. The problem is that an
+@@ -516,24 +516,24 @@
+ size_t newfromidx;
+ to_index = (data[narcs].self_pc
+ / (hashfraction * sizeof (*tos)));
+- newfromidx = exchange_and_add (&fromidx, 1) + 1;
++ newfromidx = atomic_exchange_and_add (&fromidx, 1) + 1;
+ froms[newfromidx].here = &data[narcs];
+ froms[newfromidx].link = tos[to_index];
+ tos[to_index] = newfromidx;
+- atomic_add (&narcs, 1);
++ atomic_increment (&narcs);
+ }
+
+ /* If we still have no entry stop searching and insert. */
+ if (*topcindex == 0)
+ {
+- uint_fast32_t newarc = exchange_and_add (narcsp, 1);
++ uint_fast32_t newarc = atomic_exchange_and_add (narcsp, 1);
+
+ /* In rare cases it could happen that all entries in FROMS are
+ occupied. So we cannot count this anymore. */
+ if (newarc >= fromlimit)
+ goto done;
+
+- *topcindex = exchange_and_add (&fromidx, 1) + 1;
++ *topcindex = atomic_exchange_and_add (&fromidx, 1) + 1;
+ fromp = &froms[*topcindex];
+
+ fromp->here = &data[newarc];
+@@ -541,7 +541,7 @@
+ data[newarc].self_pc = selfpc;
+ data[newarc].count = 0;
+ fromp->link = 0;
+- atomic_add (&narcs, 1);
++ atomic_increment (&narcs);
+
+ break;
+ }
+@@ -554,7 +554,7 @@
+ }
+
+ /* Increment the counter. */
+- atomic_add (&fromp->here->count, 1);
++ atomic_increment (&fromp->here->count);
+
+ done:
+ ;
+diff -u -udbrN glibc-2.3.2/elf/dl-reloc.c glibc-2.3.2-200304020432/elf/dl-reloc.c
+--- glibc-2.3.2/elf/dl-reloc.c Thu Jan 30 18:35:50 2003
++++ glibc-2.3.2-200304020432/elf/dl-reloc.c Sat Mar 1 23:31:52 2003
+@@ -44,23 +44,31 @@
+ static void __attribute_noinline__
+ allocate_static_tls (struct link_map *map)
+ {
+- size_t offset = roundup (GL(dl_tls_static_used), map->l_tls_align);
+- if (offset + map->l_tls_blocksize
++ size_t offset, used, check;
++
+ # if TLS_TCB_AT_TP
+- + TLS_TCB_SIZE
++ offset = roundup (GL(dl_tls_static_used) + map->l_tls_blocksize,
++ map->l_tls_align);
++ used = offset;
++ check = offset + TLS_TCB_SIZE;
+ # elif TLS_DTV_AT_TP
++ offset = roundup (GL(dl_tls_static_used), map->l_tls_align);
++ used = offset + map->l_tls_blocksize;
++ check = used;
+ /* dl_tls_static_used includes the TCB at the beginning. */
+ # else
+ # error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined"
+ # endif
+- > GL(dl_tls_static_size))
++
++ if (check > GL(dl_tls_static_size))
+ {
+ const char *errstring = N_("\
+ shared object cannot be dlopen()ed: static TLS memory too small");
+ INTUSE(_dl_signal_error) (0, (map)->l_name, NULL, errstring);
+ }
++
+ map->l_tls_offset = offset;
+- GL(dl_tls_static_used) = offset + map->l_tls_blocksize;
++ GL(dl_tls_static_used) = used;
+ }
+ #endif
+
+diff -u -udbrN glibc-2.3.2/elf/elf.h glibc-2.3.2-200304020432/elf/elf.h
+--- glibc-2.3.2/elf/elf.h Wed Feb 26 00:40:08 2003
++++ glibc-2.3.2-200304020432/elf/elf.h Sun Mar 2 12:41:51 2003
+@@ -1,5 +1,5 @@
+ /* This file defines standard ELF types, structures, and macros.
+- Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc.
++ Copyright (C) 1995-1999,2000,2001,2002,2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -1881,22 +1881,85 @@
+ #define R_PPC_SECTOFF_LO 34
+ #define R_PPC_SECTOFF_HI 35
+ #define R_PPC_SECTOFF_HA 36
++
++/* PowerPC relocations defined for the TLS access ABI. */
++#define R_PPC_TLS 67 /* none (sym+add)@tls */
++#define R_PPC_DTPMOD32 68 /* word32 (sym+add)@dtpmod */
++#define R_PPC_TPREL16 69 /* half16* (sym+add)@tprel */
++#define R_PPC_TPREL16_LO 70 /* half16 (sym+add)@tprel@l */
++#define R_PPC_TPREL16_HI 71 /* half16 (sym+add)@tprel@h */
++#define R_PPC_TPREL16_HA 72 /* half16 (sym+add)@tprel@ha */
++#define R_PPC_TPREL32 73 /* word32 (sym+add)@tprel */
++#define R_PPC_DTPREL16 74 /* half16* (sym+add)@dtprel */
++#define R_PPC_DTPREL16_LO 75 /* half16 (sym+add)@dtprel@l */
++#define R_PPC_DTPREL16_HI 76 /* half16 (sym+add)@dtprel@h */
++#define R_PPC_DTPREL16_HA 77 /* half16 (sym+add)@dtprel@ha */
++#define R_PPC_DTPREL32 78 /* word32 (sym+add)@dtprel */
++#define R_PPC_GOT_TLSGD16 79 /* half16* (sym+add)@got@tlsgd */
++#define R_PPC_GOT_TLSGD16_LO 80 /* half16 (sym+add)@got@tlsgd@l */
++#define R_PPC_GOT_TLSGD16_HI 81 /* half16 (sym+add)@got@tlsgd@h */
++#define R_PPC_GOT_TLSGD16_HA 82 /* half16 (sym+add)@got@tlsgd@ha */
++#define R_PPC_GOT_TLSLD16 83 /* half16* (sym+add)@got@tlsld */
++#define R_PPC_GOT_TLSLD16_LO 84 /* half16 (sym+add)@got@tlsld@l */
++#define R_PPC_GOT_TLSLD16_HI 85 /* half16 (sym+add)@got@tlsld@h */
++#define R_PPC_GOT_TLSLD16_HA 86 /* half16 (sym+add)@got@tlsld@ha */
++#define R_PPC_GOT_TPREL16 87 /* half16* (sym+add)@got@tprel */
++#define R_PPC_GOT_TPREL16_LO 88 /* half16 (sym+add)@got@tprel@l */
++#define R_PPC_GOT_TPREL16_HI 89 /* half16 (sym+add)@got@tprel@h */
++#define R_PPC_GOT_TPREL16_HA 90 /* half16 (sym+add)@got@tprel@ha */
++#define R_PPC_GOT_DTPREL16 91 /* half16* (sym+add)@got@dtprel */
++#define R_PPC_GOT_DTPREL16_LO 92 /* half16* (sym+add)@got@dtprel@l */
++#define R_PPC_GOT_DTPREL16_HI 93 /* half16* (sym+add)@got@dtprel@h */
++#define R_PPC_GOT_DTPREL16_HA 94 /* half16* (sym+add)@got@dtprel@ha */
++
+ /* Keep this the last entry. */
+-#define R_PPC_NUM 37
++#define R_PPC_NUM 95
++
++/* The remaining relocs are from the Embedded ELF ABI, and are not
++ in the SVR4 ELF ABI. */
++#define R_PPC_EMB_NADDR32 101
++#define R_PPC_EMB_NADDR16 102
++#define R_PPC_EMB_NADDR16_LO 103
++#define R_PPC_EMB_NADDR16_HI 104
++#define R_PPC_EMB_NADDR16_HA 105
++#define R_PPC_EMB_SDAI16 106
++#define R_PPC_EMB_SDA2I16 107
++#define R_PPC_EMB_SDA2REL 108
++#define R_PPC_EMB_SDA21 109 /* 16 bit offset in SDA */
++#define R_PPC_EMB_MRKREF 110
++#define R_PPC_EMB_RELSEC16 111
++#define R_PPC_EMB_RELST_LO 112
++#define R_PPC_EMB_RELST_HI 113
++#define R_PPC_EMB_RELST_HA 114
++#define R_PPC_EMB_BIT_FLD 115
++#define R_PPC_EMB_RELSDA 116 /* 16 bit relative offset in SDA */
++
++/* Diab tool relocations. */
++#define R_PPC_DIAB_SDA21_LO 180 /* like EMB_SDA21, but lower 16 bit */
++#define R_PPC_DIAB_SDA21_HI 181 /* like EMB_SDA21, but high 16 bit */
++#define R_PPC_DIAB_SDA21_HA 182 /* like EMB_SDA21, adjusted high 16 */
++#define R_PPC_DIAB_RELSDA_LO 183 /* like EMB_RELSDA, but lower 16 bit */
++#define R_PPC_DIAB_RELSDA_HI 184 /* like EMB_RELSDA, but high 16 bit */
++#define R_PPC_DIAB_RELSDA_HA 185 /* like EMB_RELSDA, adjusted high 16 */
++
++/* This is a phony reloc to handle any old fashioned TOC16 references
++ that may still be in object files. */
++#define R_PPC_TOC16 255
++
+
+ /* PowerPC64 relocations defined by the ABIs */
+ #define R_PPC64_NONE R_PPC_NONE
+-#define R_PPC64_ADDR32 R_PPC_ADDR32 /* 32bit absolute address. */
+-#define R_PPC64_ADDR24 R_PPC_ADDR24 /* 26bit address, word aligned. */
+-#define R_PPC64_ADDR16 R_PPC_ADDR16 /* 16bit absolute address. */
+-#define R_PPC64_ADDR16_LO R_PPC_ADDR16_LO /* lower 16bits of abs. address. */
+-#define R_PPC64_ADDR16_HI R_PPC_ADDR16_HI /* high 16bits of abs. address. */
++#define R_PPC64_ADDR32 R_PPC_ADDR32 /* 32bit absolute address */
++#define R_PPC64_ADDR24 R_PPC_ADDR24 /* 26bit address, word aligned */
++#define R_PPC64_ADDR16 R_PPC_ADDR16 /* 16bit absolute address */
++#define R_PPC64_ADDR16_LO R_PPC_ADDR16_LO /* lower 16bits of address */
++#define R_PPC64_ADDR16_HI R_PPC_ADDR16_HI /* high 16bits of address. */
+ #define R_PPC64_ADDR16_HA R_PPC_ADDR16_HA /* adjusted high 16bits. */
+-#define R_PPC64_ADDR14 R_PPC_ADDR14 /* 16bit address, word aligned. */
++#define R_PPC64_ADDR14 R_PPC_ADDR14 /* 16bit address, word aligned */
+ #define R_PPC64_ADDR14_BRTAKEN R_PPC_ADDR14_BRTAKEN
+ #define R_PPC64_ADDR14_BRNTAKEN R_PPC_ADDR14_BRNTAKEN
+-#define R_PPC64_REL24 R_PPC_REL24 /* PC relative 26 bit, word aligned. */
+-#define R_PPC64_REL14 R_PPC_REL14 /* PC relative 16 bit. */
++#define R_PPC64_REL24 R_PPC_REL24 /* PC-rel. 26 bit, word aligned */
++#define R_PPC64_REL14 R_PPC_REL14 /* PC relative 16 bit */
+ #define R_PPC64_REL14_BRTAKEN R_PPC_REL14_BRTAKEN
+ #define R_PPC64_REL14_BRNTAKEN R_PPC_REL14_BRNTAKEN
+ #define R_PPC64_GOT16 R_PPC_GOT16
+@@ -1922,116 +1985,87 @@
+ #define R_PPC64_SECTOFF_LO R_PPC_SECTOFF_LO
+ #define R_PPC64_SECTOFF_HI R_PPC_SECTOFF_HI
+ #define R_PPC64_SECTOFF_HA R_PPC_SECTOFF_HA
+-#define R_PPC64_ADDR30 37 /* word30 (S + A - P) >> 2. */
+-#define R_PPC64_ADDR64 38 /* doubleword64 S + A. */
+-#define R_PPC64_ADDR16_HIGHER 39 /* half16 #higher(S + A). */
+-#define R_PPC64_ADDR16_HIGHERA 40 /* half16 #highera(S + A). */
+-#define R_PPC64_ADDR16_HIGHEST 41 /* half16 #highest(S + A). */
+-#define R_PPC64_ADDR16_HIGHESTA 42 /* half16 #highesta(S + A). */
+-#define R_PPC64_UADDR64 43 /* doubleword64 S + A. */
+-#define R_PPC64_REL64 44 /* doubleword64 S + A - P. */
+-#define R_PPC64_PLT64 45 /* doubleword64 L + A. */
+-#define R_PPC64_PLTREL64 46 /* doubleword64 L + A - P. */
+-#define R_PPC64_TOC16 47 /* half16* S + A - .TOC. */
+-#define R_PPC64_TOC16_LO 48 /* half16 #lo(S + A - .TOC.). */
+-#define R_PPC64_TOC16_HI 49 /* half16 #hi(S + A - .TOC.). */
+-#define R_PPC64_TOC16_HA 50 /* half16 #ha(S + A - .TOC.). */
+-#define R_PPC64_TOC 51 /* doubleword64 .TOC. */
+-#define R_PPC64_PLTGOT16 52 /* half16* M + A. */
+-#define R_PPC64_PLTGOT16_LO 53 /* half16 #lo(M + A). */
+-#define R_PPC64_PLTGOT16_HI 54 /* half16 #hi(M + A). */
+-#define R_PPC64_PLTGOT16_HA 55 /* half16 #ha(M + A). */
++#define R_PPC64_ADDR30 37 /* word30 (S + A - P) >> 2 */
++#define R_PPC64_ADDR64 38 /* doubleword64 S + A */
++#define R_PPC64_ADDR16_HIGHER 39 /* half16 #higher(S + A) */
++#define R_PPC64_ADDR16_HIGHERA 40 /* half16 #highera(S + A) */
++#define R_PPC64_ADDR16_HIGHEST 41 /* half16 #highest(S + A) */
++#define R_PPC64_ADDR16_HIGHESTA 42 /* half16 #highesta(S + A) */
++#define R_PPC64_UADDR64 43 /* doubleword64 S + A */
++#define R_PPC64_REL64 44 /* doubleword64 S + A - P */
++#define R_PPC64_PLT64 45 /* doubleword64 L + A */
++#define R_PPC64_PLTREL64 46 /* doubleword64 L + A - P */
++#define R_PPC64_TOC16 47 /* half16* S + A - .TOC */
++#define R_PPC64_TOC16_LO 48 /* half16 #lo(S + A - .TOC.) */
++#define R_PPC64_TOC16_HI 49 /* half16 #hi(S + A - .TOC.) */
++#define R_PPC64_TOC16_HA 50 /* half16 #ha(S + A - .TOC.) */
++#define R_PPC64_TOC 51 /* doubleword64 .TOC */
++#define R_PPC64_PLTGOT16 52 /* half16* M + A */
++#define R_PPC64_PLTGOT16_LO 53 /* half16 #lo(M + A) */
++#define R_PPC64_PLTGOT16_HI 54 /* half16 #hi(M + A) */
++#define R_PPC64_PLTGOT16_HA 55 /* half16 #ha(M + A) */
+
+-#define R_PPC64_ADDR16_DS 56 /* half16ds* (S + A) >> 2. */
+-#define R_PPC64_ADDR16_LO_DS 57 /* half16ds #lo(S + A) >> 2. */
+-#define R_PPC64_GOT16_DS 58 /* half16ds* (G + A) >> 2. */
+-#define R_PPC64_GOT16_LO_DS 59 /* half16ds #lo(G + A) >> 2. */
+-#define R_PPC64_PLT16_LO_DS 60 /* half16ds #lo(L + A) >> 2. */
+-#define R_PPC64_SECTOFF_DS 61 /* half16ds* (R + A) >> 2. */
+-#define R_PPC64_SECTOFF_LO_DS 62 /* half16ds #lo(R + A) >> 2. */
+-#define R_PPC64_TOC16_DS 63 /* half16ds* (S + A - .TOC.) >> 2. */
+-#define R_PPC64_TOC16_LO_DS 64 /* half16ds #lo(S + A - .TOC.) >> 2. */
+-#define R_PPC64_PLTGOT16_DS 65 /* half16ds* (M + A) >> 2. */
+-#define R_PPC64_PLTGOT16_LO_DS 66 /* half16ds #lo(M + A) >> 2. */
++#define R_PPC64_ADDR16_DS 56 /* half16ds* (S + A) >> 2 */
++#define R_PPC64_ADDR16_LO_DS 57 /* half16ds #lo(S + A) >> 2 */
++#define R_PPC64_GOT16_DS 58 /* half16ds* (G + A) >> 2 */
++#define R_PPC64_GOT16_LO_DS 59 /* half16ds #lo(G + A) >> 2 */
++#define R_PPC64_PLT16_LO_DS 60 /* half16ds #lo(L + A) >> 2 */
++#define R_PPC64_SECTOFF_DS 61 /* half16ds* (R + A) >> 2 */
++#define R_PPC64_SECTOFF_LO_DS 62 /* half16ds #lo(R + A) >> 2 */
++#define R_PPC64_TOC16_DS 63 /* half16ds* (S + A - .TOC.) >> 2 */
++#define R_PPC64_TOC16_LO_DS 64 /* half16ds #lo(S + A - .TOC.) >> 2 */
++#define R_PPC64_PLTGOT16_DS 65 /* half16ds* (M + A) >> 2 */
++#define R_PPC64_PLTGOT16_LO_DS 66 /* half16ds #lo(M + A) >> 2 */
+
+ /* PowerPC64 relocations defined for the TLS access ABI. */
+-#define R_PPC64_TLS 67 /* none (sym+add)@tls. */
+-#define R_PPC64_DTPMOD64 68 /* doubleword64 (sym+add)@dtpmod. */
+-#define R_PPC64_TPREL16 69 /* half16* (sym+add)@tprel. */
+-#define R_PPC64_TPREL16_LO 60 /* half16 (sym+add)@tprel@l. */
+-#define R_PPC64_TPREL16_HI 71 /* half16 (sym+add)@tprel@h. */
+-#define R_PPC64_TPREL16_HA 72 /* half16 (sym+add)@tprel@ha. */
+-#define R_PPC64_TPREL64 73 /* doubleword64 (sym+add)@tprel. */
+-#define R_PPC64_DTPREL16 74 /* half16* (sym+add)@dtprel. */
+-#define R_PPC64_DTPREL16_LO 75 /* half16 (sym+add)@dtprel@l. */
+-#define R_PPC64_DTPREL16_HI 76 /* half16 (sym+add)@dtprel@h. */
+-#define R_PPC64_DTPREL16_HA 77 /* half16 (sym+add)@dtprel@ha. */
+-#define R_PPC64_DTPREL64 78 /* doubleword64 (sym+add)@dtprel. */
+-#define R_PPC64_GOT_TLSGD16 79 /* half16* (sym+add)@got@tlsgd. */
+-#define R_PPC64_GOT_TLSGD16_LO 80 /* half16 (sym+add)@got@tlsgd@l. */
+-#define R_PPC64_GOT_TLSGD16_HI 81 /* half16 (sym+add)@got@tlsgd@h. */
+-#define R_PPC64_GOT_TLSGD16_HA 82 /* half16 (sym+add)@got@tlsgd@ha. */
+-#define R_PPC64_GOT_TLSLD16 83 /* half16* (sym+add)@got@tlsld. */
+-#define R_PPC64_GOT_TLSLD16_LO 84 /* half16 (sym+add)@got@tlsld@l. */
+-#define R_PPC64_GOT_TLSLD16_HI 85 /* half16 (sym+add)@got@tlsld@h. */
+-#define R_PPC64_GOT_TLSLD16_HA 86 /* half16 (sym+add)@got@tlsld@ha. */
+-#define R_PPC64_GOT_TPREL16_DS 87 /* half16ds* (sym+add)@got@tprel. */
+-#define R_PPC64_GOT_TPREL16_LO_DS 88 /* half16ds (sym+add)@got@tprel@l. */
+-#define R_PPC64_GOT_TPREL16_HI 89 /* half16 (sym+add)@got@tprel@h. */
+-#define R_PPC64_GOT_TPREL16_HA 90 /* half16 (sym+add)@got@tprel@ha. */
+-#define R_PPC64_GOT_DTPREL16_DS 91 /* half16ds* (sym+add)@got@dtprel. */
+-#define R_PPC64_GOT_DTPREL16_LO_DS 92 /* half16ds (sym+add)@got@dtprel@l. */
+-#define R_PPC64_GOT_DTPREL16_HI 93 /* half16 (sym+add)@got@dtprel@h. */
+-#define R_PPC64_GOT_DTPREL16_HA 94 /* half16 (sym+add)@got@dtprel@ha. */
+-#define R_PPC64_TPREL16_DS 95 /* half16ds* (sym+add)@tprel. */
+-#define R_PPC64_TPREL16_LO_DS 96 /* half16ds (sym+add)@tprel@l. */
+-#define R_PPC64_TPREL16_HIGHER 97 /* half16 (sym+add)@tprel@higher. */
+-#define R_PPC64_TPREL16_HIGHERA 98 /* half16 (sym+add)@tprel@highera. */
+-#define R_PPC64_TPREL16_HIGHEST 99 /* half16 (sym+add)@tprel@highest. */
+-#define R_PPC64_TPREL16_HIGHESTA 100 /* half16 (sym+add)@tprel@highesta. */
+-#define R_PPC64_DTPREL16_DS 101 /* half16ds* (sym+add)@dtprel. */
+-#define R_PPC64_DTPREL16_LO_DS 102 /* half16ds (sym+add)@dtprel@l. */
+-#define R_PPC64_DTPREL16_HIGHER 103 /* half16 (sym+add)@dtprel@higher. */
+-#define R_PPC64_DTPREL16_HIGHERA 104 /* half16 (sym+add)@dtprel@highera. */
+-#define R_PPC64_DTPREL16_HIGHEST 105 /* half16 (sym+add)@dtprel@highest. */
+-#define R_PPC64_DTPREL16_HIGHESTA 106 /* half16 (sym+add)@dtprel@highesta. */
++#define R_PPC64_TLS 67 /* none (sym+add)@tls */
++#define R_PPC64_DTPMOD64 68 /* doubleword64 (sym+add)@dtpmod */
++#define R_PPC64_TPREL16 69 /* half16* (sym+add)@tprel */
++#define R_PPC64_TPREL16_LO 70 /* half16 (sym+add)@tprel@l */
++#define R_PPC64_TPREL16_HI 71 /* half16 (sym+add)@tprel@h */
++#define R_PPC64_TPREL16_HA 72 /* half16 (sym+add)@tprel@ha */
++#define R_PPC64_TPREL64 73 /* doubleword64 (sym+add)@tprel */
++#define R_PPC64_DTPREL16 74 /* half16* (sym+add)@dtprel */
++#define R_PPC64_DTPREL16_LO 75 /* half16 (sym+add)@dtprel@l */
++#define R_PPC64_DTPREL16_HI 76 /* half16 (sym+add)@dtprel@h */
++#define R_PPC64_DTPREL16_HA 77 /* half16 (sym+add)@dtprel@ha */
++#define R_PPC64_DTPREL64 78 /* doubleword64 (sym+add)@dtprel */
++#define R_PPC64_GOT_TLSGD16 79 /* half16* (sym+add)@got@tlsgd */
++#define R_PPC64_GOT_TLSGD16_LO 80 /* half16 (sym+add)@got@tlsgd@l */
++#define R_PPC64_GOT_TLSGD16_HI 81 /* half16 (sym+add)@got@tlsgd@h */
++#define R_PPC64_GOT_TLSGD16_HA 82 /* half16 (sym+add)@got@tlsgd@ha */
++#define R_PPC64_GOT_TLSLD16 83 /* half16* (sym+add)@got@tlsld */
++#define R_PPC64_GOT_TLSLD16_LO 84 /* half16 (sym+add)@got@tlsld@l */
++#define R_PPC64_GOT_TLSLD16_HI 85 /* half16 (sym+add)@got@tlsld@h */
++#define R_PPC64_GOT_TLSLD16_HA 86 /* half16 (sym+add)@got@tlsld@ha */
++#define R_PPC64_GOT_TPREL16_DS 87 /* half16ds* (sym+add)@got@tprel */
++#define R_PPC64_GOT_TPREL16_LO_DS 88 /* half16ds (sym+add)@got@tprel@l */
++#define R_PPC64_GOT_TPREL16_HI 89 /* half16 (sym+add)@got@tprel@h */
++#define R_PPC64_GOT_TPREL16_HA 90 /* half16 (sym+add)@got@tprel@ha */
++#define R_PPC64_GOT_DTPREL16_DS 91 /* half16ds* (sym+add)@got@dtprel */
++#define R_PPC64_GOT_DTPREL16_LO_DS 92 /* half16ds (sym+add)@got@dtprel@l */
++#define R_PPC64_GOT_DTPREL16_HI 93 /* half16 (sym+add)@got@dtprel@h */
++#define R_PPC64_GOT_DTPREL16_HA 94 /* half16 (sym+add)@got@dtprel@ha */
++#define R_PPC64_TPREL16_DS 95 /* half16ds* (sym+add)@tprel */
++#define R_PPC64_TPREL16_LO_DS 96 /* half16ds (sym+add)@tprel@l */
++#define R_PPC64_TPREL16_HIGHER 97 /* half16 (sym+add)@tprel@higher */
++#define R_PPC64_TPREL16_HIGHERA 98 /* half16 (sym+add)@tprel@highera */
++#define R_PPC64_TPREL16_HIGHEST 99 /* half16 (sym+add)@tprel@highest */
++#define R_PPC64_TPREL16_HIGHESTA 100 /* half16 (sym+add)@tprel@highesta */
++#define R_PPC64_DTPREL16_DS 101 /* half16ds* (sym+add)@dtprel */
++#define R_PPC64_DTPREL16_LO_DS 102 /* half16ds (sym+add)@dtprel@l */
++#define R_PPC64_DTPREL16_HIGHER 103 /* half16 (sym+add)@dtprel@higher */
++#define R_PPC64_DTPREL16_HIGHERA 104 /* half16 (sym+add)@dtprel@highera */
++#define R_PPC64_DTPREL16_HIGHEST 105 /* half16 (sym+add)@dtprel@highest */
++#define R_PPC64_DTPREL16_HIGHESTA 106 /* half16 (sym+add)@dtprel@highesta */
++
+ /* Keep this the last entry. */
+ #define R_PPC64_NUM 107
+
+-/* The remaining relocs are from the Embedded ELF ABI, and are not
+- in the SVR4 ELF ABI. */
+-#define R_PPC_EMB_NADDR32 101
+-#define R_PPC_EMB_NADDR16 102
+-#define R_PPC_EMB_NADDR16_LO 103
+-#define R_PPC_EMB_NADDR16_HI 104
+-#define R_PPC_EMB_NADDR16_HA 105
+-#define R_PPC_EMB_SDAI16 106
+-#define R_PPC_EMB_SDA2I16 107
+-#define R_PPC_EMB_SDA2REL 108
+-#define R_PPC_EMB_SDA21 109 /* 16 bit offset in SDA */
+-#define R_PPC_EMB_MRKREF 110
+-#define R_PPC_EMB_RELSEC16 111
+-#define R_PPC_EMB_RELST_LO 112
+-#define R_PPC_EMB_RELST_HI 113
+-#define R_PPC_EMB_RELST_HA 114
+-#define R_PPC_EMB_BIT_FLD 115
+-#define R_PPC_EMB_RELSDA 116 /* 16 bit relative offset in SDA */
+-
+-/* Diab tool relocations. */
+-#define R_PPC_DIAB_SDA21_LO 180 /* like EMB_SDA21, but lower 16 bit */
+-#define R_PPC_DIAB_SDA21_HI 181 /* like EMB_SDA21, but high 16 bit */
+-#define R_PPC_DIAB_SDA21_HA 182 /* like EMB_SDA21, adjusted high 16 */
+-#define R_PPC_DIAB_RELSDA_LO 183 /* like EMB_RELSDA, but lower 16 bit */
+-#define R_PPC_DIAB_RELSDA_HI 184 /* like EMB_RELSDA, but high 16 bit */
+-#define R_PPC_DIAB_RELSDA_HA 185 /* like EMB_RELSDA, adjusted high 16 */
+-
+-/* This is a phony reloc to handle any old fashioned TOC16 references
+- that may still be in object files. */
+-#define R_PPC_TOC16 255
+-
+ /* PowerPC64 specific values for the Dyn d_tag field. */
+ #define DT_PPC64_GLINK (DT_LOPROC + 0)
+ #define DT_PPC64_NUM 1
++
+
+ /* ARM specific declarations */
+
+diff -u -udbrN glibc-2.3.2/elf/rtld.c glibc-2.3.2-200304020432/elf/rtld.c
+--- glibc-2.3.2/elf/rtld.c Tue Jan 7 19:47:35 2003
++++ glibc-2.3.2-200304020432/elf/rtld.c Fri Mar 14 06:34:36 2003
+@@ -1444,6 +1444,7 @@
+ _dl_printf ("\nprelink checking: %s\n", prelinked ? "ok" : "failed");
+ }
+
++#if ! ELF_MACHINE_NO_RELA /* We don't REL-only prelink. */
+ if (prelinked)
+ {
+ struct link_map *l;
+@@ -1476,6 +1477,7 @@
+ _dl_sysdep_start_cleanup ();
+ }
+ else
++#endif
+ {
+ /* Now we have all the objects loaded. Relocate them all except for
+ the dynamic linker itself. We do this in reverse order so that copy
+diff -u -udbrN glibc-2.3.2/elf/tls-macros.h glibc-2.3.2-200304020432/elf/tls-macros.h
+--- glibc-2.3.2/elf/tls-macros.h Wed Feb 26 00:40:08 2003
++++ glibc-2.3.2-200304020432/elf/tls-macros.h Tue Apr 1 22:10:05 2003
+@@ -316,13 +316,14 @@
+
+ # define TLS_IE(x) \
+ ({ void *__l; \
++ register long __gp asm ("gp"); \
+ asm (";;\n\t" \
+ "addl r16=@ltoff(@tprel(" #x ")),gp\n\t" \
+ ";;\n\t" \
+ "ld8 r17=[r16]\n\t" \
+ ";;\n\t" \
+ "add %0=r13,r17\n\t" \
+- : "=r" (__l) : : "r16", "r17" ); __l; })
++ : "=r" (__l) : "r" (__gp) : "r16", "r17" ); __l; })
+
+ # define __TLS_CALL_CLOBBERS \
+ "r2", "r3", "r8", "r9", "r10", "r11", "r14", "r15", "r16", "r17", \
+@@ -335,6 +336,7 @@
+
+ # define TLS_LD(x) \
+ ({ void *__l; \
++ register long __gp asm ("gp"); \
+ asm (";;\n\t" \
+ "mov loc0=gp\n\t" \
+ "addl r16=@ltoff(@dtpmod(" #x ")),gp\n\t" \
+@@ -345,11 +347,12 @@
+ ";;\n\t" \
+ "mov gp=loc0\n\t" \
+ "mov %0=r8\n\t" \
+- : "=r" (__l) : : "loc0", __TLS_CALL_CLOBBERS); \
++ : "=r" (__l) : "r" (__gp) : "loc0", __TLS_CALL_CLOBBERS); \
+ __l; })
+
+ # define TLS_GD(x) \
+ ({ void *__l; \
++ register long __gp asm ("gp"); \
+ asm (";;\n\t" \
+ "mov loc0=gp\n\t" \
+ "addl r16=@ltoff(@dtpmod(" #x ")),gp\n\t" \
+@@ -361,7 +364,7 @@
+ ";;\n\t" \
+ "mov gp=loc0\n\t" \
+ "mov %0=r8\n\t" \
+- : "=r" (__l) : : "loc0", __TLS_CALL_CLOBBERS); \
++ : "=r" (__l) : "r" (__gp) : "loc0", __TLS_CALL_CLOBBERS); \
+ __l; })
+
+ #elif defined __sparc__ && !defined __arch64__
+@@ -622,6 +625,53 @@
+ : "=&a" (__offset) : : "cc", "0", "1", "2", "3", "4", "5", "12" ); \
+ (int *) (__builtin_thread_pointer() + __offset); })
+ # endif
++
++#elif defined __powerpc__ && !defined __powerpc64__
++
++# define __TLS_CALL_CLOBBERS \
++ "0", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", \
++ "lr", "ctr", "cr0", "cr1", "cr5", "cr6", "cr7"
++
++/* PowerPC32 Local Exec TLS access. */
++# define TLS_LE(x) \
++ ({ int *__result; \
++ asm ("addi %0,2," #x "@tprel" \
++ : "=r" (__result)); \
++ __result; })
++
++/* PowerPC32 Initial Exec TLS access. */
++# define TLS_IE(x) \
++ ({ int *__result; \
++ asm ("bl _GLOBAL_OFFSET_TABLE_@local-4\n\t" \
++ "mflr %0\n\t" \
++ "lwz %0," #x "@got@tprel(%0)\n\t" \
++ "add %0,%0," #x "@tls" \
++ : "=b" (__result) : \
++ : "lr"); \
++ __result; })
++
++/* PowerPC32 Local Dynamic TLS access. */
++# define TLS_LD(x) \
++ ({ int *__result; \
++ asm ("bl _GLOBAL_OFFSET_TABLE_@local-4\n\t" \
++ "mflr 3\n\t" \
++ "addi 3,3," #x "@got@tlsld\n\t" \
++ "bl __tls_get_addr@plt\n\t" \
++ "addi %0,3," #x "@dtprel" \
++ : "=r" (__result) : \
++ : __TLS_CALL_CLOBBERS); \
++ __result; })
++
++/* PowerPC32 General Dynamic TLS access. */
++# define TLS_GD(x) \
++ ({ register int *__result __asm__ ("r3"); \
++ asm ("bl _GLOBAL_OFFSET_TABLE_@local-4\n\t" \
++ "mflr 3\n\t" \
++ "addi 3,3," #x "@got@tlsgd\n\t" \
++ "bl __tls_get_addr@plt" \
++ : : \
++ : __TLS_CALL_CLOBBERS); \
++ __result; })
+
+ #elif defined __powerpc__ && defined __powerpc64__
+
+diff -u -udbrN glibc-2.3.2/elf/vismain.c glibc-2.3.2-200304020432/elf/vismain.c
+--- glibc-2.3.2/elf/vismain.c Sat Jul 7 21:20:53 2001
++++ glibc-2.3.2-200304020432/elf/vismain.c Sat Mar 29 07:49:46 2003
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 2000 Free Software Foundation, Inc.
++/* Copyright (C) 2000, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -86,7 +86,8 @@
+ first DSO. */
+ if (protinmod != getinmod1 ())
+ {
+- puts ("`protinmod' in main and mod1 don't have same address");
++ printf ("&protinmod in main (%p) != &protinmod in mod1 (%p)\n",
++ protinmod, getinmod1 ());
+ res = 1;
+ }
+ if (protinmod == getinmod2 ())
+@@ -116,7 +117,8 @@
+ one intercepts the references from the main object. */
+ if (protitcpt != getitcpt3 ())
+ {
+- puts ("`protitcpt' in main and mod3 don't have same address");
++ printf ("&protitcpt in main (%p) != &protitcpt in mod3 (%p)\n",
++ &protitcpt, getitcpt3 ());
+ res = 1;
+ }
+ if (protitcpt == getitcpt1 ())
+@@ -150,12 +152,12 @@
+
+ /* Now look at variables. First a variable which is available
+ everywhere. We must have three different addresses. */
+- if (protvarlocal == getvarlocal1 ())
++ if (&protvarlocal == getvarlocal1 ())
+ {
+ puts ("`protvarlocal' in main and mod1 have same address");
+ res = 1;
+ }
+- if (protvarlocal == getvarlocal2 ())
++ if (&protvarlocal == getvarlocal2 ())
+ {
+ puts ("`protvarlocal' in main and mod2 have same address");
+ res = 1;
+@@ -170,54 +172,58 @@
+ puts ("`protvarlocal in main has wrong value");
+ res = 1;
+ }
+- if (strcmp (getvarlocal1 (), "vismod1.c") != 0)
++ if (strcmp (*getvarlocal1 (), "vismod1.c") != 0)
+ {
+ puts ("`getvarlocal1' returns wrong value");
+ res = 1;
+ }
+- if (strcmp (getvarlocal2 (), "vismod2.c") != 0)
++ if (strcmp (*getvarlocal2 (), "vismod2.c") != 0)
+ {
+ puts ("`getvarlocal2' returns wrong value");
+ res = 1;
+ }
+
+ /* Now the case where there is no local definition. */
+- if (protvarinmod != getvarinmod1 ())
++ if (&protvarinmod != getvarinmod1 ())
+ {
+- puts ("`protvarinmod' in main and mod1 have not same address");
+- res = 1;
++ printf ("&protvarinmod in main (%p) != &protitcpt in mod1 (%p)\n",
++ &protvarinmod, getvarinmod1 ());
++ // XXX Possibly enable once fixed.
++ // res = 1;
+ }
+- if (protvarinmod == getvarinmod2 ())
++ if (&protvarinmod == getvarinmod2 ())
+ {
+ puts ("`protvarinmod' in main and mod2 have same address");
+ res = 1;
+ }
+- if (strcmp (getvarinmod1 (), "vismod1.c") != 0)
++ if (strcmp (*getvarinmod1 (), "vismod1.c") != 0)
+ {
+ puts ("`getvarinmod1' returns wrong value");
+ res = 1;
+ }
+- if (strcmp (getvarinmod2 (), "vismod2.c") != 0)
++ if (strcmp (*getvarinmod2 (), "vismod2.c") != 0)
+ {
+ puts ("`getvarinmod2' returns wrong value");
+ res = 1;
+ }
+
+ /* And a test where a variable definition is intercepted. */
+- if (protvaritcpt == getvaritcpt1 ())
++ if (&protvaritcpt == getvaritcpt1 ())
+ {
+ puts ("`protvaritcpt' in main and mod1 have same address");
+ res = 1;
+ }
+- if (protvaritcpt == getvaritcpt2 ())
++ if (&protvaritcpt == getvaritcpt2 ())
+ {
+ puts ("`protvaritcpt' in main and mod2 have same address");
+ res = 1;
+ }
+- if (protvaritcpt != getvaritcpt3 ())
++ if (&protvaritcpt != getvaritcpt3 ())
+ {
+- puts ("`protvaritcpt' in main and mod3 have not same address");
+- res = 1;
++ printf ("&protvaritcpt in main (%p) != &protvaritcpt in mod3 (%p)\n",
++ &protvaritcpt, getvaritcpt3 ());
++ // XXX Possibly enable once fixed.
++ // res = 1;
+ }
+ if (getvaritcpt1 () == getvaritcpt2 ())
+ {
+@@ -229,12 +235,12 @@
+ puts ("`protvaritcpt in main has wrong value");
+ res = 1;
+ }
+- if (strcmp (getvaritcpt1 (), "vismod1.c") != 0)
++ if (strcmp (*getvaritcpt1 (), "vismod1.c") != 0)
+ {
+ puts ("`getvaritcpt1' returns wrong value");
+ res = 1;
+ }
+- if (strcmp (getvaritcpt2 (), "vismod2.c") != 0)
++ if (strcmp (*getvaritcpt2 (), "vismod2.c") != 0)
+ {
+ puts ("`getvaritcpt2' returns wrong value");
+ res = 1;
+diff -u -udbrN glibc-2.3.2/elf/vismod.h glibc-2.3.2-200304020432/elf/vismod.h
+--- glibc-2.3.2/elf/vismod.h Sun Dec 17 18:07:45 2000
++++ glibc-2.3.2-200304020432/elf/vismod.h Sat Mar 29 04:46:03 2003
+@@ -5,21 +5,21 @@
+ extern int (*getinmod1 (void)) (void);
+ extern int callitcpt1 (void);
+ extern int (*getitcpt1 (void)) (void);
+-extern const char *getvarlocal1 (void);
+-extern const char *getvarinmod1 (void);
+-extern const char *getvaritcpt1 (void);
++extern const char **getvarlocal1 (void);
++extern const char **getvarinmod1 (void);
++extern const char **getvaritcpt1 (void);
+ extern int calllocal2 (void);
+ extern int (*getlocal2 (void)) (void);
+ extern int callinmod2 (void);
+ extern int (*getinmod2 (void)) (void);
+ extern int callitcpt2 (void);
+ extern int (*getitcpt2 (void)) (void);
+-extern const char *getvarlocal2 (void);
+-extern const char *getvarinmod2 (void);
+-extern const char *getvaritcpt2 (void);
++extern const char **getvarlocal2 (void);
++extern const char **getvarinmod2 (void);
++extern const char **getvaritcpt2 (void);
+ extern int callitcpt3 (void);
+ extern int (*getitcpt3 (void)) (void);
+-extern const char *getvaritcpt3 (void);
++extern const char **getvaritcpt3 (void);
+
+ extern int protinmod (void);
+ extern int protitcpt (void);
+diff -u -udbrN glibc-2.3.2/elf/vismod1.c glibc-2.3.2-200304020432/elf/vismod1.c
+--- glibc-2.3.2/elf/vismod1.c Sat Jul 7 21:20:53 2001
++++ glibc-2.3.2-200304020432/elf/vismod1.c Sat Mar 29 04:46:03 2003
+@@ -79,26 +79,26 @@
+ const char *protvarlocal = __FILE__;
+ asm (".protected protvarlocal");
+
+-const char *
++const char **
+ getvarlocal1 (void)
+ {
+- return protvarlocal;
++ return &protvarlocal;
+ }
+
+ const char *protvarinmod = __FILE__;
+ asm (".protected protvarinmod");
+
+-const char *
++const char **
+ getvarinmod1 (void)
+ {
+- return protvarinmod;
++ return &protvarinmod;
+ }
+
+ const char *protvaritcpt = __FILE__;
+ asm (".protected protvaritcpt");
+
+-const char *
++const char **
+ getvaritcpt1 (void)
+ {
+- return protvaritcpt;
++ return &protvaritcpt;
+ }
+diff -u -udbrN glibc-2.3.2/elf/vismod2.c glibc-2.3.2-200304020432/elf/vismod2.c
+--- glibc-2.3.2/elf/vismod2.c Sat Jul 7 21:20:53 2001
++++ glibc-2.3.2-200304020432/elf/vismod2.c Sat Mar 29 04:46:03 2003
+@@ -80,28 +80,28 @@
+ const char *protvarlocal = __FILE__;
+ asm (".protected protvarlocal");
+
+-const char *
++const char **
+ getvarlocal2 (void)
+ {
+- return protvarlocal;
++ return &protvarlocal;
+ }
+
+ const char *protvarinmod = __FILE__;
+ asm (".protected protvarinmod");
+
+-const char *
++const char **
+ getvarinmod2 (void)
+ {
+- return protvarinmod;
++ return &protvarinmod;
+ }
+
+ const char *protvaritcpt = __FILE__;
+ asm (".protected protvaritcpt");
+
+-const char *
++const char **
+ getvaritcpt2 (void)
+ {
+- return protvaritcpt;
++ return &protvaritcpt;
+ }
+
+ /* We must never call these functions. */
+@@ -117,7 +117,7 @@
+ abort ();
+ }
+
+-const char *
++const char **
+ getvaritcpt3 (void)
+ {
+ abort ();
+diff -u -udbrN glibc-2.3.2/elf/vismod3.c glibc-2.3.2-200304020432/elf/vismod3.c
+--- glibc-2.3.2/elf/vismod3.c Sat Jul 7 21:20:53 2001
++++ glibc-2.3.2-200304020432/elf/vismod3.c Sat Mar 29 04:46:03 2003
+@@ -40,8 +40,8 @@
+ const char *protvaritcpt = __FILE__;
+ asm (".protected protvaritcpt");
+
+-const char *
++const char **
+ getvaritcpt3 (void)
+ {
+- return protvaritcpt;
++ return &protvaritcpt;
+ }
+diff -u -udbrN glibc-2.3.2/gmon/gmon.c glibc-2.3.2-200304020432/gmon/gmon.c
+--- glibc-2.3.2/gmon/gmon.c Wed Jan 8 04:49:47 2003
++++ glibc-2.3.2-200304020432/gmon/gmon.c Sun Mar 16 04:22:23 2003
+@@ -213,7 +213,7 @@
+ struct gmon_cg_arc_record raw_arc[NARCS_PER_WRITEV]
+ __attribute__ ((aligned (__alignof__ (char*))));
+ ARCINDEX from_index, to_index;
+- int from_len;
++ u_long from_len;
+ u_long frompc;
+ struct iovec iov[2 * NARCS_PER_WRITEV];
+ int nfilled;
+diff -u -udbrN glibc-2.3.2/gmon/mcount.c glibc-2.3.2-200304020432/gmon/mcount.c
+--- glibc-2.3.2/gmon/mcount.c Thu Aug 29 11:25:51 2002
++++ glibc-2.3.2-200304020432/gmon/mcount.c Fri Mar 21 08:45:54 2003
+@@ -39,7 +39,7 @@
+ and MCOUNT macros. */
+ #include "machine-gmon.h"
+
+-#include <atomicity.h>
++#include <atomic.h>
+
+ /*
+ * mcount is called on entry to each function compiled with the profiling
+@@ -69,7 +69,8 @@
+ * check that we are profiling
+ * and that we aren't recursively invoked.
+ */
+- if (! compare_and_swap (&p->state, GMON_PROF_ON, GMON_PROF_BUSY))
++ if (atomic_compare_and_exchange_bool_acq (&p->state, GMON_PROF_BUSY,
++ GMON_PROF_ON))
+ return;
+
+ /*
+diff -u -udbrN glibc-2.3.2/iconvdata/Makefile glibc-2.3.2-200304020432/iconvdata/Makefile
+--- glibc-2.3.2/iconvdata/Makefile Sat Feb 22 02:01:16 2003
++++ glibc-2.3.2-200304020432/iconvdata/Makefile Wed Mar 26 09:11:21 2003
+@@ -58,7 +58,7 @@
+ include ../Makeconfig
+
+ ifeq (yes,$(build-shared))
+-tests = bug-iconv1 bug-iconv2 tst-loading tst-e2big tst-iconv4
++tests = bug-iconv1 bug-iconv2 tst-loading tst-e2big tst-iconv4 bug-iconv4
+ ifeq ($(have-thread-library),yes)
+ tests += bug-iconv3
+ endif
+diff -u -udbrN glibc-2.3.2/iconvdata/bug-iconv4.c glibc-2.3.2-200304020432/iconvdata/bug-iconv4.c
+--- glibc-2.3.2/iconvdata/bug-iconv4.c Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/iconvdata/bug-iconv4.c Wed Mar 26 09:10:58 2003
+@@ -0,0 +1,78 @@
++/* Contributed by Jiro SEKIBA <jir@yamato.ibm.com>. */
++#include <errno.h>
++#include <iconv.h>
++#include <stdbool.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++
++#define UCS_STR "\x4e\x8c" /* EUC-TW 0xa2a2, EUC-JP 0x */
++
++static const char *to_code;
++
++static bool
++xiconv (iconv_t cd, int out_size)
++{
++ unsigned char euc[4];
++ char *inp = (char *) UCS_STR;
++ char *outp = euc;
++ size_t inbytesleft = strlen (UCS_STR);
++ size_t outbytesleft = out_size;
++ size_t ret;
++ bool fail = false;
++
++ errno = 0;
++ ret = iconv (cd, &inp, &inbytesleft, &outp, &outbytesleft);
++ if (errno || ret == (size_t) -1)
++ {
++ fail = out_size == 4 || errno != E2BIG;
++ printf ("expected %d (E2BIG), got %d (%m)\n", E2BIG, errno);
++ }
++ else
++ {
++ printf ("%s: 0x%02x%02x\n", to_code, euc[0], euc[1]);
++ if (out_size == 1)
++ fail = true;
++ }
++
++ return fail;
++}
++
++
++static iconv_t
++xiconv_open (const char *code)
++{
++ iconv_t cd;
++ to_code = code;
++ errno = 0;
++ if (errno || (cd = iconv_open (to_code, "UCS-2BE")) == (iconv_t) -1)
++ {
++ puts ("Can't open converter");
++ exit (1);
++ }
++ return cd;
++}
++
++
++int
++main (void)
++{
++ iconv_t cd;
++ int result = 0;
++
++ cd = xiconv_open ("EUC-TW");
++ result |= xiconv (cd, 4) == true;
++ puts ("---");
++ result |= xiconv (cd, 1) == true;
++ puts ("---");
++ iconv_close (cd);
++
++ cd = xiconv_open ("EUC-JP");
++ result |= xiconv (cd, 4) == true;
++ puts ("---");
++ result |= xiconv (cd, 1) == true;
++ puts ("---");
++ iconv_close (cd);
++
++ return result;
++}
+diff -u -udbrN glibc-2.3.2/iconvdata/euc-tw.c glibc-2.3.2-200304020432/iconvdata/euc-tw.c
+--- glibc-2.3.2/iconvdata/euc-tw.c Mon Dec 2 22:26:10 2002
++++ glibc-2.3.2-200304020432/iconvdata/euc-tw.c Wed Mar 26 08:58:49 2003
+@@ -1,5 +1,5 @@
+ /* Mapping tables for EUC-TW handling.
+- Copyright (C) 1998, 1999, 2000-2002 Free Software Foundation, Inc.
++ Copyright (C) 1998, 1999, 2000-2002, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
+
+@@ -143,7 +143,7 @@
+ if (__builtin_expect (found, 1) == 0) \
+ { \
+ /* We ran out of space. */ \
+- result = __GCONV_INCOMPLETE_INPUT; \
++ result = __GCONV_FULL_OUTPUT; \
+ break; \
+ } \
+ if (__builtin_expect (found, 1) != __UNKNOWN_10646_CHAR) \
+@@ -160,7 +160,7 @@
+ if (__builtin_expect (found, 1) == 0) \
+ { \
+ /* We ran out of space. */ \
+- result = __GCONV_INCOMPLETE_INPUT; \
++ result = __GCONV_FULL_OUTPUT; \
+ break; \
+ } \
+ if (__builtin_expect (found, 0) == __UNKNOWN_10646_CHAR) \
+diff -u -udbrN glibc-2.3.2/iconvdata/testdata/IBM1160.~1~ glibc-2.3.2-200304020432/iconvdata/testdata/IBM1160.~1~
+--- glibc-2.3.2/iconvdata/testdata/IBM1160.~1~ Thu Sep 20 07:06:15 2001
++++ glibc-2.3.2-200304020432/iconvdata/testdata/IBM1160.~1~ Thu Jan 1 01:00:00 1970
+@@ -1,14 +0,0 @@
+- ! " # $ % & ' ( ) * + , - . / 0
+-1 2 3 4 5 6 7 8 9 : ; < = > ? @ A
+-B C D E F G H I J K L M N O P Q R
+-S T U V W X Y Z [ \ ] ^ _ ` a b c
+-d e f g h i j k l m n o p q r s t
+-u v w x y z { | } ~ 
+-
+-
+-
+-
+-
+-
+-
+-
+diff -u -udbrN glibc-2.3.2/include/atomic.h glibc-2.3.2-200304020432/include/atomic.h
+--- glibc-2.3.2/include/atomic.h Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/include/atomic.h Wed Mar 26 05:01:47 2003
+@@ -0,0 +1,242 @@
++/* Internal macros for atomic operations for GNU C Library.
++ Copyright (C) 2002, 2003 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++ Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, write to the Free
++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++ 02111-1307 USA. */
++
++#ifndef _ATOMIC_H
++#define _ATOMIC_H 1
++
++#include <stdlib.h>
++
++#include <bits/atomic.h>
++
++/* Wrapper macros to call pre_NN_post (mem, ...) where NN is the
++ bit width of *MEM. The calling macro puts parens around MEM
++ and following args. */
++#define __atomic_val_bysize(pre, post, mem, ...) \
++ ({ \
++ __typeof (*mem) __result; \
++ if (sizeof (*mem) == 1) \
++ __result = pre##_8_##post (mem, __VA_ARGS__); \
++ else if (sizeof (*mem) == 2) \
++ __result = pre##_16_##post (mem, __VA_ARGS__); \
++ else if (sizeof (*mem) == 4) \
++ __result = pre##_32_##post (mem, __VA_ARGS__); \
++ else if (sizeof (*mem) == 8) \
++ __result = pre##_64_##post (mem, __VA_ARGS__); \
++ else \
++ abort (); \
++ __result; \
++ })
++#define __atomic_bool_bysize(pre, post, mem, ...) \
++ ({ \
++ int __result; \
++ if (sizeof (*mem) == 1) \
++ __result = pre##_8_##post (mem, __VA_ARGS__); \
++ else if (sizeof (*mem) == 2) \
++ __result = pre##_16_##post (mem, __VA_ARGS__); \
++ else if (sizeof (*mem) == 4) \
++ __result = pre##_32_##post (mem, __VA_ARGS__); \
++ else if (sizeof (*mem) == 8) \
++ __result = pre##_64_##post (mem, __VA_ARGS__); \
++ else \
++ abort (); \
++ __result; \
++ })
++
++
++/* Atomically store NEWVAL in *MEM if *MEM is equal to OLDVAL.
++ Return the old *MEM value. */
++#if !defined atomic_compare_and_exchange_val_acq \
++ && defined __arch_compare_and_exchange_val_32_acq
++# define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \
++ __atomic_val_bysize (__arch_compare_and_exchange_val,acq, \
++ (mem), (newval), (oldval))
++#endif
++
++
++#ifndef atomic_compare_and_exchange_val_rel
++# define atomic_compare_and_exchange_val_rel(mem, oldval, newval) \
++ atomic_compare_and_exchange_val_acq ((mem), (oldval), (newval))
++#endif
++
++
++/* Atomically store NEWVAL in *MEM if *MEM is equal to OLDVAL.
++ Return zero if *MEM was changed or non-zero if no exchange happened. */
++#ifndef atomic_compare_and_exchange_bool_acq
++# ifdef __arch_compare_and_exchange_bool_32_acq
++# define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \
++ __atomic_bool_bysize (__arch_compare_and_exchange_bool,acq, \
++ (mem), (newval), (oldval))
++# else
++# define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \
++ ({ /* Cannot use __oldval here, because macros later in this file might \
++ call this macro with __oldval argument. */ \
++ __typeof (oldval) __old = (oldval); \
++ atomic_compare_and_exchange_val_acq ((mem), (newval), __old) != __old; \
++ })
++# endif
++#endif
++
++
++#ifndef atomic_compare_and_exchange_bool_rel
++# define atomic_compare_and_exchange_bool_rel(mem, oldval, newval) \
++ atomic_compare_and_exchange_bool_acq ((mem), (oldval), (newval))
++#endif
++
++
++/* Store NEWVALUE in *MEM and return the old value. */
++#ifndef atomic_exchange
++# define atomic_exchange(mem, newvalue) \
++ ({ __typeof (*(mem)) __oldval; \
++ __typeof (mem) __memp = (mem); \
++ __typeof (*(mem)) __value = (newvalue); \
++ \
++ do \
++ __oldval = (*__memp); \
++ while (__builtin_expect (atomic_compare_and_exchange_bool_acq (__memp, \
++ __value, \
++ __oldval),\
++ 0)); \
++ \
++ __oldval; })
++#endif
++
++
++/* Add VALUE to *MEM and return the old value of *MEM. */
++#ifndef atomic_exchange_and_add
++# define atomic_exchange_and_add(mem, value) \
++ ({ __typeof (*(mem)) __oldval; \
++ __typeof (mem) __memp = (mem); \
++ __typeof (*(mem)) __value = (value); \
++ \
++ do \
++ __oldval = (*__memp); \
++ while (__builtin_expect (atomic_compare_and_exchange_bool_acq (__memp, \
++ __oldval \
++ + __value,\
++ __oldval),\
++ 0)); \
++ \
++ __oldval; })
++#endif
++
++
++#ifndef atomic_add
++# define atomic_add(mem, value) (void) atomic_exchange_and_add ((mem), (value))
++#endif
++
++
++#ifndef atomic_increment
++# define atomic_increment(mem) atomic_add ((mem), 1)
++#endif
++
++
++/* Add one to *MEM and return true iff it's now zero. */
++#ifndef atomic_increment_and_test
++# define atomic_increment_and_test(mem) \
++ (atomic_exchange_and_add ((mem), 1) + 1 == 0)
++#endif
++
++
++#ifndef atomic_decrement
++# define atomic_decrement(mem) atomic_add ((mem), -1)
++#endif
++
++
++/* Subtract 1 from *MEM and return true iff it's now zero. */
++#ifndef atomic_decrement_and_test
++# define atomic_decrement_and_test(mem) \
++ (atomic_exchange_and_add ((mem), -1) == 1)
++#endif
++
++
++/* Decrement *MEM if it is > 0, and return the old value. */
++#ifndef atomic_decrement_if_positive
++# define atomic_decrement_if_positive(mem) \
++ ({ __typeof (*(mem)) __oldval; \
++ __typeof (mem) __memp = (mem); \
++ \
++ do \
++ { \
++ __oldval = *__memp; \
++ if (__builtin_expect (__oldval <= 0, 0)) \
++ break; \
++ } \
++ while (__builtin_expect (atomic_compare_and_exchange_bool_acq (__memp, \
++ __oldval \
++ - 1, \
++ __oldval),\
++ 0));\
++ __oldval; })
++#endif
++
++
++#ifndef atomic_add_negative
++# define atomic_add_negative(mem, value) \
++ ({ __typeof (value) __aan_value = (value); \
++ atomic_exchange_and_add ((mem), __aan_value) < -__aan_value; })
++#endif
++
++
++#ifndef atomic_add_zero
++# define atomic_add_zero(mem, value) \
++ ({ __typeof (value) __aaz_value = (value); \
++ atomic_exchange_and_add ((mem), __aaz_value) == -__aaz_value; })
++#endif
++
++
++#ifndef atomic_bit_set
++# define atomic_bit_set(mem, bit) \
++ (void) atomic_bit_test_set((mem), (bit))
++#endif
++
++
++#ifndef atomic_bit_test_set
++# define atomic_bit_test_set(mem, bit) \
++ ({ __typeof (*(mem)) __oldval; \
++ __typeof (mem) __memp = (mem); \
++ __typeof (*(mem)) __mask = ((__typeof (*(mem))) 1 << (bit)); \
++ \
++ do \
++ __oldval = (*__memp); \
++ while (__builtin_expect (atomic_compare_and_exchange_bool_acq (__memp, \
++ __oldval \
++ | __mask, \
++ __oldval),\
++ 0)); \
++ \
++ __oldval & __mask; })
++#endif
++
++
++#ifndef atomic_full_barrier
++# define atomic_full_barrier() __asm ("" ::: "memory")
++#endif
++
++
++#ifndef atomic_read_barrier
++# define atomic_read_barrier() atomic_full_barrier()
++#endif
++
++
++#ifndef atomic_write_barrier
++# define atomic_write_barrier() atomic_full_barrier()
++#endif
++
++#endif /* atomic.h */
+diff -u -udbrN glibc-2.3.2/include/dlfcn.h glibc-2.3.2-200304020432/include/dlfcn.h
+--- glibc-2.3.2/include/dlfcn.h Tue Nov 19 09:18:00 2002
++++ glibc-2.3.2-200304020432/include/dlfcn.h Mon Mar 10 10:12:11 2003
+@@ -1,5 +1,6 @@
+ #ifndef _DLFCN_H
+ #include <dlfcn/dlfcn.h>
++#include <link.h> /* For ElfW. */
+
+ /* Internally used flag. */
+ #define __RTLD_DLOPEN 0x80000000
+@@ -15,9 +16,12 @@
+ extern int __libc_dlclose (void *__map);
+
+ /* Locate shared object containing the given address. */
+-extern int _dl_addr (const void *address, Dl_info *info)
++#ifdef ElfW
++extern int _dl_addr (const void *address, Dl_info *info,
++ struct link_map **mapp, const ElfW(Sym) **symbolp)
+ internal_function;
+ libc_hidden_proto (_dl_addr)
++#endif
+
+ /* Open the shared object NAME, relocate it, and run its initializer if it
+ hasn't already been run. MODE is as for `dlopen' (see <dlfcn.h>). If
+diff -u -udbrN glibc-2.3.2/include/gmp.h glibc-2.3.2-200304020432/include/gmp.h
+--- glibc-2.3.2/include/gmp.h Tue Dec 5 18:28:08 2000
++++ glibc-2.3.2-200304020432/include/gmp.h Fri Mar 14 06:48:18 2003
+@@ -1,3 +1,7 @@
++/* Include gmp-mparam.h first, such that definitions of _SHORT_LIMB
++ and _LONG_LONG_LIMB in it can take effect into gmp.h. */
++#include <gmp-mparam.h>
++
+ #ifndef __GMP_H__
+
+ #include <stdlib/gmp.h>
+diff -u -udbrN glibc-2.3.2/include/sched.h glibc-2.3.2-200304020432/include/sched.h
+--- glibc-2.3.2/include/sched.h Thu Aug 15 07:39:03 2002
++++ glibc-2.3.2-200304020432/include/sched.h Mon Mar 3 22:32:45 2003
+@@ -18,5 +18,5 @@
+ extern int __clone (int (*__fn) (void *__arg), void *__child_stack,
+ int __flags, void *__arg, ...);
+ extern int __clone2 (int (*__fn) (void *__arg), void *__child_stack_base,
+- size_t __child_stack_size, int __flags, void *__arg);
++ size_t __child_stack_size, int __flags, void *__arg, ...);
+ #endif
+diff -u -udbrN glibc-2.3.2/inet/netinet/in.h glibc-2.3.2-200304020432/inet/netinet/in.h
+--- glibc-2.3.2/inet/netinet/in.h Sat Jul 7 21:21:03 2001
++++ glibc-2.3.2-200304020432/inet/netinet/in.h Tue Mar 25 00:52:04 2003
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1991-1999, 2000, 2001 Free Software Foundation, Inc.
++/* Copyright (C) 1991-1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -79,6 +79,8 @@
+ #define IPPROTO_PIM IPPROTO_PIM
+ IPPROTO_COMP = 108, /* Compression Header Protocol. */
+ #define IPPROTO_COMP IPPROTO_COMP
++ IPPROTO_SCTP = 132, /* Stream Control Transmission Protocol. */
++#define IPPROTO_SCTP IPPROTO_SCTP
+ IPPROTO_RAW = 255, /* Raw IP packets. */
+ #define IPPROTO_RAW IPPROTO_RAW
+ IPPROTO_MAX
+diff -u -udbrN glibc-2.3.2/inet/test-ifaddrs.c glibc-2.3.2-200304020432/inet/test-ifaddrs.c
+--- glibc-2.3.2/inet/test-ifaddrs.c Mon Dec 2 23:36:09 2002
++++ glibc-2.3.2-200304020432/inet/test-ifaddrs.c Sat Mar 29 08:25:19 2003
+@@ -69,6 +69,10 @@
+ #endif
+ case AF_UNSPEC:
+ return "---";
++
++ case AF_PACKET:
++ return "<packet>";
++
+ default:
+ ++failures;
+ printf ("sa_family=%d %08x\n", sa->sa_family,
+diff -u -udbrN glibc-2.3.2/intl/po2test.sed glibc-2.3.2-200304020432/intl/po2test.sed
+--- glibc-2.3.2/intl/po2test.sed Sat Jan 22 06:43:54 2000
++++ glibc-2.3.2-200304020432/intl/po2test.sed Sun Mar 30 23:55:45 2003
+@@ -1,5 +1,5 @@
+ # po2test.sed - Convert Uniforum style .po file to C code for testing.
+-# Copyright (C) 2000 Free Software Foundation, Inc.
++# Copyright (C) 2000,2003 Free Software Foundation, Inc.
+ # Ulrich Drepper <drepper@cygnus.com>, 2000.
+ #
+ # This program is free software; you can redistribute it and/or modify
+@@ -16,55 +16,37 @@
+ # along with this program; if not, write to the Free Software
+ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ #
++
+ #
+ # We copy the original message as a comment into the .msg file. But enclose
+ # them with INPUT ( ).
+ #
+-/^msgid/ {
+- s/msgid[ ]*"\(.*\)"/INPUT ("\1")/
+-# Clear flag from last substitution.
+- tb
+-# Append the next line.
+- :b
+- N
+-# Look whether second part is a continuation line.
+- s/\(.*\)")\(\n\)"\(.*\)"/\1\\\2\3")/
+-# Yes, then branch.
+- ta
+- P
+- D
+-# Note that `D' includes a jump to the start!!
+-# We found a continuation line. But before printing insert '\'.
+- :a
+- s/\(.*\)")\(\n.*\)/\1\\\2/
+- P
+-# We cannot use the sed command `D' here
+- s/.*\n\(.*\)/\1/
+- tb
+-}
++s/^msgid[ ]*"\(.*\)"/INPUT ("\1")/
++# Clear flag from last substitution and jump if matching
++tb
++
+ #
+ # Copy the translations as well and enclose them with OUTPUT ( ).
+ #
+-/^msgstr/ {
+- s/msgstr[ ]*"\(.*\)"/OUTPUT ("\1")/
+-# Clear flag from last substitution.
+- tb
++s/^msgstr[ ]*"\(.*\)"/OUTPUT ("\1")/
++# Clear flag from last substitution and jump if matching
++tb
++
++d
++
++:b
+ # Append the next line.
+- :b
+- N
+-# Look whether second part is a continuation line.
+- s/\(.*\)")\(\n\)"\(.*\)"/\1\\\2\3")/
+-# Yes, then branch.
+- ta
+- P
+- D
+-# Note that `D' includes a jump to the start!!
+-# We found a continuation line. But before printing insert '\'.
+- :a
+- s/\(.*\)")\(\n.*\)/\1\\\2/
+- P
++$!N
++# Check whether second part is a continuation line. If so, before printing
++# insert '\'.
++s/\(.*\)")\(\n\)"\(.*\)"/\1\\\2\3")/
++P
++ta
++# No, go to the top and process it. Note that `D' includes a jump to the start!!
++D
++# Yes, we found a continuation line.
++:a
+ # We cannot use the sed command `D' here
+- s/.*\n\(.*\)/\1/
+- tb
+-}
+-d
++s/[^\n]*\n//
++# Clear the substitution flag and do the next line.
++tb
+diff -u -udbrN glibc-2.3.2/io/fts.c glibc-2.3.2-200304020432/io/fts.c
+--- glibc-2.3.2/io/fts.c Mon Apr 8 09:02:07 2002
++++ glibc-2.3.2-200304020432/io/fts.c Sun Mar 16 02:03:52 2003
+@@ -581,8 +581,9 @@
+ FTSENT *cur, *tail;
+ DIR *dirp;
+ void *oldaddr;
+- int cderrno, descend, len, level, maxlen, nlinks, saved_errno,
++ int cderrno, descend, len, level, nlinks, saved_errno,
+ nostat, doadjust;
++ size_t maxlen;
+ char *cp;
+
+ /* Set current node pointer. */
+diff -u -udbrN glibc-2.3.2/libio/fileops.c glibc-2.3.2-200304020432/libio/fileops.c
+--- glibc-2.3.2/libio/fileops.c Wed Jan 8 06:18:32 2003
++++ glibc-2.3.2-200304020432/libio/fileops.c Thu Mar 27 12:53:59 2003
+@@ -353,6 +353,7 @@
+ /* Something went wrong, we cannot load the conversion modules.
+ This means we cannot proceed since the user explicitly asked
+ for these. */
++ (void) INTUSE(_IO_file_close_it) (fp);
+ __set_errno (EINVAL);
+ return NULL;
+ }
+@@ -456,7 +457,7 @@
+ _IO_FILE *result;
+
+ /* Change the function table. */
+- _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps);
++ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_file_jumps;
+ fp->_wide_data->_wide_vtable = &_IO_wfile_jumps;
+
+ /* And perform the normal operation. */
+@@ -708,7 +709,7 @@
+ fp->_IO_buf_base = fp->_IO_buf_end = NULL;
+ _IO_setg (fp, NULL, NULL, NULL);
+ if (fp->_mode <= 0)
+- _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps);
++ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_file_jumps;
+ else
+ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_wfile_jumps;
+ fp->_wide_data->_wide_vtable = &_IO_wfile_jumps;
+@@ -801,7 +802,7 @@
+ /* We couldn't use mmap, so revert to the vanilla file operations. */
+
+ if (fp->_mode <= 0)
+- _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps);
++ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_file_jumps;
+ else
+ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_wfile_jumps;
+ fp->_wide_data->_wide_vtable = &_IO_wfile_jumps;
+@@ -1586,7 +1587,7 @@
+ JUMP_INIT(showmanyc, _IO_default_showmanyc),
+ JUMP_INIT(imbue, _IO_default_imbue)
+ };
+-INTVARDEF(_IO_file_jumps)
++libc_hidden_data_def (_IO_file_jumps)
+
+ struct _IO_jump_t _IO_file_jumps_mmap =
+ {
+diff -u -udbrN glibc-2.3.2/libio/freopen.c glibc-2.3.2-200304020432/libio/freopen.c
+--- glibc-2.3.2/libio/freopen.c Thu Oct 3 10:11:25 2002
++++ glibc-2.3.2-200304020432/libio/freopen.c Thu Mar 27 12:53:59 2003
+@@ -1,4 +1,5 @@
+-/* Copyright (C) 1993,95,96,97,98,2000,2001,2002 Free Software Foundation, Inc.
++/* Copyright (C) 1993,95,96,97,98,2000,2001,2002,2003
++ Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -67,9 +68,9 @@
+ #endif
+ {
+ INTUSE(_IO_file_close_it) (fp);
+- _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps);
++ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_file_jumps;
+ if (fp->_vtable_offset == 0 && fp->_wide_data != NULL)
+- fp->_wide_data->_wide_vtable = &INTUSE(_IO_wfile_jumps);
++ fp->_wide_data->_wide_vtable = &_IO_wfile_jumps;
+ result = INTUSE(_IO_file_fopen) (fp, filename, mode, 1);
+ if (result != NULL)
+ result = __fopen_maybe_mmap (result);
+diff -u -udbrN glibc-2.3.2/libio/freopen64.c glibc-2.3.2-200304020432/libio/freopen64.c
+--- glibc-2.3.2/libio/freopen64.c Thu Oct 3 10:11:32 2002
++++ glibc-2.3.2-200304020432/libio/freopen64.c Thu Mar 27 12:53:59 2003
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1993,1995,1996,1997,1998,2000,2001,2002
++/* Copyright (C) 1993,1995,1996,1997,1998,2000,2001,2002, 2003
+ Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+@@ -53,9 +53,9 @@
+ filename = fd_to_filename (fd);
+ }
+ INTUSE(_IO_file_close_it) (fp);
+- _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps);
++ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_file_jumps;
+ if (fp->_vtable_offset == 0 && fp->_wide_data != NULL)
+- fp->_wide_data->_wide_vtable = &INTUSE(_IO_wfile_jumps);
++ fp->_wide_data->_wide_vtable = &_IO_wfile_jumps;
+ result = INTUSE(_IO_file_fopen) (fp, filename, mode, 0);
+ if (result != NULL)
+ result = __fopen_maybe_mmap (result);
+diff -u -udbrN glibc-2.3.2/libio/iofdopen.c glibc-2.3.2-200304020432/libio/iofdopen.c
+--- glibc-2.3.2/libio/iofdopen.c Fri Aug 30 08:56:29 2002
++++ glibc-2.3.2-200304020432/libio/iofdopen.c Thu Mar 27 12:53:59 2003
+@@ -1,4 +1,5 @@
+-/* Copyright (C) 1993,1994,1997-1999,2000,2002 Free Software Foundation, Inc.
++/* Copyright (C) 1993,1994,1997,1998,1999,2000,2002,2003
++ Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -152,12 +153,12 @@
+ (use_mmap && (read_write & _IO_NO_WRITES))
+ ? &_IO_wfile_jumps_maybe_mmap :
+ #endif
+- &INTUSE(_IO_wfile_jumps));
++ &_IO_wfile_jumps);
+ _IO_JUMPS (&new_f->fp) =
+ #ifdef _G_HAVE_MMAP
+ (use_mmap && (read_write & _IO_NO_WRITES)) ? &_IO_file_jumps_maybe_mmap :
+ #endif
+- &INTUSE(_IO_file_jumps);
++ &_IO_file_jumps;
+ INTUSE(_IO_file_init) (&new_f->fp);
+ #if !_IO_UNIFIED_JUMPTABLES
+ new_f->fp.vtable = NULL;
+diff -u -udbrN glibc-2.3.2/libio/iofopen.c glibc-2.3.2-200304020432/libio/iofopen.c
+--- glibc-2.3.2/libio/iofopen.c Fri Aug 30 08:45:05 2002
++++ glibc-2.3.2-200304020432/libio/iofopen.c Thu Mar 27 12:53:59 2003
+@@ -1,4 +1,5 @@
+-/* Copyright (C) 1993,1997,1998,1999,2000,2002 Free Software Foundation, Inc.
++/* Copyright (C) 1993,1997,1998,1999,2000,2002,2003
++ Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -80,11 +81,11 @@
+ new_f->fp.file._lock = &new_f->lock;
+ #endif
+ #if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T
+- _IO_no_init (&new_f->fp.file, 0, 0, &new_f->wd, &INTUSE(_IO_wfile_jumps));
++ _IO_no_init (&new_f->fp.file, 0, 0, &new_f->wd, &_IO_wfile_jumps);
+ #else
+ _IO_no_init (&new_f->fp.file, 1, 0, NULL, NULL);
+ #endif
+- _IO_JUMPS (&new_f->fp) = &INTUSE(_IO_file_jumps);
++ _IO_JUMPS (&new_f->fp) = &_IO_file_jumps;
+ INTUSE(_IO_file_init) (&new_f->fp);
+ #if !_IO_UNIFIED_JUMPTABLES
+ new_f->fp.vtable = NULL;
+diff -u -udbrN glibc-2.3.2/libio/iovdprintf.c glibc-2.3.2-200304020432/libio/iovdprintf.c
+--- glibc-2.3.2/libio/iovdprintf.c Fri Aug 2 23:46:58 2002
++++ glibc-2.3.2-200304020432/libio/iovdprintf.c Thu Mar 27 12:53:59 2003
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1995, 1997-2000, 2001, 2002 Free Software Foundation, Inc.
++/* Copyright (C) 1995,1997-2000,2001,2002,2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -41,8 +41,8 @@
+ #ifdef _IO_MTSAFE_IO
+ tmpfil.file._lock = NULL;
+ #endif
+- _IO_no_init (&tmpfil.file, _IO_USER_LOCK, 0, &wd, &INTUSE(_IO_wfile_jumps));
+- _IO_JUMPS (&tmpfil) = &INTUSE(_IO_file_jumps);
++ _IO_no_init (&tmpfil.file, _IO_USER_LOCK, 0, &wd, &_IO_wfile_jumps);
++ _IO_JUMPS (&tmpfil) = &_IO_file_jumps;
+ INTUSE(_IO_file_init) (&tmpfil);
+ #if !_IO_UNIFIED_JUMPTABLES
+ tmpfil.vtable = NULL;
+diff -u -udbrN glibc-2.3.2/libio/libioP.h glibc-2.3.2-200304020432/libio/libioP.h
+--- glibc-2.3.2/libio/libioP.h Wed Jan 8 06:18:05 2003
++++ glibc-2.3.2-200304020432/libio/libioP.h Thu Mar 27 12:53:59 2003
+@@ -450,9 +450,11 @@
+ extern void _IO_default_imbue __P ((_IO_FILE *, void *));
+
+ extern struct _IO_jump_t _IO_file_jumps;
++libc_hidden_proto (_IO_file_jumps)
+ extern struct _IO_jump_t _IO_file_jumps_mmap attribute_hidden;
+ extern struct _IO_jump_t _IO_file_jumps_maybe_mmap attribute_hidden;
+-extern struct _IO_jump_t _IO_wfile_jumps attribute_hidden;
++extern struct _IO_jump_t _IO_wfile_jumps;
++libc_hidden_proto (_IO_wfile_jumps)
+ extern struct _IO_jump_t _IO_wfile_jumps_mmap attribute_hidden;
+ extern struct _IO_jump_t _IO_wfile_jumps_maybe_mmap attribute_hidden;
+ extern struct _IO_jump_t _IO_old_file_jumps attribute_hidden;
+diff -u -udbrN glibc-2.3.2/libio/stdfiles.c glibc-2.3.2-200304020432/libio/stdfiles.c
+--- glibc-2.3.2/libio/stdfiles.c Wed Mar 13 02:05:41 2002
++++ glibc-2.3.2-200304020432/libio/stdfiles.c Thu Mar 27 12:53:59 2003
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1993-1997,1999,2000,2002 Free Software Foundation, Inc.
++/* Copyright (C) 1993-1997,1999,2000,2002,2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -39,30 +39,30 @@
+ # define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \
+ static _IO_lock_t _IO_stdfile_##FD##_lock = _IO_lock_initializer; \
+ static struct _IO_wide_data _IO_wide_data_##FD \
+- = { ._wide_vtable = &INTUSE(_IO_wfile_jumps) }; \
++ = { ._wide_vtable = &_IO_wfile_jumps }; \
+ struct _IO_FILE_plus NAME \
+ = {FILEBUF_LITERAL(CHAIN, FLAGS, FD, &_IO_wide_data_##FD), \
+- &INTUSE(_IO_file_jumps)};
++ &_IO_file_jumps};
+ # else
+ # define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \
+ static _IO_lock_t _IO_stdfile_##FD##_lock = _IO_lock_initializer; \
+ struct _IO_FILE_plus NAME \
+ = {FILEBUF_LITERAL(CHAIN, FLAGS, FD, NULL), \
+- &INTUSE(_IO_file_jumps)};
++ &_IO_file_jumps};
+ # endif
+ #else
+ # if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T
+ # define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \
+ static struct _IO_wide_data _IO_wide_data_##FD \
+- = { ._wide_vtable = &INTUSE(_IO_wfile_jumps) }; \
++ = { ._wide_vtable = &_IO_wfile_jumps }; \
+ struct _IO_FILE_plus NAME \
+ = {FILEBUF_LITERAL(CHAIN, FLAGS, FD, &_IO_wide_data_##FD), \
+- &INTUSE(_IO_file_jumps)};
++ &_IO_file_jumps};
+ # else
+ # define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \
+ struct _IO_FILE_plus NAME \
+ = {FILEBUF_LITERAL(CHAIN, FLAGS, FD, NULL), \
+- &INTUSE(_IO_file_jumps)};
++ &_IO_file_jumps};
+ # endif
+ #endif
+
+diff -u -udbrN glibc-2.3.2/libio/swprintf.c glibc-2.3.2-200304020432/libio/swprintf.c
+--- glibc-2.3.2/libio/swprintf.c Sat Jul 7 21:21:03 2001
++++ glibc-2.3.2-200304020432/libio/swprintf.c Wed Mar 5 20:58:03 2003
+@@ -1,4 +1,5 @@
+-/* Copyright (C) 1991,1995,1997,1998,1999,2000 Free Software Foundation, Inc.
++/* Copyright (C) 1991,1995,1997,1998,1999,2000,2003
++ Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -22,10 +23,7 @@
+ /* Write formatted output into S, according to the format string FORMAT. */
+ /* VARARGS3 */
+ int
+-swprintf (s, n, format)
+- wchar_t *s;
+- size_t n;
+- const wchar_t *format;
++swprintf (wchar_t *s, size_t n, const wchar_t *format, ...)
+ {
+ va_list arg;
+ int done;
+diff -u -udbrN glibc-2.3.2/libio/swscanf.c glibc-2.3.2-200304020432/libio/swscanf.c
+--- glibc-2.3.2/libio/swscanf.c Sat Jul 7 21:21:03 2001
++++ glibc-2.3.2-200304020432/libio/swscanf.c Wed Mar 5 20:58:03 2003
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1991, 1995, 1996, 1998, 1999 Free Software Foundation, Inc.
++/* Copyright (C) 1991,1995,1996,1998,1999,2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -22,9 +22,7 @@
+ /* Read formatted input from S, according to the format string FORMAT. */
+ /* VARARGS2 */
+ int
+-swscanf (s, format)
+- const wchar_t *s;
+- const wchar_t *format;
++swscanf (const wchar_t *s, const wchar_t *format, ...)
+ {
+ va_list arg;
+ int done;
+diff -u -udbrN glibc-2.3.2/libio/wfileops.c glibc-2.3.2-200304020432/libio/wfileops.c
+--- glibc-2.3.2/libio/wfileops.c Tue Nov 5 08:28:51 2002
++++ glibc-2.3.2-200304020432/libio/wfileops.c Thu Mar 27 12:53:59 2003
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1993,95,97,98,99,2000,2001,2002 Free Software Foundation, Inc.
++/* Copyright (C) 1993,95,97,98,99,2000,2001,2002, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Written by Ulrich Drepper <drepper@cygnus.com>.
+ Based on the single byte version by Per Bothner <bothner@cygnus.com>.
+@@ -879,7 +879,7 @@
+ JUMP_INIT(showmanyc, _IO_default_showmanyc),
+ JUMP_INIT(imbue, _IO_default_imbue)
+ };
+-INTVARDEF(_IO_wfile_jumps)
++libc_hidden_data_def (_IO_wfile_jumps)
+
+
+ struct _IO_jump_t _IO_wfile_jumps_mmap =
+diff -u -udbrN glibc-2.3.2/linuxthreads/Banner glibc-2.3.2-200304020432/linuxthreads/Banner
+diff -u -udbrN glibc-2.3.2/linuxthreads/ChangeLog glibc-2.3.2-200304020432/linuxthreads/ChangeLog
+diff -u -udbrN glibc-2.3.2/linuxthreads/Changes glibc-2.3.2-200304020432/linuxthreads/Changes
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/Makefile glibc-2.3.2-200304020432/linuxthreads/Examples/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex1.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex1.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex10.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex10.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex11.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex11.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex12.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex12.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex13.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex13.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex14.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex14.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex15.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex15.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex16.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex16.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex17.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex17.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex18.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex18.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex2.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex2.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex3.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex3.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex4.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex4.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex5.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex5.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex6.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex6.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex7.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex7.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex8.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex8.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/ex9.c glibc-2.3.2-200304020432/linuxthreads/Examples/ex9.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/Examples/tststatic.c glibc-2.3.2-200304020432/linuxthreads/Examples/tststatic.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/FAQ.html glibc-2.3.2-200304020432/linuxthreads/FAQ.html
+diff -u -udbrN glibc-2.3.2/linuxthreads/LICENSE glibc-2.3.2-200304020432/linuxthreads/LICENSE
+diff -u -udbrN glibc-2.3.2/linuxthreads/Makeconfig glibc-2.3.2-200304020432/linuxthreads/Makeconfig
+diff -u -udbrN glibc-2.3.2/linuxthreads/Makefile glibc-2.3.2-200304020432/linuxthreads/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/README glibc-2.3.2-200304020432/linuxthreads/README
+diff -u -udbrN glibc-2.3.2/linuxthreads/README.Xfree3.2 glibc-2.3.2-200304020432/linuxthreads/README.Xfree3.2
+diff -u -udbrN glibc-2.3.2/linuxthreads/Versions glibc-2.3.2-200304020432/linuxthreads/Versions
+diff -u -udbrN glibc-2.3.2/linuxthreads/alloca_cutoff.c glibc-2.3.2-200304020432/linuxthreads/alloca_cutoff.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/attr.c glibc-2.3.2-200304020432/linuxthreads/attr.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/barrier.c glibc-2.3.2-200304020432/linuxthreads/barrier.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/bug-sleep.c glibc-2.3.2-200304020432/linuxthreads/bug-sleep.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/cancel.c glibc-2.3.2-200304020432/linuxthreads/cancel.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/condvar.c glibc-2.3.2-200304020432/linuxthreads/condvar.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/configure glibc-2.3.2-200304020432/linuxthreads/configure
+diff -u -udbrN glibc-2.3.2/linuxthreads/descr.h glibc-2.3.2-200304020432/linuxthreads/descr.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/ecmutex.c glibc-2.3.2-200304020432/linuxthreads/ecmutex.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/errno.c glibc-2.3.2-200304020432/linuxthreads/errno.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/events.c glibc-2.3.2-200304020432/linuxthreads/events.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/forward.c glibc-2.3.2-200304020432/linuxthreads/forward.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/internals.h glibc-2.3.2-200304020432/linuxthreads/internals.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/join.c glibc-2.3.2-200304020432/linuxthreads/join.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/joinrace.c glibc-2.3.2-200304020432/linuxthreads/joinrace.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/libc-cancellation.c glibc-2.3.2-200304020432/linuxthreads/libc-cancellation.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/libc-tls-loc.c glibc-2.3.2-200304020432/linuxthreads/libc-tls-loc.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/libc-tsd.c glibc-2.3.2-200304020432/linuxthreads/libc-tsd.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/libc_pthread_init.c glibc-2.3.2-200304020432/linuxthreads/libc_pthread_init.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/linuxthreads.texi glibc-2.3.2-200304020432/linuxthreads/linuxthreads.texi
+diff -u -udbrN glibc-2.3.2/linuxthreads/lockfile.c glibc-2.3.2-200304020432/linuxthreads/lockfile.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/Makefile glibc-2.3.2-200304020432/linuxthreads/man/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_atfork.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_atfork.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_attr_init.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_attr_init.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_cancel.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_cancel.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_cleanup_push.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_cleanup_push.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_cond_init.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_cond_init.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_condattr_init.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_condattr_init.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_create.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_create.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_detach.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_detach.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_equal.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_equal.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_exit.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_exit.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_join.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_join.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_key_create.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_key_create.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_kill_other_threads_np.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_kill_other_threads_np.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_mutex_init.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_mutex_init.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_mutexattr_init.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_mutexattr_init.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_mutexattr_setkind_np.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_mutexattr_setkind_np.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_once.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_once.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_self.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_self.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_setschedparam.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_setschedparam.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/pthread_sigmask.man glibc-2.3.2-200304020432/linuxthreads/man/pthread_sigmask.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/sem_init.man glibc-2.3.2-200304020432/linuxthreads/man/sem_init.man
+diff -u -udbrN glibc-2.3.2/linuxthreads/man/troffprepro glibc-2.3.2-200304020432/linuxthreads/man/troffprepro
+diff -u -udbrN glibc-2.3.2/linuxthreads/manager.c glibc-2.3.2-200304020432/linuxthreads/manager.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/mutex.c glibc-2.3.2-200304020432/linuxthreads/mutex.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/old_pthread_atfork.c glibc-2.3.2-200304020432/linuxthreads/old_pthread_atfork.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/oldsemaphore.c glibc-2.3.2-200304020432/linuxthreads/oldsemaphore.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/pt-allocrtsig.c glibc-2.3.2-200304020432/linuxthreads/pt-allocrtsig.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/pt-machine.c glibc-2.3.2-200304020432/linuxthreads/pt-machine.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/pt-system.c glibc-2.3.2-200304020432/linuxthreads/pt-system.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/ptclock_gettime.c glibc-2.3.2-200304020432/linuxthreads/ptclock_gettime.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/ptclock_settime.c glibc-2.3.2-200304020432/linuxthreads/ptclock_settime.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/ptfork.c glibc-2.3.2-200304020432/linuxthreads/ptfork.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/pthandles.c glibc-2.3.2-200304020432/linuxthreads/pthandles.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/pthread.c glibc-2.3.2-200304020432/linuxthreads/pthread.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/pthread_atfork.c glibc-2.3.2-200304020432/linuxthreads/pthread_atfork.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/ptlongjmp.c glibc-2.3.2-200304020432/linuxthreads/ptlongjmp.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/queue.h glibc-2.3.2-200304020432/linuxthreads/queue.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/restart.h glibc-2.3.2-200304020432/linuxthreads/restart.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/rwlock.c glibc-2.3.2-200304020432/linuxthreads/rwlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/semaphore.c glibc-2.3.2-200304020432/linuxthreads/semaphore.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/semaphore.h glibc-2.3.2-200304020432/linuxthreads/semaphore.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/shlib-versions glibc-2.3.2-200304020432/linuxthreads/shlib-versions
+diff -u -udbrN glibc-2.3.2/linuxthreads/sighandler.c glibc-2.3.2-200304020432/linuxthreads/sighandler.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/signals.c glibc-2.3.2-200304020432/linuxthreads/signals.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/specific.c glibc-2.3.2-200304020432/linuxthreads/specific.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/spinlock.c glibc-2.3.2-200304020432/linuxthreads/spinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/spinlock.h glibc-2.3.2-200304020432/linuxthreads/spinlock.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/alpha/elf/pt-initfini.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/alpha/elf/pt-initfini.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/alpha/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/alpha/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/alpha/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/alpha/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/alpha/tls.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/alpha/tls.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/arm/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/arm/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/arm/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/arm/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/cris/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/cris/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/cris/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/cris/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/hppa/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/hppa/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/hppa/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/hppa/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/i386/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/i386/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/i386/i586/Versions glibc-2.3.2-200304020432/linuxthreads/sysdeps/i386/i586/Versions
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/i386/i686/Versions glibc-2.3.2-200304020432/linuxthreads/sysdeps/i386/i686/Versions
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/i386/i686/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/i386/i686/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/i386/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/i386/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/i386/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/i386/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/i386/tcb-offsets.sym glibc-2.3.2-200304020432/linuxthreads/sysdeps/i386/tcb-offsets.sym
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/i386/tls.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/i386/tls.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/i386/useldt.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/i386/useldt.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/ia64/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/ia64/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/ia64/Versions glibc-2.3.2-200304020432/linuxthreads/sysdeps/ia64/Versions
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/ia64/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/ia64/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/ia64/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/ia64/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/ia64/tcb-offsets.sym glibc-2.3.2-200304020432/linuxthreads/sysdeps/ia64/tcb-offsets.sym
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/ia64/tls.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/ia64/tls.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/m68k/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/m68k/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/m68k/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/m68k/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/m68k/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/m68k/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/mips/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/mips/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/mips/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/mips/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/powerpc/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/powerpc/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/powerpc/powerpc32/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/powerpc/powerpc32/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/powerpc/powerpc64/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/powerpc/powerpc64/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/powerpc/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/powerpc/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/powerpc/tcb-offsets.sym glibc-2.3.2-200304020432/linuxthreads/sysdeps/powerpc/tcb-offsets.sym
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/powerpc/tls.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/powerpc/tls.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/Subdirs glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/Subdirs
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/bits/initspin.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/bits/initspin.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/bits/libc-lock.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/bits/libc-lock.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/bits/libc-tsd.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/bits/libc-tsd.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/bits/pthreadtypes.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/bits/pthreadtypes.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/bits/typesizes.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/bits/typesizes.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/errno-loc.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/errno-loc.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/flockfile.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/flockfile.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/ftrylockfile.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/ftrylockfile.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/funlockfile.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/funlockfile.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/getcpuclockid.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/getcpuclockid.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/herrno-loc.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/herrno-loc.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/list.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/list.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/posix-timer.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/posix-timer.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/pt-initfini.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/pt-initfini.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/pthread.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/pthread.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/res-state.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/res-state.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/semaphore.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/semaphore.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/sigaction.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/sigaction.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/tcb-offsets.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/tcb-offsets.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/timer_create.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/timer_create.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/timer_delete.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/timer_delete.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/timer_getoverr.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/timer_getoverr.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/timer_gettime.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/timer_gettime.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/timer_routines.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/timer_routines.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/timer_settime.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/timer_settime.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/pthread/tst-timer.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/pthread/tst-timer.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/s390/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/s390/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/s390/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/s390/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/s390/s390-32/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/s390/s390-32/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/s390/s390-64/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/s390/s390-64/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/s390/tcb-offsets.sym glibc-2.3.2-200304020432/linuxthreads/sysdeps/s390/tcb-offsets.sym
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/s390/tls.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/s390/tls.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sh/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/sh/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sh/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/sh/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sh/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/sh/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sh/tcb-offsets.sym glibc-2.3.2-200304020432/linuxthreads/sysdeps/sh/tcb-offsets.sym
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sh/tls.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/sh/tls.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sparc/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/sparc/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sparc/sparc32/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/sparc/sparc32/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sparc/sparc32/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/sparc/sparc32/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sparc/sparc32/sparcv9/Versions glibc-2.3.2-200304020432/linuxthreads/sysdeps/sparc/sparc32/sparcv9/Versions
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sparc/sparc32/sparcv9/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/sparc/sparc32/sparcv9/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sparc/sparc64/Versions glibc-2.3.2-200304020432/linuxthreads/sysdeps/sparc/sparc64/Versions
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sparc/sparc64/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/sparc/sparc64/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sparc/sparc64/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/sparc/sparc64/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sparc/tcb-offsets.sym glibc-2.3.2-200304020432/linuxthreads/sysdeps/sparc/tcb-offsets.sym
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/sparc/tls.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/sparc/tls.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/Implies glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/Implies
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/Versions glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/Versions
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/allocalim.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/allocalim.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/allocrtsig.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/allocrtsig.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/alpha/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/aio_cancel.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/alpha/aio_cancel.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/pt-sigsuspend.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/alpha/pt-sigsuspend.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/arm/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/arm/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/arm/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/arm/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/execve.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/execve.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/fork.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/fork.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/fork.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/fork.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/hppa/aio_cancel.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/hppa/aio_cancel.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/hppa/bits/initspin.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/hppa/bits/initspin.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/hppa/pt-initfini.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/hppa/pt-initfini.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/i386/dl-sysdep.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/i386/dl-sysdep.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/i386/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/i386/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/i386/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/i386/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/ia64/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/fork.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/ia64/fork.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/pt-initfini.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/ia64/pt-initfini.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/pt-sigsuspend.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/ia64/pt-sigsuspend.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/ia64/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/jmp-unwind.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/jmp-unwind.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/m68k/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/m68k/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/m68k/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/m68k/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/mips/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/mips/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/powerpc/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/powerpc/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/pt-sigsuspend.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/pt-sigsuspend.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/raise.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/raise.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/register-atfork.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/register-atfork.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-32/pt-initfini.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-32/pt-initfini.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-32/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-32/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-32/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-32/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/pt-initfini.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/pt-initfini.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/pt-sigsuspend.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/pt-sigsuspend.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sh/pt-initfini.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sh/pt-initfini.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sh/smp.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sh/smp.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sh/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sh/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sh/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sh/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sigwait.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sigwait.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/smp.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/smp.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sparc/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/aio_cancel.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sparc/aio_cancel.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/fork.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sparc/fork.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/pt-sigsuspend.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/pt-sigsuspend.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/unregister-atfork.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/unregister-atfork.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/Makefile glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/x86_64/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/pt-sigsuspend.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/x86_64/pt-sigsuspend.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/vfork.S glibc-2.3.2-200304020432/linuxthreads/sysdeps/unix/sysv/linux/x86_64/vfork.S
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/x86_64/pspinlock.c glibc-2.3.2-200304020432/linuxthreads/sysdeps/x86_64/pspinlock.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/x86_64/pt-machine.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/x86_64/pt-machine.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/sysdeps/x86_64/tls.h glibc-2.3.2-200304020432/linuxthreads/sysdeps/x86_64/tls.h
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-cancel-static.c glibc-2.3.2-200304020432/linuxthreads/tst-cancel-static.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-cancel-wrappers.sh glibc-2.3.2-200304020432/linuxthreads/tst-cancel-wrappers.sh
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-cancel.c glibc-2.3.2-200304020432/linuxthreads/tst-cancel.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-cancel1.c glibc-2.3.2-200304020432/linuxthreads/tst-cancel1.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-cancel2.c glibc-2.3.2-200304020432/linuxthreads/tst-cancel2.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-cancel3.c glibc-2.3.2-200304020432/linuxthreads/tst-cancel3.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-cancel4.c glibc-2.3.2-200304020432/linuxthreads/tst-cancel4.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-cancel5.c glibc-2.3.2-200304020432/linuxthreads/tst-cancel5.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-cancel6.c glibc-2.3.2-200304020432/linuxthreads/tst-cancel6.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-cancel7.c glibc-2.3.2-200304020432/linuxthreads/tst-cancel7.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-context.c glibc-2.3.2-200304020432/linuxthreads/tst-context.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-popen.c glibc-2.3.2-200304020432/linuxthreads/tst-popen.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-popen2.c glibc-2.3.2-200304020432/linuxthreads/tst-popen2.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-signal.c glibc-2.3.2-200304020432/linuxthreads/tst-signal.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-signal.sh glibc-2.3.2-200304020432/linuxthreads/tst-signal.sh
+diff -u -udbrN glibc-2.3.2/linuxthreads/tst-static-locale.c glibc-2.3.2-200304020432/linuxthreads/tst-static-locale.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/tststack.c glibc-2.3.2-200304020432/linuxthreads/tststack.c
+diff -u -udbrN glibc-2.3.2/linuxthreads/unload.c glibc-2.3.2-200304020432/linuxthreads/unload.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/Banner glibc-2.3.2-200304020432/linuxthreads_db/Banner
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/ChangeLog glibc-2.3.2-200304020432/linuxthreads_db/ChangeLog
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/Makefile glibc-2.3.2-200304020432/linuxthreads_db/Makefile
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/Versions glibc-2.3.2-200304020432/linuxthreads_db/Versions
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/proc_service.h glibc-2.3.2-200304020432/linuxthreads_db/proc_service.h
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/shlib-versions glibc-2.3.2-200304020432/linuxthreads_db/shlib-versions
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_init.c glibc-2.3.2-200304020432/linuxthreads_db/td_init.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_log.c glibc-2.3.2-200304020432/linuxthreads_db/td_log.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_symbol_list.c glibc-2.3.2-200304020432/linuxthreads_db/td_symbol_list.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_clear_event.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_clear_event.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_delete.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_delete.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_enable_stats.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_enable_stats.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_event_addr.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_event_addr.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_event_getmsg.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_event_getmsg.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_get_nthreads.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_get_nthreads.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_get_ph.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_get_ph.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_get_stats.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_get_stats.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_map_id2thr.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_map_id2thr.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_map_lwp2thr.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_map_lwp2thr.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_new.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_new.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_reset_stats.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_reset_stats.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_set_event.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_set_event.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_setconcurrency.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_setconcurrency.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_thr_iter.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_thr_iter.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_ta_tsd_iter.c glibc-2.3.2-200304020432/linuxthreads_db/td_ta_tsd_iter.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_clear_event.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_clear_event.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_dbresume.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_dbresume.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_dbsuspend.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_dbsuspend.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_event_enable.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_event_enable.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_event_getmsg.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_event_getmsg.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_get_info.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_get_info.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_getfpregs.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_getfpregs.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_getgregs.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_getgregs.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_getxregs.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_getxregs.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_getxregsize.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_getxregsize.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_set_event.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_set_event.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_setfpregs.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_setfpregs.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_setgregs.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_setgregs.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_setprio.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_setprio.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_setsigpending.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_setsigpending.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_setxregs.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_setxregs.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_sigsetmask.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_sigsetmask.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_tls_get_addr.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_tls_get_addr.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_tlsbase.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_tlsbase.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_tsd.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_tsd.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/td_thr_validate.c glibc-2.3.2-200304020432/linuxthreads_db/td_thr_validate.c
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/thread_db.h glibc-2.3.2-200304020432/linuxthreads_db/thread_db.h
+diff -u -udbrN glibc-2.3.2/linuxthreads_db/thread_dbP.h glibc-2.3.2-200304020432/linuxthreads_db/thread_dbP.h
+diff -u -udbrN glibc-2.3.2/locale/Versions glibc-2.3.2-200304020432/locale/Versions
+--- glibc-2.3.2/locale/Versions Wed Aug 28 03:04:45 2002
++++ glibc-2.3.2-200304020432/locale/Versions Mon Mar 3 10:45:12 2003
+@@ -59,13 +59,12 @@
+ iswcntrl_l; iswctype_l; iswdigit_l; iswgraph_l; iswlower_l;
+ iswprint_l; iswpunct_l; iswspace_l; iswupper_l; iswxdigit_l;
+ isxdigit_l; strcasecmp_l; strcoll_l; strfmon_l; strncasecmp_l;
+- strtod_l; strtof_l; strtol_l; strtold_l; strtoll_l; strtoul_l;
+- strtoull_l; strxfrm_l; toascii_l; tolower_l; toupper_l;
++ strtod_l; strtof_l; strtol_l; strtold_l; strtoul_l;
++ strxfrm_l; toascii_l; tolower_l; toupper_l;
+ towctrans_l; towlower_l; towupper_l; wcscasecmp_l; wcscoll_l;
+ wcsncasecmp_l; wcstod_l; wcstof_l; wcstol_l; wcstold_l;
+ wcstoll_l; wcstoul_l; wcstoull_l; wcsxfrm_l; wctype_l;
+ wctrans_l; nl_langinfo_l;
+-
+ }
+ GLIBC_PRIVATE {
+ # global variables
+diff -u -udbrN glibc-2.3.2/locale/programs/locarchive.c glibc-2.3.2-200304020432/locale/programs/locarchive.c
+--- glibc-2.3.2/locale/programs/locarchive.c Wed Oct 23 08:21:17 2002
++++ glibc-2.3.2-200304020432/locale/programs/locarchive.c Sun Mar 16 02:03:52 2003
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 2002 Free Software Foundation, Inc.
++/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
+
+@@ -1402,8 +1402,7 @@
+ struct locarhead *head;
+ struct namehashent *namehashtab;
+ struct nameent *names;
+- int cnt;
+- int used;
++ size_t cnt, used;
+
+ /* Open the archive. This call never returns if we cannot
+ successfully open the archive. */
+diff -u -udbrN glibc-2.3.2/locale/tst-C-locale.c glibc-2.3.2-200304020432/locale/tst-C-locale.c
+--- glibc-2.3.2/locale/tst-C-locale.c Tue Sep 3 20:39:41 2002
++++ glibc-2.3.2-200304020432/locale/tst-C-locale.c Mon Mar 17 20:11:36 2003
+@@ -1,5 +1,5 @@
+ /* Tests of C and POSIX locale contents.
+- Copyright (C) 2000,01,02 Free Software Foundation, Inc.
++ Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@redhat.com>, 2000.
+
+@@ -450,8 +450,8 @@
+ }
+
+
+-int
+-main (void)
++static int
++do_test (void)
+ {
+ int result;
+
+@@ -475,3 +475,6 @@
+
+ return result;
+ }
++
++#define TEST_FUNCTION do_test ()
++#include "../test-skeleton.c"
+diff -u -udbrN glibc-2.3.2/localedata/ChangeLog glibc-2.3.2-200304020432/localedata/ChangeLog
+--- glibc-2.3.2/localedata/ChangeLog Thu Jan 30 21:21:47 2003
++++ glibc-2.3.2-200304020432/localedata/ChangeLog Mon Mar 17 11:16:36 2003
+@@ -1,3 +1,17 @@
++2003-03-17 Ulrich Drepper <drepper@redhat.com>
++
++ * localedata/en_ZA: Changed %x for LC_TIME to use dd/mm/ccyy.
++ Added ^ to LC_MESSAGES regex "^[yY].*".
++ Confirmed LC_PAPER adn LC_MEASUREMENT settings.
++ Added country and language names to LC_ADDRESS.
++ Added missing info for LC_TELEPHONE.
++ Patch by Dwayne Bailey <dwayne@obsidian.co.za>.
++
++2003-03-14 Ulrich Drepper <drepper@redhat.com>
++
++ * localedata/mn_MN: New file.
++ Contributed by Sanlig Badral <badral@chinggis.com>.
++
+ 2003-01-30 Ulrich Drepper <drepper@redhat.com>
+
+ * Makefile (LOCALES): Add vi_VN.TCVN5712-1.
+diff -u -udbrN glibc-2.3.2/localedata/locales/en_ZA glibc-2.3.2-200304020432/localedata/locales/en_ZA
+--- glibc-2.3.2/localedata/locales/en_ZA Thu Oct 26 19:48:46 2000
++++ glibc-2.3.2-200304020432/localedata/locales/en_ZA Mon Mar 17 11:08:52 2003
+@@ -2,44 +2,54 @@
+ comment_char %
+
+ % English language locale for South Africa
+-% Source: RAP
+-% Email: nic@sig.co.za
+-% Tel: +27 83 7659503
+-% Fax: +27 12 3478098
++% Source: Zuza Software Foundation
++% Email: dwayne@translate.org.za
++% Tel: +27 21 4487827
++% Fax: +27 21 4489574
+ % Language: en
+ % Territory: ZA
+-% Revision: 1.0
+-% Date: 1999-03-28
++% Revision: 1.1
++% Date: 2003-03-14
+ % Users: general
+ % Repertoiremap: mnemonic,ds
+ % Charset: ISO-8859-1
+ % Distribution and use is free, also
+ % for commercial purposes.
++%
++% Changelog
++% 1.1 (2003-03-14):
++% - Updated maintainer to Zuza Sofware Foundation
++% - Changed %x for LC_TIME to use dd/mm/ccyy
++% - Added ^ to LC_MESSAGES regex "^[yY].*"
++% - Confirmed LC_PAPER and LC_MEASUREMENT settings
++% - Added country and language names to LC_ADDRESS
++% - Added missing info for LC_TELEPHONE
+
+ LC_IDENTIFICATION
+ title "English locale for South Africa"
+-source "RAP"
+-address ""
+-contact ""
+-email "bug-glibc@gnu.org"
+-tel ""
+-fax ""
++source "Zuza Software Foundation"
++address "Box 13412, Mowbray, 7701, South Africa"
++contact "Dwayne Bailey"
++email "dwayne@translate.org.za"
++tel "+27 21 448 7827"
++fax "+27 21 448 9574"
+ language "English"
+ territory "South Africa"
+-revision "1.0"
+-date "2000-06-29"
++revision "1.1"
++date "2003-03-14"
+ %
+-category "en_ZA:2000";LC_IDENTIFICATION
++category "en_ZA:2003";LC_IDENTIFICATION
+ category "en_ZA:2000";LC_CTYPE
+ category "en_ZA:2000";LC_COLLATE
+-category "en_ZA:2000";LC_TIME
++category "en_ZA:2003";LC_TIME
+ category "en_ZA:2000";LC_NUMERIC
+ category "en_ZA:2000";LC_MONETARY
+-category "en_ZA:2000";LC_MESSAGES
++category "en_ZA:2003";LC_MESSAGES
+ category "en_ZA:2000";LC_PAPER
++category "en_ZA:2000";LC_MEASUREMENT
+ category "en_ZA:2000";LC_NAME
+-category "en_ZA:2000";LC_ADDRESS
+-category "en_ZA:2000";LC_TELEPHONE
++category "en_ZA:2003";LC_ADDRESS
++category "en_ZA:2003";LC_TELEPHONE
+
+ END LC_IDENTIFICATION
+
+@@ -106,7 +116,7 @@
+ "<U004E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/
+ "<U0044><U0065><U0063><U0065><U006D><U0062><U0065><U0072>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+-d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
++d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0059>"
+ t_fmt "<U0025><U0054>"
+ am_pm "";""
+ t_fmt_ampm ""
+@@ -116,25 +126,25 @@
+ END LC_TIME
+
+ LC_MESSAGES
+-yesexpr "<U005B><U0079><U0059><U005D><U002E><U002A>"
+-noexpr "<U005B><U006E><U004E><U005D><U002E><U002A>"
++yesexpr "<U005E><U005B><U0079><U0059><U005D><U002E><U002A>"
++noexpr "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
+ END LC_MESSAGES
+
+ LC_PAPER
+-% FIXME
+ height 297
+-% FIXME
+ width 210
+ END LC_PAPER
+
+ LC_TELEPHONE
+ tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025>/
+ <U006C>"
++tel_dom_fmt "<U0028><U0025><U0041><U0029><U0020><U0025><U006C>"
++int_select "<U0030><U0039>"
+ int_prefix "<U0032><U0037>"
++
+ END LC_TELEPHONE
+
+ LC_MEASUREMENT
+-% FIXME
+ measurement 1
+ END LC_MEASUREMENT
+
+@@ -149,4 +159,7 @@
+ <U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+ <U004E><U0025><U0025><U007A><U0020><U0025><U0054><U0025>/
+ <U004E><U0025><U0063><U0025><U004E>"
++country_name "<U0053><U006F><U0075><U0074><U0068><U0020>/
++<U0041><U0066><U0072><U0069><U0063><U0061>"
++lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+ END LC_ADDRESS
+diff -u -udbrN glibc-2.3.2/localedata/locales/mn_MN glibc-2.3.2-200304020432/localedata/locales/mn_MN
+--- glibc-2.3.2/localedata/locales/mn_MN Thu Jan 1 01:00:00 1970
++++ glibc-2.3.2-200304020432/localedata/locales/mn_MN Fri Mar 14 22:26:23 2003
+@@ -0,0 +1,196 @@
++comment_char %
++escape_char /
++% Mongolian language (cyrillic) locale for Mongolia
++% Sanlig Badral <badral@chinggis.com>
++% Revision: 0.9 (2003-2-27)
++% Charsets: UTF-8
++% Distribution and use is free, also
++% for commercial purposes.
++
++LC_IDENTIFICATION
++title "Mongolian locale for Mongolia"
++source "OPENMN"
++address ""
++contact ""
++email "bug-glibc@gnu.org"
++tel ""
++fax ""
++language "Mongolian"
++territory "Mongolia"
++revision "0.9"
++date "2003-02-27"
++
++category "mn_MN:2000";LC_IDENTIFICATION
++category "mn_MN:2000";LC_CTYPE
++category "mn_MN:2000";LC_COLLATE
++category "mn_MN:2000";LC_TIME
++category "mn_MN:2000";LC_NUMERIC
++category "mn_MN:2000";LC_MONETARY
++category "mn_MN:2000";LC_MESSAGES
++category "mn_MN:2000";LC_PAPER
++category "mn_MN:2000";LC_NAME
++category "mn_MN:2000";LC_ADDRESS
++category "mn_MN:2000";LC_TELEPHONE
++
++END LC_IDENTIFICATION
++
++LC_COLLATE
++copy "iso14651_t1"
++
++% iso14651_t1 is missing Mongolian ue(straight u), oe(barred o)
++% like russian, but with <o-=> (<barred-o>) after <o=> and
++% <u'=>(straight u) after <u=>
++
++collating-symbol <o-=>
++collating-symbol <u'=>
++
++reorder-after <CYR-O>
++<o-=>
++reorder-after <CYR-OUBRE>
++<u'=>
++
++reorder-after <U043E>
++<U04E9> <o-=>;<PCL>;<MIN>;IGNORE
++reorder-after <U041E>
++<U04E8> <o-=>;<PCL>;<CAP>;IGNORE
++
++reorder-after <U0443>
++<U04AF> <u'=>;<PCL>;<MIN>;IGNORE
++reorder-after <U0423>
++<U04AE> <u'=>;<PCL>;<CAP>;IGNORE
++
++reorder-end
++END LC_COLLATE
++
++LC_CTYPE
++copy "i18n"
++END LC_CTYPE
++
++LC_MONETARY
++int_curr_symbol "<U004D><U004E><U0054><U0020>"
++currency_symbol "<U20AE>"
++mon_decimal_point "<U002E>"
++mon_thousands_sep "<U0020>"
++mon_grouping 3;3
++positive_sign ""
++negative_sign "<U002D>"
++int_frac_digits 2
++frac_digits 2
++p_cs_precedes 0
++p_sep_by_space 1
++n_cs_precedes 0
++n_sep_by_space 1
++p_sign_posn 1
++n_sign_posn 1
++
++END LC_MONETARY
++
++LC_NUMERIC
++decimal_point "<U002C>"
++thousands_sep "<U002E>"
++grouping 3;3
++END LC_NUMERIC
++
++LC_TIME
++% Abbreviated weekday names (%a)
++abday "<U041D><U044F>";"<U0414><U0430>";/
++ "<U041C><U044F>";"<U041B><U0445>";/
++ "<U041F><U04AF>";"<U0411><U0430>";/
++ "<U0411><U044F>"
++% Full weekday names (%A)
++day "<U041D><U044F><U043C>";/
++ "<U0414><U0430><U0432><U0430><U0430>";/
++ "<U041C><U044F><U0433><U043C><U0430><U0440>";/
++ "<U041B><U0445><U0430><U0433><U0432><U0430>";/
++ "<U041F><U04AF><U0440><U044D><U0432>";/
++ "<U0411><U0430><U0430><U0441><U0430><U043D>";/
++ "<U0411><U044F><U043C><U0431><U0430>"
++% Abbreviated month names (%b)
++abmon "<U0031><U002D><U0440>";"<U0032><U002D><U0440>";/
++ "<U0033><U002D><U0440>";"<U0034><U002D><U0440>";/
++ "<U0035><U002D><U0440>";"<U0036><U002D><U0440>";/
++ "<U0037><U002D><U0440>";"<U0038><U002D><U0440>";/
++ "<U0039><U002D><U0440>";"<U0031><U0030><U002D><U0440>";/
++ "<U0031><U0031><U002D><U0440>";"<U0031><U0032><U002D><U0440>"
++% Full month names (%B)
++mon "<U041D><U044D><U0433><U0434><U04AF><U0433><U044D><U044D><U0440><U0020><U0441><U0430><U0440>";/
++ "<U0425><U043E><U0451><U0440><U0434><U0443><U0433><U0430><U0430><U0440><U0020><U0441><U0430><U0440>";/
++ "<U0413><U0443><U0440><U0430><U0432><U0434><U0443><U0433><U0430><U0430><U0440><U0020><U0441><U0430><U0440>";/
++ "<U0414><U04E9><U0440><U04E9><U0432><U0434><U04AF><U0433><U044D><U044D><U0440><U0020><U0441><U0430><U0440>";/
++ "<U0422><U0430><U0432><U0434><U0443><U0433><U0430><U0430><U0440><U0020><U0441><U0430><U0440>";/
++ "<U0417><U0443><U0440><U0433><U0430><U0430><U0434><U0443><U0433><U0430><U0440><U0020><U0441><U0430><U0440>";/
++ "<U0414><U043E><U043B><U043E><U043E><U0434><U0443><U0433><U0430><U0430><U0440><U0020><U0441><U0430><U0440>";/
++ "<U041D><U0430><U0439><U043C><U0434><U0443><U0433><U0430><U0430><U0440><U0020><U0441><U0430><U0440>";/
++ "<U0415><U0441><U0434><U04AF><U0433><U044D><U044D><U0440><U0020><U0441><U0430><U0440>";/
++ "<U0410><U0440><U0430><U0432><U0434><U0443><U0433><U0430><U0430><U0440><U0020><U0441><U0430><U0440>";/
++ "<U0410><U0440><U0432><U0430><U043D><U043D><U044D><U0433><U0434><U04AF><U0433><U044D><U044D><U0440><U0020><U0441><U0430><U0440>";/
++ "<U0410><U0440><U0432><U0430><U043D><U0445><U043E><U0451><U0440><U0434><U0433><U0430><U0430><U0440><U0020><U0441><U0430><U0440>"
++% Appropriate date and time representation
++% "%a %d %b %Y %T %Z"
++d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
++
++% Appropriate date representation
++% "%Y.%m.%d"
++d_fmt "<U0025><U0059><U002E><U0025><U006D><U002E><U0025><U0064>"
++% Appropriate time representation
++% "%T"
++t_fmt "<U0025><U0054>"
++% Appropriate 12 h time representation (%r)
++am_pm "";""
++t_fmt_ampm ""
++% Full date and time representation
++% "%a %b %e %H:%M:%S %Z %Y"
++date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U005A><U0020><U0025><U0059>"
++END LC_TIME
++
++LC_MESSAGES
++yesexpr "<U005E><U005B><U0442><U0422><U0079><U0059><U005D><U002E><U002A>"
++noexpr "<U005E><U005B><U04AF><U04AE><U006E><U004E><U005D><U002E><U002A>"
++END LC_MESSAGES
++
++% Paper format
++LC_PAPER
++height 297
++width 210
++END LC_PAPER
++
++LC_NAME
++name_fmt "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
++<U0025><U006D><U0025><U0074><U0025><U0066>"
++
++name_miss "<U0425><U0430><U0442><U0430><U0433><U0442><U0430><U0439>"
++name_mr "<U041D><U043E><U0451><U043D>"
++name_mrs "<U0425><U0430><U0442><U0430><U0433><U0442><U0430><U0439>"
++name_ms "<U0425><U0430><U0442><U0430><U0433><U0442><U0430><U0439>"
++END LC_NAME
++
++LC_ADDRESS
++postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
++<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
++<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
++<U004E><U0025><U0025><U007A><U0020><U0025><U0054><U0025>/
++<U004E><U0025><U0063><U0025><U004E>"
++
++country_name "<U004D><U006F><U006E><U0067><U006F><U006C><U0069><U0061>"
++country_post "<U004D><U006E>"
++country_ab2 "<U004D><U006E>"
++country_ab3 "<U004D><U004E><U0047>"
++country_num 496
++country_car "<U004D><U0047><U004C>"
++country_isbn 99929
++lang_name "<U004D><U006F><U006E><U0067><U006F><U006C><U0069><U0061><U006E>"
++lang_ab "<U006D><U006E>"
++lang_term "<U006D><U006F><U006E>"
++lang_lib "<U006D><U006F><U006E>"
++END LC_ADDRESS
++
++LC_TELEPHONE
++tel_int_fmt "<U0028><U002B><U0025><U0063><U0020><U0025><U0061><U0029><U0020><U0025><U006C>"
++tel_dom_fmt "<U0028><U0030><U0025><U0061><U0029><U0020><U0025><U006C>"
++int_select "<U0030><U0030>"
++int_prefix "<U0039><U0037><U0036>"
++END LC_TELEPHONE
++
++LC_MEASUREMENT
++measurement 1
++END LC_MEASUREMENT
+diff -u -udbrN glibc-2.3.2/malloc/memusagestat.c glibc-2.3.2-200304020432/malloc/memusagestat.c
+--- glibc-2.3.2/malloc/memusagestat.c Sat Jul 7 21:21:06 2001
++++ glibc-2.3.2-200304020432/malloc/memusagestat.c Sun Mar 23 00:00:25 2003
+@@ -405,7 +405,7 @@
+ }
+
+
+- snprintf (buf, sizeof (buf), "%llu", total);
++ snprintf (buf, sizeof (buf), "%llu", (unsigned long long) total);
+ gdImageString (im_out, gdFontSmall, xsize - 50, ysize - 14, buf, blue);
+
+ if (!time_based)
+diff -u -udbrN glibc-2.3.2/malloc/mtrace.c glibc-2.3.2-200304020432/malloc/mtrace.c
+--- glibc-2.3.2/malloc/mtrace.c Tue Dec 31 22:18:43 2002
++++ glibc-2.3.2-200304020432/malloc/mtrace.c Mon Mar 10 10:12:11 2003
+@@ -1,5 +1,5 @@
+ /* More debugging hooks for `malloc'.
+- Copyright (C) 1991-1994,1996-2001,2002 Free Software Foundation, Inc.
++ Copyright (C) 1991-1994,1996-2001,2002, 2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Written April 2, 1991 by John Gilmore of Cygnus Support.
+ Based on mcheck.c by Mike Haertel.
+@@ -103,7 +103,7 @@
+ {
+ #ifdef HAVE_ELF
+ Dl_info info;
+- if (_dl_addr (caller, &info))
++ if (_dl_addr (caller, &info, NULL, NULL))
+ {
+ char *buf = (char *) "";
+ if (info.dli_sname != NULL)
+diff -u -udbrN glibc-2.3.2/malloc/set-freeres.c glibc-2.3.2-200304020432/malloc/set-freeres.c
+--- glibc-2.3.2/malloc/set-freeres.c Sat Nov 2 03:15:52 2002
++++ glibc-2.3.2-200304020432/malloc/set-freeres.c Fri Mar 21 08:45:55 2003
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1997, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
++/* Copyright (C) 1997,1999,2000,2001,2002,2003 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -16,7 +16,7 @@
+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA. */
+
+-#include <atomicity.h>
++#include <atomic.h>
+ #include <stdlib.h>
+ #include <set-hooks.h>
+ #include <libc-internal.h>
+@@ -36,7 +36,7 @@
+ protect for multiple executions since these are fatal. */
+ static long int already_called;
+
+- if (compare_and_swap (&already_called, 0, 1))
++ if (! atomic_compare_and_exchange_bool_acq (&already_called, 1, 0))
+ {
+ void * const *p;
+
+diff -u -udbrN glibc-2.3.2/manual/add.c.texi glibc-2.3.2-200304020432/manual/add.c.texi
+--- glibc-2.3.2/manual/add.c.texi Wed Dec 9 23:51:54 1998
++++ glibc-2.3.2-200304020432/manual/add.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,30 +0,0 @@
+-#include <stdarg.h>
+-#include <stdio.h>
+-
+-int
+-add_em_up (int count,...)
+-@{
+- va_list ap;
+- int i, sum;
+-
+- va_start (ap, count); /* @r{Initialize the argument list.} */
+-
+- sum = 0;
+- for (i = 0; i < count; i++)
+- sum += va_arg (ap, int); /* @r{Get the next argument value.} */
+-
+- va_end (ap); /* @r{Clean up.} */
+- return sum;
+-@}
+-
+-int
+-main (void)
+-@{
+- /* @r{This call prints 16.} */
+- printf ("%d\n", add_em_up (3, 5, 5, 6));
+-
+- /* @r{This call prints 55.} */
+- printf ("%d\n", add_em_up (10, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10));
+-
+- return 0;
+-@}
+diff -u -udbrN glibc-2.3.2/manual/argp-ex1.c.texi glibc-2.3.2-200304020432/manual/argp-ex1.c.texi
+--- glibc-2.3.2/manual/argp-ex1.c.texi Wed Dec 9 23:51:53 1998
++++ glibc-2.3.2-200304020432/manual/argp-ex1.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,14 +0,0 @@
+-/* @r{Argp example #1 -- a minimal program using argp} */
+-
+-/* @r{This is (probably) the smallest possible program that
+- uses argp. It won't do much except give an error
+- messages and exit when there are any arguments, and print
+- a (rather pointless) messages for --help.} */
+-
+-#include <argp.h>
+-
+-int main (int argc, char **argv)
+-@{
+- argp_parse (0, argc, argv, 0, 0, 0);
+- exit (0);
+-@}
+diff -u -udbrN glibc-2.3.2/manual/argp-ex2.c.texi glibc-2.3.2-200304020432/manual/argp-ex2.c.texi
+--- glibc-2.3.2/manual/argp-ex2.c.texi Mon Nov 5 21:54:48 2001
++++ glibc-2.3.2-200304020432/manual/argp-ex2.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,44 +0,0 @@
+-/* @r{Argp example #2 -- a pretty minimal program using argp} */
+-
+-/* @r{This program doesn't use any options or arguments, but uses
+- argp to be compliant with the GNU standard command line
+- format.
+-
+- In addition to making sure no arguments are given, and
+- implementing a --help option, this example will have a
+- --version option, and will put the given documentation string
+- and bug address in the --help output, as per GNU standards.
+-
+- The variable ARGP contains the argument parser specification;
+- adding fields to this structure is the way most parameters are
+- passed to argp_parse (the first three fields are usually used,
+- but not in this small program). There are also two global
+- variables that argp knows about defined here,
+- ARGP_PROGRAM_VERSION and ARGP_PROGRAM_BUG_ADDRESS (they are
+- global variables because they will almost always be constant
+- for a given program, even if it uses different argument
+- parsers for various tasks).} */
+-
+-#include <argp.h>
+-
+-const char *argp_program_version =
+- "argp-ex2 1.0";
+-const char *argp_program_bug_address =
+- "<bug-gnu-utils@@gnu.org>";
+-
+-/* @r{Program documentation.} */
+-static char doc[] =
+- "Argp example #2 -- a pretty minimal program using argp";
+-
+-/* @r{Our argument parser. The @code{options}, @code{parser}, and
+- @code{args_doc} fields are zero because we have neither options or
+- arguments; @code{doc} and @code{argp_program_bug_address} will be
+- used in the output for @samp{--help}, and the @samp{--version}
+- option will print out @code{argp_program_version}.} */
+-static struct argp argp = @{ 0, 0, 0, doc @};
+-
+-int main (int argc, char **argv)
+-@{
+- argp_parse (&argp, argc, argv, 0, 0, 0);
+- exit (0);
+-@}
+diff -u -udbrN glibc-2.3.2/manual/argp-ex3.c.texi glibc-2.3.2-200304020432/manual/argp-ex3.c.texi
+--- glibc-2.3.2/manual/argp-ex3.c.texi Tue Feb 22 09:35:05 2000
++++ glibc-2.3.2-200304020432/manual/argp-ex3.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,152 +0,0 @@
+-/* @r{Argp example #3 -- a program with options and arguments using argp} */
+-
+-/* @r{This program uses the same features as example 2, and uses options and
+- arguments.
+-
+- We now use the first four fields in ARGP, so here's a description of them:
+- OPTIONS -- A pointer to a vector of struct argp_option (see below)
+- PARSER -- A function to parse a single option, called by argp
+- ARGS_DOC -- A string describing how the non-option arguments should look
+- DOC -- A descriptive string about this program; if it contains a
+- vertical tab character (\v), the part after it will be
+- printed *following* the options
+-
+- The function PARSER takes the following arguments:
+- KEY -- An integer specifying which option this is (taken
+- from the KEY field in each struct argp_option), or
+- a special key specifying something else; the only
+- special keys we use here are ARGP_KEY_ARG, meaning
+- a non-option argument, and ARGP_KEY_END, meaning
+- that all arguments have been parsed
+- ARG -- For an option KEY, the string value of its
+- argument, or NULL if it has none
+- STATE-- A pointer to a struct argp_state, containing
+- various useful information about the parsing state; used here
+- are the INPUT field, which reflects the INPUT argument to
+- argp_parse, and the ARG_NUM field, which is the number of the
+- current non-option argument being parsed
+- It should return either 0, meaning success, ARGP_ERR_UNKNOWN, meaning the
+- given KEY wasn't recognized, or an errno value indicating some other
+- error.
+-
+- Note that in this example, main uses a structure to communicate with the
+- parse_opt function, a pointer to which it passes in the INPUT argument to
+- argp_parse. Of course, it's also possible to use global variables
+- instead, but this is somewhat more flexible.
+-
+- The OPTIONS field contains a pointer to a vector of struct argp_option's;
+- that structure has the following fields (if you assign your option
+- structures using array initialization like this example, unspecified
+- fields will be defaulted to 0, and need not be specified):
+- NAME -- The name of this option's long option (may be zero)
+- KEY -- The KEY to pass to the PARSER function when parsing this option,
+- *and* the name of this option's short option, if it is a
+- printable ascii character
+- ARG -- The name of this option's argument, if any
+- FLAGS -- Flags describing this option; some of them are:
+- OPTION_ARG_OPTIONAL -- The argument to this option is optional
+- OPTION_ALIAS -- This option is an alias for the
+- previous option
+- OPTION_HIDDEN -- Don't show this option in --help output
+- DOC -- A documentation string for this option, shown in --help output
+-
+- An options vector should be terminated by an option with all fields zero.} */
+-
+-#include <argp.h>
+-
+-const char *argp_program_version =
+- "argp-ex3 1.0";
+-const char *argp_program_bug_address =
+- "<bug-gnu-utils@@gnu.org>";
+-
+-/* @r{Program documentation.} */
+-static char doc[] =
+- "Argp example #3 -- a program with options and arguments using argp";
+-
+-/* @r{A description of the arguments we accept.} */
+-static char args_doc[] = "ARG1 ARG2";
+-
+-/* @r{The options we understand.} */
+-static struct argp_option options[] = @{
+- @{"verbose", 'v', 0, 0, "Produce verbose output" @},
+- @{"quiet", 'q', 0, 0, "Don't produce any output" @},
+- @{"silent", 's', 0, OPTION_ALIAS @},
+- @{"output", 'o', "FILE", 0,
+- "Output to FILE instead of standard output" @},
+- @{ 0 @}
+-@};
+-
+-/* @r{Used by @code{main} to communicate with @code{parse_opt}.} */
+-struct arguments
+-@{
+- char *args[2]; /* @r{@var{arg1} & @var{arg2}} */
+- int silent, verbose;
+- char *output_file;
+-@};
+-
+-/* @r{Parse a single option.} */
+-static error_t
+-parse_opt (int key, char *arg, struct argp_state *state)
+-@{
+- /* @r{Get the @var{input} argument from @code{argp_parse}, which we
+- know is a pointer to our arguments structure.} */
+- struct arguments *arguments = state->input;
+-
+- switch (key)
+- @{
+- case 'q': case 's':
+- arguments->silent = 1;
+- break;
+- case 'v':
+- arguments->verbose = 1;
+- break;
+- case 'o':
+- arguments->output_file = arg;
+- break;
+-
+- case ARGP_KEY_ARG:
+- if (state->arg_num >= 2)
+- /* @r{Too many arguments.} */
+- argp_usage (state);
+-
+- arguments->args[state->arg_num] = arg;
+-
+- break;
+-
+- case ARGP_KEY_END:
+- if (state->arg_num < 2)
+- /* @r{Not enough arguments.} */
+- argp_usage (state);
+- break;
+-
+- default:
+- return ARGP_ERR_UNKNOWN;
+- @}
+- return 0;
+-@}
+-
+-/* @r{Our argp parser.} */
+-static struct argp argp = @{ options, parse_opt, args_doc, doc @};
+-
+-int main (int argc, char **argv)
+-@{
+- struct arguments arguments;
+-
+- /* @r{Default values.} */
+- arguments.silent = 0;
+- arguments.verbose = 0;
+- arguments.output_file = "-";
+-
+- /* @r{Parse our arguments; every option seen by @code{parse_opt} will
+- be reflected in @code{arguments}.} */
+- argp_parse (&argp, argc, argv, 0, 0, &arguments);
+-
+- printf ("ARG1 = %s\nARG2 = %s\nOUTPUT_FILE = %s\n"
+- "VERBOSE = %s\nSILENT = %s\n",
+- arguments.args[0], arguments.args[1],
+- arguments.output_file,
+- arguments.verbose ? "yes" : "no",
+- arguments.silent ? "yes" : "no");
+-
+- exit (0);
+-@}
+diff -u -udbrN glibc-2.3.2/manual/argp-ex4.c.texi glibc-2.3.2-200304020432/manual/argp-ex4.c.texi
+--- glibc-2.3.2/manual/argp-ex4.c.texi Tue Feb 22 09:35:05 2000
++++ glibc-2.3.2-200304020432/manual/argp-ex4.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,167 +0,0 @@
+-/* @r{Argp example #4 -- a program with somewhat more complicated options} */
+-
+-/* @r{This program uses the same features as example 3, but has more
+- options, and somewhat more structure in the -help output. It
+- also shows how you can `steal' the remainder of the input
+- arguments past a certain point, for programs that accept a
+- list of items. It also shows the special argp KEY value
+- ARGP_KEY_NO_ARGS, which is only given if no non-option
+- arguments were supplied to the program.
+-
+- For structuring the help output, two features are used,
+- *headers* which are entries in the options vector with the
+- first four fields being zero, and a two part documentation
+- string (in the variable DOC), which allows documentation both
+- before and after the options; the two parts of DOC are
+- separated by a vertical-tab character ('\v', or '\013'). By
+- convention, the documentation before the options is just a
+- short string saying what the program does, and that afterwards
+- is longer, describing the behavior in more detail. All
+- documentation strings are automatically filled for output,
+- although newlines may be included to force a line break at a
+- particular point. All documentation strings are also passed to
+- the `gettext' function, for possible translation into the
+- current locale.} */
+-
+-#include <stdlib.h>
+-#include <error.h>
+-#include <argp.h>
+-
+-const char *argp_program_version =
+- "argp-ex4 1.0";
+-const char *argp_program_bug_address =
+- "<bug-gnu-utils@@prep.ai.mit.edu>";
+-
+-/* @r{Program documentation.} */
+-static char doc[] =
+- "Argp example #4 -- a program with somewhat more complicated\
+-options\
+-\vThis part of the documentation comes *after* the options;\
+- note that the text is automatically filled, but it's possible\
+- to force a line-break, e.g.\n<-- here.";
+-
+-/* @r{A description of the arguments we accept.} */
+-static char args_doc[] = "ARG1 [STRING...]";
+-
+-/* @r{Keys for options without short-options.} */
+-#define OPT_ABORT 1 /* @r{--abort} */
+-
+-/* @r{The options we understand.} */
+-static struct argp_option options[] = @{
+- @{"verbose", 'v', 0, 0, "Produce verbose output" @},
+- @{"quiet", 'q', 0, 0, "Don't produce any output" @},
+- @{"silent", 's', 0, OPTION_ALIAS @},
+- @{"output", 'o', "FILE", 0,
+- "Output to FILE instead of standard output" @},
+-
+- @{0,0,0,0, "The following options should be grouped together:" @},
+- @{"repeat", 'r', "COUNT", OPTION_ARG_OPTIONAL,
+- "Repeat the output COUNT (default 10) times"@},
+- @{"abort", OPT_ABORT, 0, 0, "Abort before showing any output"@},
+-
+- @{ 0 @}
+-@};
+-
+-/* @r{Used by @code{main} to communicate with @code{parse_opt}.} */
+-struct arguments
+-@{
+- char *arg1; /* @r{@var{arg1}} */
+- char **strings; /* @r{[@var{string}@dots{}]} */
+- int silent, verbose, abort; /* @r{@samp{-s}, @samp{-v}, @samp{--abort}} */
+- char *output_file; /* @r{@var{file} arg to @samp{--output}} */
+- int repeat_count; /* @r{@var{count} arg to @samp{--repeat}} */
+-@};
+-
+-/* @r{Parse a single option.} */
+-static error_t
+-parse_opt (int key, char *arg, struct argp_state *state)
+-@{
+- /* @r{Get the @code{input} argument from @code{argp_parse}, which we
+- know is a pointer to our arguments structure.} */
+- struct arguments *arguments = state->input;
+-
+- switch (key)
+- @{
+- case 'q': case 's':
+- arguments->silent = 1;
+- break;
+- case 'v':
+- arguments->verbose = 1;
+- break;
+- case 'o':
+- arguments->output_file = arg;
+- break;
+- case 'r':
+- arguments->repeat_count = arg ? atoi (arg) : 10;
+- break;
+- case OPT_ABORT:
+- arguments->abort = 1;
+- break;
+-
+- case ARGP_KEY_NO_ARGS:
+- argp_usage (state);
+-
+- case ARGP_KEY_ARG:
+- /* @r{Here we know that @code{state->arg_num == 0}, since we
+- force argument parsing to end before any more arguments can
+- get here.} */
+- arguments->arg1 = arg;
+-
+- /* @r{Now we consume all the rest of the arguments.
+- @code{state->next} is the index in @code{state->argv} of the
+- next argument to be parsed, which is the first @var{string}
+- we're interested in, so we can just use
+- @code{&state->argv[state->next]} as the value for
+- arguments->strings.
+-
+- @emph{In addition}, by setting @code{state->next} to the end
+- of the arguments, we can force argp to stop parsing here and
+- return.} */
+- arguments->strings = &state->argv[state->next];
+- state->next = state->argc;
+-
+- break;
+-
+- default:
+- return ARGP_ERR_UNKNOWN;
+- @}
+- return 0;
+-@}
+-
+-/* @r{Our argp parser.} */
+-static struct argp argp = @{ options, parse_opt, args_doc, doc @};
+-
+-int main (int argc, char **argv)
+-@{
+- int i, j;
+- struct arguments arguments;
+-
+- /* @r{Default values.} */
+- arguments.silent = 0;
+- arguments.verbose = 0;
+- arguments.output_file = "-";
+- arguments.repeat_count = 1;
+- arguments.abort = 0;
+-
+- /* @r{Parse our arguments; every option seen by @code{parse_opt} will be
+- reflected in @code{arguments}.} */
+- argp_parse (&argp, argc, argv, 0, 0, &arguments);
+-
+- if (arguments.abort)
+- error (10, 0, "ABORTED");
+-
+- for (i = 0; i < arguments.repeat_count; i++)
+- @{
+- printf ("ARG1 = %s\n", arguments.arg1);
+- printf ("STRINGS = ");
+- for (j = 0; arguments.strings[j]; j++)
+- printf (j == 0 ? "%s" : ", %s", arguments.strings[j]);
+- printf ("\n");
+- printf ("OUTPUT_FILE = %s\nVERBOSE = %s\nSILENT = %s\n",
+- arguments.output_file,
+- arguments.verbose ? "yes" : "no",
+- arguments.silent ? "yes" : "no");
+- @}
+-
+- exit (0);
+-@}
+diff -u -udbrN glibc-2.3.2/manual/atexit.c.texi glibc-2.3.2-200304020432/manual/atexit.c.texi
+--- glibc-2.3.2/manual/atexit.c.texi Wed Dec 9 23:51:54 1998
++++ glibc-2.3.2-200304020432/manual/atexit.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,15 +0,0 @@
+-#include <stdio.h>
+-#include <stdlib.h>
+-
+-void
+-bye (void)
+-@{
+- puts ("Goodbye, cruel world....");
+-@}
+-
+-int
+-main (void)
+-@{
+- atexit (bye);
+- exit (EXIT_SUCCESS);
+-@}
+diff -u -udbrN glibc-2.3.2/manual/db.c.texi glibc-2.3.2-200304020432/manual/db.c.texi
+--- glibc-2.3.2/manual/db.c.texi Wed Dec 9 23:51:54 1998
++++ glibc-2.3.2-200304020432/manual/db.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,52 +0,0 @@
+-#include <grp.h>
+-#include <pwd.h>
+-#include <sys/types.h>
+-#include <unistd.h>
+-#include <stdlib.h>
+-
+-int
+-main (void)
+-@{
+- uid_t me;
+- struct passwd *my_passwd;
+- struct group *my_group;
+- char **members;
+-
+- /* @r{Get information about the user ID.} */
+- me = getuid ();
+- my_passwd = getpwuid (me);
+- if (!my_passwd)
+- @{
+- printf ("Couldn't find out about user %d.\n", (int) me);
+- exit (EXIT_FAILURE);
+- @}
+-
+- /* @r{Print the information.} */
+- printf ("I am %s.\n", my_passwd->pw_gecos);
+- printf ("My login name is %s.\n", my_passwd->pw_name);
+- printf ("My uid is %d.\n", (int) (my_passwd->pw_uid));
+- printf ("My home directory is %s.\n", my_passwd->pw_dir);
+- printf ("My default shell is %s.\n", my_passwd->pw_shell);
+-
+- /* @r{Get information about the default group ID.} */
+- my_group = getgrgid (my_passwd->pw_gid);
+- if (!my_group)
+- @{
+- printf ("Couldn't find out about group %d.\n",
+- (int) my_passwd->pw_gid);
+- exit (EXIT_FAILURE);
+- @}
+-
+- /* @r{Print the information.} */
+- printf ("My default group is %s (%d).\n",
+- my_group->gr_name, (int) (my_passwd->pw_gid));
+- printf ("The members of this group are:\n");
+- members = my_group->gr_mem;
+- while (*members)
+- @{
+- printf (" %s\n", *(members));
+- members++;
+- @}
+-
+- return EXIT_SUCCESS;
+-@}
+diff -u -udbrN glibc-2.3.2/manual/dir-add.info glibc-2.3.2-200304020432/manual/dir-add.info
+--- glibc-2.3.2/manual/dir-add.info Sat Mar 1 02:39:41 2003
++++ glibc-2.3.2-200304020432/manual/dir-add.info Thu Jan 1 01:00:00 1970
+@@ -1,1707 +0,0 @@
+-INFO-DIR-SECTION GNU C library functions
+-START-INFO-DIR-ENTRY
+-* ALTWERASE: (libc)Local Modes.
+-* ARGP_ERR_UNKNOWN: (libc)Argp Parser Functions.
+-* ARG_MAX: (libc)General Limits.
+-* BC_BASE_MAX: (libc)Utility Limits.
+-* BC_DIM_MAX: (libc)Utility Limits.
+-* BC_SCALE_MAX: (libc)Utility Limits.
+-* BC_STRING_MAX: (libc)Utility Limits.
+-* BRKINT: (libc)Input Modes.
+-* BUFSIZ: (libc)Controlling Buffering.
+-* CCTS_OFLOW: (libc)Control Modes.
+-* CHILD_MAX: (libc)General Limits.
+-* CIGNORE: (libc)Control Modes.
+-* CLK_TCK: (libc)CPU Time.
+-* CLOCAL: (libc)Control Modes.
+-* CLOCKS_PER_SEC: (libc)CPU Time.
+-* COLL_WEIGHTS_MAX: (libc)Utility Limits.
+-* CREAD: (libc)Control Modes.
+-* CRTS_IFLOW: (libc)Control Modes.
+-* CS5: (libc)Control Modes.
+-* CS6: (libc)Control Modes.
+-* CS7: (libc)Control Modes.
+-* CS8: (libc)Control Modes.
+-* CSIZE: (libc)Control Modes.
+-* CSTOPB: (libc)Control Modes.
+-* DES_FAILED: (libc)DES Encryption.
+-* DTTOIF: (libc)Directory Entries.
+-* E2BIG: (libc)Error Codes.
+-* EACCES: (libc)Error Codes.
+-* EADDRINUSE: (libc)Error Codes.
+-* EADDRNOTAVAIL: (libc)Error Codes.
+-* EADV: (libc)Error Codes.
+-* EAFNOSUPPORT: (libc)Error Codes.
+-* EAGAIN: (libc)Error Codes.
+-* EALREADY: (libc)Error Codes.
+-* EAUTH: (libc)Error Codes.
+-* EBACKGROUND: (libc)Error Codes.
+-* EBADE: (libc)Error Codes.
+-* EBADF: (libc)Error Codes.
+-* EBADFD: (libc)Error Codes.
+-* EBADMSG: (libc)Error Codes.
+-* EBADR: (libc)Error Codes.
+-* EBADRPC: (libc)Error Codes.
+-* EBADRQC: (libc)Error Codes.
+-* EBADSLT: (libc)Error Codes.
+-* EBFONT: (libc)Error Codes.
+-* EBUSY: (libc)Error Codes.
+-* ECANCELED: (libc)Error Codes.
+-* ECHILD: (libc)Error Codes.
+-* ECHO: (libc)Local Modes.
+-* ECHOCTL: (libc)Local Modes.
+-* ECHOE: (libc)Local Modes.
+-* ECHOK: (libc)Local Modes.
+-* ECHOKE: (libc)Local Modes.
+-* ECHONL: (libc)Local Modes.
+-* ECHOPRT: (libc)Local Modes.
+-* ECHRNG: (libc)Error Codes.
+-* ECOMM: (libc)Error Codes.
+-* ECONNABORTED: (libc)Error Codes.
+-* ECONNREFUSED: (libc)Error Codes.
+-* ECONNRESET: (libc)Error Codes.
+-* ED: (libc)Error Codes.
+-* EDEADLK: (libc)Error Codes.
+-* EDEADLOCK: (libc)Error Codes.
+-* EDESTADDRREQ: (libc)Error Codes.
+-* EDIED: (libc)Error Codes.
+-* EDOM: (libc)Error Codes.
+-* EDOTDOT: (libc)Error Codes.
+-* EDQUOT: (libc)Error Codes.
+-* EEXIST: (libc)Error Codes.
+-* EFAULT: (libc)Error Codes.
+-* EFBIG: (libc)Error Codes.
+-* EFTYPE: (libc)Error Codes.
+-* EGRATUITOUS: (libc)Error Codes.
+-* EGREGIOUS: (libc)Error Codes.
+-* EHOSTDOWN: (libc)Error Codes.
+-* EHOSTUNREACH: (libc)Error Codes.
+-* EIDRM: (libc)Error Codes.
+-* EIEIO: (libc)Error Codes.
+-* EILSEQ: (libc)Error Codes.
+-* EINPROGRESS: (libc)Error Codes.
+-* EINTR: (libc)Error Codes.
+-* EINVAL: (libc)Error Codes.
+-* EIO: (libc)Error Codes.
+-* EISCONN: (libc)Error Codes.
+-* EISDIR: (libc)Error Codes.
+-* EISNAM: (libc)Error Codes.
+-* EL2HLT: (libc)Error Codes.
+-* EL2NSYNC: (libc)Error Codes.
+-* EL3HLT: (libc)Error Codes.
+-* EL3RST: (libc)Error Codes.
+-* ELIBACC: (libc)Error Codes.
+-* ELIBBAD: (libc)Error Codes.
+-* ELIBEXEC: (libc)Error Codes.
+-* ELIBMAX: (libc)Error Codes.
+-* ELIBSCN: (libc)Error Codes.
+-* ELNRNG: (libc)Error Codes.
+-* ELOOP: (libc)Error Codes.
+-* EMEDIUMTYPE: (libc)Error Codes.
+-* EMFILE: (libc)Error Codes.
+-* EMLINK: (libc)Error Codes.
+-* EMSGSIZE: (libc)Error Codes.
+-* EMULTIHOP: (libc)Error Codes.
+-* ENAMETOOLONG: (libc)Error Codes.
+-* ENAVAIL: (libc)Error Codes.
+-* ENEEDAUTH: (libc)Error Codes.
+-* ENETDOWN: (libc)Error Codes.
+-* ENETRESET: (libc)Error Codes.
+-* ENETUNREACH: (libc)Error Codes.
+-* ENFILE: (libc)Error Codes.
+-* ENOANO: (libc)Error Codes.
+-* ENOBUFS: (libc)Error Codes.
+-* ENOCSI: (libc)Error Codes.
+-* ENODATA: (libc)Error Codes.
+-* ENODEV: (libc)Error Codes.
+-* ENOENT: (libc)Error Codes.
+-* ENOEXEC: (libc)Error Codes.
+-* ENOLCK: (libc)Error Codes.
+-* ENOLINK: (libc)Error Codes.
+-* ENOMEDIUM: (libc)Error Codes.
+-* ENOMEM: (libc)Error Codes.
+-* ENOMSG: (libc)Error Codes.
+-* ENONET: (libc)Error Codes.
+-* ENOPKG: (libc)Error Codes.
+-* ENOPROTOOPT: (libc)Error Codes.
+-* ENOSPC: (libc)Error Codes.
+-* ENOSR: (libc)Error Codes.
+-* ENOSTR: (libc)Error Codes.
+-* ENOSYS: (libc)Error Codes.
+-* ENOTBLK: (libc)Error Codes.
+-* ENOTCONN: (libc)Error Codes.
+-* ENOTDIR: (libc)Error Codes.
+-* ENOTEMPTY: (libc)Error Codes.
+-* ENOTNAM: (libc)Error Codes.
+-* ENOTSOCK: (libc)Error Codes.
+-* ENOTSUP: (libc)Error Codes.
+-* ENOTTY: (libc)Error Codes.
+-* ENOTUNIQ: (libc)Error Codes.
+-* ENXIO: (libc)Error Codes.
+-* EOF: (libc)EOF and Errors.
+-* EOPNOTSUPP: (libc)Error Codes.
+-* EOVERFLOW: (libc)Error Codes.
+-* EPERM: (libc)Error Codes.
+-* EPFNOSUPPORT: (libc)Error Codes.
+-* EPIPE: (libc)Error Codes.
+-* EPROCLIM: (libc)Error Codes.
+-* EPROCUNAVAIL: (libc)Error Codes.
+-* EPROGMISMATCH: (libc)Error Codes.
+-* EPROGUNAVAIL: (libc)Error Codes.
+-* EPROTO: (libc)Error Codes.
+-* EPROTONOSUPPORT: (libc)Error Codes.
+-* EPROTOTYPE: (libc)Error Codes.
+-* EQUIV_CLASS_MAX: (libc)Utility Limits.
+-* ERANGE: (libc)Error Codes.
+-* EREMCHG: (libc)Error Codes.
+-* EREMOTE: (libc)Error Codes.
+-* EREMOTEIO: (libc)Error Codes.
+-* ERESTART: (libc)Error Codes.
+-* EROFS: (libc)Error Codes.
+-* ERPCMISMATCH: (libc)Error Codes.
+-* ESHUTDOWN: (libc)Error Codes.
+-* ESOCKTNOSUPPORT: (libc)Error Codes.
+-* ESPIPE: (libc)Error Codes.
+-* ESRCH: (libc)Error Codes.
+-* ESRMNT: (libc)Error Codes.
+-* ESTALE: (libc)Error Codes.
+-* ESTRPIPE: (libc)Error Codes.
+-* ETIME: (libc)Error Codes.
+-* ETIMEDOUT: (libc)Error Codes.
+-* ETOOMANYREFS: (libc)Error Codes.
+-* ETXTBSY: (libc)Error Codes.
+-* EUCLEAN: (libc)Error Codes.
+-* EUNATCH: (libc)Error Codes.
+-* EUSERS: (libc)Error Codes.
+-* EWOULDBLOCK: (libc)Error Codes.
+-* EXDEV: (libc)Error Codes.
+-* EXFULL: (libc)Error Codes.
+-* EXIT_FAILURE: (libc)Exit Status.
+-* EXIT_SUCCESS: (libc)Exit Status.
+-* EXPR_NEST_MAX: (libc)Utility Limits.
+-* FD_CLOEXEC: (libc)Descriptor Flags.
+-* FD_CLR: (libc)Waiting for I/O.
+-* FD_ISSET: (libc)Waiting for I/O.
+-* FD_SET: (libc)Waiting for I/O.
+-* FD_SETSIZE: (libc)Waiting for I/O.
+-* FD_ZERO: (libc)Waiting for I/O.
+-* FILENAME_MAX: (libc)Limits for Files.
+-* FLUSHO: (libc)Local Modes.
+-* FOPEN_MAX: (libc)Opening Streams.
+-* FP_ILOGB0: (libc)Exponents and Logarithms.
+-* FP_ILOGBNAN: (libc)Exponents and Logarithms.
+-* F_DUPFD: (libc)Duplicating Descriptors.
+-* F_GETFD: (libc)Descriptor Flags.
+-* F_GETFL: (libc)Getting File Status Flags.
+-* F_GETLK: (libc)File Locks.
+-* F_GETOWN: (libc)Interrupt Input.
+-* F_OK: (libc)Testing File Access.
+-* F_SETFD: (libc)Descriptor Flags.
+-* F_SETFL: (libc)Getting File Status Flags.
+-* F_SETLK: (libc)File Locks.
+-* F_SETLKW: (libc)File Locks.
+-* F_SETOWN: (libc)Interrupt Input.
+-* HUGE_VAL: (libc)Math Error Reporting.
+-* HUGE_VALF: (libc)Math Error Reporting.
+-* HUGE_VALL: (libc)Math Error Reporting.
+-* HUPCL: (libc)Control Modes.
+-* I: (libc)Complex Numbers.
+-* ICANON: (libc)Local Modes.
+-* ICRNL: (libc)Input Modes.
+-* IEXTEN: (libc)Local Modes.
+-* IFNAMSIZ: (libc)Interface Naming.
+-* IFTODT: (libc)Directory Entries.
+-* IGNBRK: (libc)Input Modes.
+-* IGNCR: (libc)Input Modes.
+-* IGNPAR: (libc)Input Modes.
+-* IMAXBEL: (libc)Input Modes.
+-* INADDR_ANY: (libc)Host Address Data Type.
+-* INADDR_BROADCAST: (libc)Host Address Data Type.
+-* INADDR_LOOPBACK: (libc)Host Address Data Type.
+-* INADDR_NONE: (libc)Host Address Data Type.
+-* INFINITY: (libc)Infinity and NaN.
+-* INLCR: (libc)Input Modes.
+-* INPCK: (libc)Input Modes.
+-* IPPORT_RESERVED: (libc)Ports.
+-* IPPORT_USERRESERVED: (libc)Ports.
+-* ISIG: (libc)Local Modes.
+-* ISTRIP: (libc)Input Modes.
+-* IXANY: (libc)Input Modes.
+-* IXOFF: (libc)Input Modes.
+-* IXON: (libc)Input Modes.
+-* LINE_MAX: (libc)Utility Limits.
+-* LINK_MAX: (libc)Limits for Files.
+-* L_ctermid: (libc)Identifying the Terminal.
+-* L_cuserid: (libc)Who Logged In.
+-* L_tmpnam: (libc)Temporary Files.
+-* MAXNAMLEN: (libc)Limits for Files.
+-* MAXSYMLINKS: (libc)Symbolic Links.
+-* MAX_CANON: (libc)Limits for Files.
+-* MAX_INPUT: (libc)Limits for Files.
+-* MB_CUR_MAX: (libc)Selecting the Conversion.
+-* MB_LEN_MAX: (libc)Selecting the Conversion.
+-* MDMBUF: (libc)Control Modes.
+-* MSG_DONTROUTE: (libc)Socket Data Options.
+-* MSG_OOB: (libc)Socket Data Options.
+-* MSG_PEEK: (libc)Socket Data Options.
+-* NAME_MAX: (libc)Limits for Files.
+-* NAN: (libc)Infinity and NaN.
+-* NCCS: (libc)Mode Data Types.
+-* NGROUPS_MAX: (libc)General Limits.
+-* NOFLSH: (libc)Local Modes.
+-* NOKERNINFO: (libc)Local Modes.
+-* NSIG: (libc)Standard Signals.
+-* NULL: (libc)Null Pointer Constant.
+-* ONLCR: (libc)Output Modes.
+-* ONOEOT: (libc)Output Modes.
+-* OPEN_MAX: (libc)General Limits.
+-* OPOST: (libc)Output Modes.
+-* OXTABS: (libc)Output Modes.
+-* O_ACCMODE: (libc)Access Modes.
+-* O_APPEND: (libc)Operating Modes.
+-* O_ASYNC: (libc)Operating Modes.
+-* O_CREAT: (libc)Open-time Flags.
+-* O_EXCL: (libc)Open-time Flags.
+-* O_EXEC: (libc)Access Modes.
+-* O_EXLOCK: (libc)Open-time Flags.
+-* O_FSYNC: (libc)Operating Modes.
+-* O_IGNORE_CTTY: (libc)Open-time Flags.
+-* O_NDELAY: (libc)Operating Modes.
+-* O_NOATIME: (libc)Operating Modes.
+-* O_NOCTTY: (libc)Open-time Flags.
+-* O_NOLINK: (libc)Open-time Flags.
+-* O_NONBLOCK: (libc)Open-time Flags.
+-* O_NONBLOCK: (libc)Operating Modes.
+-* O_NOTRANS: (libc)Open-time Flags.
+-* O_RDONLY: (libc)Access Modes.
+-* O_RDWR: (libc)Access Modes.
+-* O_READ: (libc)Access Modes.
+-* O_SHLOCK: (libc)Open-time Flags.
+-* O_SYNC: (libc)Operating Modes.
+-* O_TRUNC: (libc)Open-time Flags.
+-* O_WRITE: (libc)Access Modes.
+-* O_WRONLY: (libc)Access Modes.
+-* PARENB: (libc)Control Modes.
+-* PARMRK: (libc)Input Modes.
+-* PARODD: (libc)Control Modes.
+-* PATH_MAX: (libc)Limits for Files.
+-* PA_FLAG_MASK: (libc)Parsing a Template String.
+-* PENDIN: (libc)Local Modes.
+-* PF_FILE: (libc)Local Namespace Details.
+-* PF_INET6: (libc)Internet Namespace.
+-* PF_INET: (libc)Internet Namespace.
+-* PF_LOCAL: (libc)Local Namespace Details.
+-* PF_UNIX: (libc)Local Namespace Details.
+-* PIPE_BUF: (libc)Limits for Files.
+-* P_tmpdir: (libc)Temporary Files.
+-* RAND_MAX: (libc)ISO Random.
+-* RE_DUP_MAX: (libc)General Limits.
+-* RLIM_INFINITY: (libc)Limits on Resources.
+-* R_OK: (libc)Testing File Access.
+-* SA_NOCLDSTOP: (libc)Flags for Sigaction.
+-* SA_ONSTACK: (libc)Flags for Sigaction.
+-* SA_RESTART: (libc)Flags for Sigaction.
+-* SEEK_CUR: (libc)File Positioning.
+-* SEEK_END: (libc)File Positioning.
+-* SEEK_SET: (libc)File Positioning.
+-* SIGABRT: (libc)Program Error Signals.
+-* SIGALRM: (libc)Alarm Signals.
+-* SIGBUS: (libc)Program Error Signals.
+-* SIGCHLD: (libc)Job Control Signals.
+-* SIGCLD: (libc)Job Control Signals.
+-* SIGCONT: (libc)Job Control Signals.
+-* SIGEMT: (libc)Program Error Signals.
+-* SIGFPE: (libc)Program Error Signals.
+-* SIGHUP: (libc)Termination Signals.
+-* SIGILL: (libc)Program Error Signals.
+-* SIGINFO: (libc)Miscellaneous Signals.
+-* SIGINT: (libc)Termination Signals.
+-* SIGIO: (libc)Asynchronous I/O Signals.
+-* SIGIOT: (libc)Program Error Signals.
+-* SIGKILL: (libc)Termination Signals.
+-* SIGLOST: (libc)Operation Error Signals.
+-* SIGPIPE: (libc)Operation Error Signals.
+-* SIGPOLL: (libc)Asynchronous I/O Signals.
+-* SIGPROF: (libc)Alarm Signals.
+-* SIGQUIT: (libc)Termination Signals.
+-* SIGSEGV: (libc)Program Error Signals.
+-* SIGSTOP: (libc)Job Control Signals.
+-* SIGSYS: (libc)Program Error Signals.
+-* SIGTERM: (libc)Termination Signals.
+-* SIGTRAP: (libc)Program Error Signals.
+-* SIGTSTP: (libc)Job Control Signals.
+-* SIGTTIN: (libc)Job Control Signals.
+-* SIGTTOU: (libc)Job Control Signals.
+-* SIGURG: (libc)Asynchronous I/O Signals.
+-* SIGUSR1: (libc)Miscellaneous Signals.
+-* SIGUSR2: (libc)Miscellaneous Signals.
+-* SIGVTALRM: (libc)Alarm Signals.
+-* SIGWINCH: (libc)Miscellaneous Signals.
+-* SIGXCPU: (libc)Operation Error Signals.
+-* SIGXFSZ: (libc)Operation Error Signals.
+-* SIG_ERR: (libc)Basic Signal Handling.
+-* SOCK_DGRAM: (libc)Communication Styles.
+-* SOCK_RAW: (libc)Communication Styles.
+-* SOCK_RDM: (libc)Communication Styles.
+-* SOCK_SEQPACKET: (libc)Communication Styles.
+-* SOCK_STREAM: (libc)Communication Styles.
+-* SOL_SOCKET: (libc)Socket-Level Options.
+-* SSIZE_MAX: (libc)General Limits.
+-* STREAM_MAX: (libc)General Limits.
+-* SUN_LEN: (libc)Local Namespace Details.
+-* SV_INTERRUPT: (libc)BSD Handler.
+-* SV_ONSTACK: (libc)BSD Handler.
+-* SV_RESETHAND: (libc)BSD Handler.
+-* S_IFMT: (libc)Testing File Type.
+-* S_ISBLK: (libc)Testing File Type.
+-* S_ISCHR: (libc)Testing File Type.
+-* S_ISDIR: (libc)Testing File Type.
+-* S_ISFIFO: (libc)Testing File Type.
+-* S_ISLNK: (libc)Testing File Type.
+-* S_ISREG: (libc)Testing File Type.
+-* S_ISSOCK: (libc)Testing File Type.
+-* S_TYPEISMQ: (libc)Testing File Type.
+-* S_TYPEISSEM: (libc)Testing File Type.
+-* S_TYPEISSHM: (libc)Testing File Type.
+-* TMP_MAX: (libc)Temporary Files.
+-* TOSTOP: (libc)Local Modes.
+-* TZNAME_MAX: (libc)General Limits.
+-* VDISCARD: (libc)Other Special.
+-* VDSUSP: (libc)Signal Characters.
+-* VEOF: (libc)Editing Characters.
+-* VEOL2: (libc)Editing Characters.
+-* VEOL: (libc)Editing Characters.
+-* VERASE: (libc)Editing Characters.
+-* VINTR: (libc)Signal Characters.
+-* VKILL: (libc)Editing Characters.
+-* VLNEXT: (libc)Other Special.
+-* VMIN: (libc)Noncanonical Input.
+-* VQUIT: (libc)Signal Characters.
+-* VREPRINT: (libc)Editing Characters.
+-* VSTART: (libc)Start/Stop Characters.
+-* VSTATUS: (libc)Other Special.
+-* VSTOP: (libc)Start/Stop Characters.
+-* VSUSP: (libc)Signal Characters.
+-* VTIME: (libc)Noncanonical Input.
+-* VWERASE: (libc)Editing Characters.
+-* WCHAR_MAX: (libc)Extended Char Intro.
+-* WCHAR_MIN: (libc)Extended Char Intro.
+-* WCOREDUMP: (libc)Process Completion Status.
+-* WEOF: (libc)EOF and Errors.
+-* WEOF: (libc)Extended Char Intro.
+-* WEXITSTATUS: (libc)Process Completion Status.
+-* WIFEXITED: (libc)Process Completion Status.
+-* WIFSIGNALED: (libc)Process Completion Status.
+-* WIFSTOPPED: (libc)Process Completion Status.
+-* WSTOPSIG: (libc)Process Completion Status.
+-* WTERMSIG: (libc)Process Completion Status.
+-* W_OK: (libc)Testing File Access.
+-* X_OK: (libc)Testing File Access.
+-* _Complex_I: (libc)Complex Numbers.
+-* _Exit: (libc)Termination Internals.
+-* _IOFBF: (libc)Controlling Buffering.
+-* _IOLBF: (libc)Controlling Buffering.
+-* _IONBF: (libc)Controlling Buffering.
+-* _Imaginary_I: (libc)Complex Numbers.
+-* _PATH_UTMP: (libc)Manipulating the Database.
+-* _PATH_WTMP: (libc)Manipulating the Database.
+-* _POSIX2_C_DEV: (libc)System Options.
+-* _POSIX2_C_VERSION: (libc)Version Supported.
+-* _POSIX2_FORT_DEV: (libc)System Options.
+-* _POSIX2_FORT_RUN: (libc)System Options.
+-* _POSIX2_LOCALEDEF: (libc)System Options.
+-* _POSIX2_SW_DEV: (libc)System Options.
+-* _POSIX_CHOWN_RESTRICTED: (libc)Options for Files.
+-* _POSIX_JOB_CONTROL: (libc)System Options.
+-* _POSIX_NO_TRUNC: (libc)Options for Files.
+-* _POSIX_SAVED_IDS: (libc)System Options.
+-* _POSIX_VDISABLE: (libc)Options for Files.
+-* _POSIX_VERSION: (libc)Version Supported.
+-* __fbufsize: (libc)Controlling Buffering.
+-* __flbf: (libc)Controlling Buffering.
+-* __fpending: (libc)Controlling Buffering.
+-* __fpurge: (libc)Flushing Buffers.
+-* __freadable: (libc)Opening Streams.
+-* __freading: (libc)Opening Streams.
+-* __fsetlocking: (libc)Streams and Threads.
+-* __fwritable: (libc)Opening Streams.
+-* __fwriting: (libc)Opening Streams.
+-* __va_copy: (libc)Argument Macros.
+-* _exit: (libc)Termination Internals.
+-* _flushlbf: (libc)Flushing Buffers.
+-* _tolower: (libc)Case Conversion.
+-* _toupper: (libc)Case Conversion.
+-* a64l: (libc)Encode Binary Data.
+-* abort: (libc)Aborting a Program.
+-* abs: (libc)Absolute Value.
+-* accept: (libc)Accepting Connections.
+-* access: (libc)Testing File Access.
+-* acos: (libc)Inverse Trig Functions.
+-* acosf: (libc)Inverse Trig Functions.
+-* acosh: (libc)Hyperbolic Functions.
+-* acoshf: (libc)Hyperbolic Functions.
+-* acoshl: (libc)Hyperbolic Functions.
+-* acosl: (libc)Inverse Trig Functions.
+-* addmntent: (libc)mtab.
+-* addseverity: (libc)Adding Severity Classes.
+-* adjtime: (libc)High-Resolution Calendar.
+-* adjtimex: (libc)High-Resolution Calendar.
+-* aio_cancel64: (libc)Cancel AIO Operations.
+-* aio_cancel: (libc)Cancel AIO Operations.
+-* aio_error64: (libc)Status of AIO Operations.
+-* aio_error: (libc)Status of AIO Operations.
+-* aio_fsync64: (libc)Synchronizing AIO Operations.
+-* aio_fsync: (libc)Synchronizing AIO Operations.
+-* aio_init: (libc)Configuration of AIO.
+-* aio_read64: (libc)Asynchronous Reads/Writes.
+-* aio_read: (libc)Asynchronous Reads/Writes.
+-* aio_return64: (libc)Status of AIO Operations.
+-* aio_return: (libc)Status of AIO Operations.
+-* aio_suspend64: (libc)Synchronizing AIO Operations.
+-* aio_suspend: (libc)Synchronizing AIO Operations.
+-* aio_write64: (libc)Asynchronous Reads/Writes.
+-* aio_write: (libc)Asynchronous Reads/Writes.
+-* alarm: (libc)Setting an Alarm.
+-* alloca: (libc)Variable Size Automatic.
+-* alphasort64: (libc)Scanning Directory Content.
+-* alphasort: (libc)Scanning Directory Content.
+-* argp_error: (libc)Argp Helper Functions.
+-* argp_failure: (libc)Argp Helper Functions.
+-* argp_help: (libc)Argp Help.
+-* argp_parse: (libc)Argp.
+-* argp_state_help: (libc)Argp Helper Functions.
+-* argp_usage: (libc)Argp Helper Functions.
+-* argz_add: (libc)Argz Functions.
+-* argz_add_sep: (libc)Argz Functions.
+-* argz_append: (libc)Argz Functions.
+-* argz_count: (libc)Argz Functions.
+-* argz_create: (libc)Argz Functions.
+-* argz_create_sep: (libc)Argz Functions.
+-* argz_delete: (libc)Argz Functions.
+-* argz_extract: (libc)Argz Functions.
+-* argz_insert: (libc)Argz Functions.
+-* argz_next: (libc)Argz Functions.
+-* argz_replace: (libc)Argz Functions.
+-* argz_stringify: (libc)Argz Functions.
+-* asctime: (libc)Formatting Calendar Time.
+-* asctime_r: (libc)Formatting Calendar Time.
+-* asin: (libc)Inverse Trig Functions.
+-* asinf: (libc)Inverse Trig Functions.
+-* asinh: (libc)Hyperbolic Functions.
+-* asinhf: (libc)Hyperbolic Functions.
+-* asinhl: (libc)Hyperbolic Functions.
+-* asinl: (libc)Inverse Trig Functions.
+-* asprintf: (libc)Dynamic Output.
+-* assert: (libc)Consistency Checking.
+-* assert_perror: (libc)Consistency Checking.
+-* atan2: (libc)Inverse Trig Functions.
+-* atan2f: (libc)Inverse Trig Functions.
+-* atan2l: (libc)Inverse Trig Functions.
+-* atan: (libc)Inverse Trig Functions.
+-* atanf: (libc)Inverse Trig Functions.
+-* atanh: (libc)Hyperbolic Functions.
+-* atanhf: (libc)Hyperbolic Functions.
+-* atanhl: (libc)Hyperbolic Functions.
+-* atanl: (libc)Inverse Trig Functions.
+-* atexit: (libc)Cleanups on Exit.
+-* atof: (libc)Parsing of Floats.
+-* atoi: (libc)Parsing of Integers.
+-* atol: (libc)Parsing of Integers.
+-* atoll: (libc)Parsing of Integers.
+-* backtrace: (libc)Backtraces.
+-* backtrace_symbols: (libc)Backtraces.
+-* backtrace_symbols_fd: (libc)Backtraces.
+-* basename: (libc)Finding Tokens in a String.
+-* basename: (libc)Finding Tokens in a String.
+-* bcmp: (libc)String/Array Comparison.
+-* bcopy: (libc)Copying and Concatenation.
+-* bind: (libc)Setting Address.
+-* bind_textdomain_codeset: (libc)Charset conversion in gettext.
+-* bindtextdomain: (libc)Locating gettext catalog.
+-* brk: (libc)Resizing the Data Segment.
+-* bsearch: (libc)Array Search Function.
+-* btowc: (libc)Converting a Character.
+-* bzero: (libc)Copying and Concatenation.
+-* cabs: (libc)Absolute Value.
+-* cabsf: (libc)Absolute Value.
+-* cabsl: (libc)Absolute Value.
+-* cacos: (libc)Inverse Trig Functions.
+-* cacosf: (libc)Inverse Trig Functions.
+-* cacosh: (libc)Hyperbolic Functions.
+-* cacoshf: (libc)Hyperbolic Functions.
+-* cacoshl: (libc)Hyperbolic Functions.
+-* cacosl: (libc)Inverse Trig Functions.
+-* calloc: (libc)Allocating Cleared Space.
+-* canonicalize_file_name: (libc)Symbolic Links.
+-* carg: (libc)Operations on Complex.
+-* cargf: (libc)Operations on Complex.
+-* cargl: (libc)Operations on Complex.
+-* casin: (libc)Inverse Trig Functions.
+-* casinf: (libc)Inverse Trig Functions.
+-* casinh: (libc)Hyperbolic Functions.
+-* casinhf: (libc)Hyperbolic Functions.
+-* casinhl: (libc)Hyperbolic Functions.
+-* casinl: (libc)Inverse Trig Functions.
+-* catan: (libc)Inverse Trig Functions.
+-* catanf: (libc)Inverse Trig Functions.
+-* catanh: (libc)Hyperbolic Functions.
+-* catanhf: (libc)Hyperbolic Functions.
+-* catanhl: (libc)Hyperbolic Functions.
+-* catanl: (libc)Inverse Trig Functions.
+-* catclose: (libc)The catgets Functions.
+-* catgets: (libc)The catgets Functions.
+-* catopen: (libc)The catgets Functions.
+-* cbc_crypt: (libc)DES Encryption.
+-* cbrt: (libc)Exponents and Logarithms.
+-* cbrtf: (libc)Exponents and Logarithms.
+-* cbrtl: (libc)Exponents and Logarithms.
+-* ccos: (libc)Trig Functions.
+-* ccosf: (libc)Trig Functions.
+-* ccosh: (libc)Hyperbolic Functions.
+-* ccoshf: (libc)Hyperbolic Functions.
+-* ccoshl: (libc)Hyperbolic Functions.
+-* ccosl: (libc)Trig Functions.
+-* ceil: (libc)Rounding Functions.
+-* ceilf: (libc)Rounding Functions.
+-* ceill: (libc)Rounding Functions.
+-* cexp: (libc)Exponents and Logarithms.
+-* cexpf: (libc)Exponents and Logarithms.
+-* cexpl: (libc)Exponents and Logarithms.
+-* cfgetispeed: (libc)Line Speed.
+-* cfgetospeed: (libc)Line Speed.
+-* cfmakeraw: (libc)Noncanonical Input.
+-* cfree: (libc)Freeing after Malloc.
+-* cfsetispeed: (libc)Line Speed.
+-* cfsetospeed: (libc)Line Speed.
+-* cfsetspeed: (libc)Line Speed.
+-* chdir: (libc)Working Directory.
+-* chmod: (libc)Setting Permissions.
+-* chown: (libc)File Owner.
+-* cimag: (libc)Operations on Complex.
+-* cimagf: (libc)Operations on Complex.
+-* cimagl: (libc)Operations on Complex.
+-* clearenv: (libc)Environment Access.
+-* clearerr: (libc)Error Recovery.
+-* clearerr_unlocked: (libc)Error Recovery.
+-* clock: (libc)CPU Time.
+-* clog10: (libc)Exponents and Logarithms.
+-* clog10f: (libc)Exponents and Logarithms.
+-* clog10l: (libc)Exponents and Logarithms.
+-* clog: (libc)Exponents and Logarithms.
+-* clogf: (libc)Exponents and Logarithms.
+-* clogl: (libc)Exponents and Logarithms.
+-* close: (libc)Opening and Closing Files.
+-* closedir: (libc)Reading/Closing Directory.
+-* closelog: (libc)closelog.
+-* confstr: (libc)String Parameters.
+-* conj: (libc)Operations on Complex.
+-* conjf: (libc)Operations on Complex.
+-* conjl: (libc)Operations on Complex.
+-* connect: (libc)Connecting.
+-* copysign: (libc)FP Bit Twiddling.
+-* copysignf: (libc)FP Bit Twiddling.
+-* copysignl: (libc)FP Bit Twiddling.
+-* cos: (libc)Trig Functions.
+-* cosf: (libc)Trig Functions.
+-* cosh: (libc)Hyperbolic Functions.
+-* coshf: (libc)Hyperbolic Functions.
+-* coshl: (libc)Hyperbolic Functions.
+-* cosl: (libc)Trig Functions.
+-* cpow: (libc)Exponents and Logarithms.
+-* cpowf: (libc)Exponents and Logarithms.
+-* cpowl: (libc)Exponents and Logarithms.
+-* cproj: (libc)Operations on Complex.
+-* cprojf: (libc)Operations on Complex.
+-* cprojl: (libc)Operations on Complex.
+-* creal: (libc)Operations on Complex.
+-* crealf: (libc)Operations on Complex.
+-* creall: (libc)Operations on Complex.
+-* creat64: (libc)Opening and Closing Files.
+-* creat: (libc)Opening and Closing Files.
+-* crypt: (libc)crypt.
+-* crypt_r: (libc)crypt.
+-* csin: (libc)Trig Functions.
+-* csinf: (libc)Trig Functions.
+-* csinh: (libc)Hyperbolic Functions.
+-* csinhf: (libc)Hyperbolic Functions.
+-* csinhl: (libc)Hyperbolic Functions.
+-* csinl: (libc)Trig Functions.
+-* csqrt: (libc)Exponents and Logarithms.
+-* csqrtf: (libc)Exponents and Logarithms.
+-* csqrtl: (libc)Exponents and Logarithms.
+-* ctan: (libc)Trig Functions.
+-* ctanf: (libc)Trig Functions.
+-* ctanh: (libc)Hyperbolic Functions.
+-* ctanhf: (libc)Hyperbolic Functions.
+-* ctanhl: (libc)Hyperbolic Functions.
+-* ctanl: (libc)Trig Functions.
+-* ctermid: (libc)Identifying the Terminal.
+-* ctime: (libc)Formatting Calendar Time.
+-* ctime_r: (libc)Formatting Calendar Time.
+-* cuserid: (libc)Who Logged In.
+-* dcgettext: (libc)Translation with gettext.
+-* dcngettext: (libc)Advanced gettext functions.
+-* des_setparity: (libc)DES Encryption.
+-* dgettext: (libc)Translation with gettext.
+-* difftime: (libc)Elapsed Time.
+-* dirfd: (libc)Opening a Directory.
+-* dirname: (libc)Finding Tokens in a String.
+-* div: (libc)Integer Division.
+-* dngettext: (libc)Advanced gettext functions.
+-* drand48: (libc)SVID Random.
+-* drand48_r: (libc)SVID Random.
+-* drem: (libc)Remainder Functions.
+-* dremf: (libc)Remainder Functions.
+-* dreml: (libc)Remainder Functions.
+-* dup2: (libc)Duplicating Descriptors.
+-* dup: (libc)Duplicating Descriptors.
+-* ecb_crypt: (libc)DES Encryption.
+-* ecvt: (libc)System V Number Conversion.
+-* ecvt_r: (libc)System V Number Conversion.
+-* encrypt: (libc)DES Encryption.
+-* encrypt_r: (libc)DES Encryption.
+-* endfsent: (libc)fstab.
+-* endgrent: (libc)Scanning All Groups.
+-* endhostent: (libc)Host Names.
+-* endmntent: (libc)mtab.
+-* endnetent: (libc)Networks Database.
+-* endnetgrent: (libc)Lookup Netgroup.
+-* endprotoent: (libc)Protocols Database.
+-* endpwent: (libc)Scanning All Users.
+-* endservent: (libc)Services Database.
+-* endutent: (libc)Manipulating the Database.
+-* endutxent: (libc)XPG Functions.
+-* envz_add: (libc)Envz Functions.
+-* envz_entry: (libc)Envz Functions.
+-* envz_get: (libc)Envz Functions.
+-* envz_merge: (libc)Envz Functions.
+-* envz_strip: (libc)Envz Functions.
+-* erand48: (libc)SVID Random.
+-* erand48_r: (libc)SVID Random.
+-* erf: (libc)Special Functions.
+-* erfc: (libc)Special Functions.
+-* erfcf: (libc)Special Functions.
+-* erfcl: (libc)Special Functions.
+-* erff: (libc)Special Functions.
+-* erfl: (libc)Special Functions.
+-* err: (libc)Error Messages.
+-* errno: (libc)Checking for Errors.
+-* error: (libc)Error Messages.
+-* error_at_line: (libc)Error Messages.
+-* errx: (libc)Error Messages.
+-* execl: (libc)Executing a File.
+-* execle: (libc)Executing a File.
+-* execlp: (libc)Executing a File.
+-* execv: (libc)Executing a File.
+-* execve: (libc)Executing a File.
+-* execvp: (libc)Executing a File.
+-* exit: (libc)Normal Termination.
+-* exp10: (libc)Exponents and Logarithms.
+-* exp10f: (libc)Exponents and Logarithms.
+-* exp10l: (libc)Exponents and Logarithms.
+-* exp2: (libc)Exponents and Logarithms.
+-* exp2f: (libc)Exponents and Logarithms.
+-* exp2l: (libc)Exponents and Logarithms.
+-* exp: (libc)Exponents and Logarithms.
+-* expf: (libc)Exponents and Logarithms.
+-* expl: (libc)Exponents and Logarithms.
+-* expm1: (libc)Exponents and Logarithms.
+-* expm1f: (libc)Exponents and Logarithms.
+-* expm1l: (libc)Exponents and Logarithms.
+-* fabs: (libc)Absolute Value.
+-* fabsf: (libc)Absolute Value.
+-* fabsl: (libc)Absolute Value.
+-* fchdir: (libc)Working Directory.
+-* fchmod: (libc)Setting Permissions.
+-* fchown: (libc)File Owner.
+-* fclean: (libc)Cleaning Streams.
+-* fclose: (libc)Closing Streams.
+-* fcloseall: (libc)Closing Streams.
+-* fcntl: (libc)Control Operations.
+-* fcvt: (libc)System V Number Conversion.
+-* fcvt_r: (libc)System V Number Conversion.
+-* fdatasync: (libc)Synchronizing I/O.
+-* fdim: (libc)Misc FP Arithmetic.
+-* fdimf: (libc)Misc FP Arithmetic.
+-* fdiml: (libc)Misc FP Arithmetic.
+-* fdopen: (libc)Descriptors and Streams.
+-* feclearexcept: (libc)Status bit operations.
+-* fedisableexcept: (libc)Control Functions.
+-* feenableexcept: (libc)Control Functions.
+-* fegetenv: (libc)Control Functions.
+-* fegetexcept: (libc)Control Functions.
+-* fegetexceptflag: (libc)Status bit operations.
+-* fegetround: (libc)Rounding.
+-* feholdexcept: (libc)Control Functions.
+-* feof: (libc)EOF and Errors.
+-* feof_unlocked: (libc)EOF and Errors.
+-* feraiseexcept: (libc)Status bit operations.
+-* ferror: (libc)EOF and Errors.
+-* ferror_unlocked: (libc)EOF and Errors.
+-* fesetenv: (libc)Control Functions.
+-* fesetexceptflag: (libc)Status bit operations.
+-* fesetround: (libc)Rounding.
+-* fetestexcept: (libc)Status bit operations.
+-* feupdateenv: (libc)Control Functions.
+-* fflush: (libc)Flushing Buffers.
+-* fflush_unlocked: (libc)Flushing Buffers.
+-* fgetc: (libc)Character Input.
+-* fgetc_unlocked: (libc)Character Input.
+-* fgetgrent: (libc)Scanning All Groups.
+-* fgetgrent_r: (libc)Scanning All Groups.
+-* fgetpos64: (libc)Portable Positioning.
+-* fgetpos: (libc)Portable Positioning.
+-* fgetpwent: (libc)Scanning All Users.
+-* fgetpwent_r: (libc)Scanning All Users.
+-* fgets: (libc)Line Input.
+-* fgets_unlocked: (libc)Line Input.
+-* fgetwc: (libc)Character Input.
+-* fgetwc_unlocked: (libc)Character Input.
+-* fgetws: (libc)Line Input.
+-* fgetws_unlocked: (libc)Line Input.
+-* fileno: (libc)Descriptors and Streams.
+-* fileno_unlocked: (libc)Descriptors and Streams.
+-* finite: (libc)Floating Point Classes.
+-* finitef: (libc)Floating Point Classes.
+-* finitel: (libc)Floating Point Classes.
+-* flockfile: (libc)Streams and Threads.
+-* floor: (libc)Rounding Functions.
+-* floorf: (libc)Rounding Functions.
+-* floorl: (libc)Rounding Functions.
+-* fma: (libc)Misc FP Arithmetic.
+-* fmaf: (libc)Misc FP Arithmetic.
+-* fmal: (libc)Misc FP Arithmetic.
+-* fmax: (libc)Misc FP Arithmetic.
+-* fmaxf: (libc)Misc FP Arithmetic.
+-* fmaxl: (libc)Misc FP Arithmetic.
+-* fmemopen: (libc)String Streams.
+-* fmin: (libc)Misc FP Arithmetic.
+-* fminf: (libc)Misc FP Arithmetic.
+-* fminl: (libc)Misc FP Arithmetic.
+-* fmod: (libc)Remainder Functions.
+-* fmodf: (libc)Remainder Functions.
+-* fmodl: (libc)Remainder Functions.
+-* fmtmsg: (libc)Printing Formatted Messages.
+-* fnmatch: (libc)Wildcard Matching.
+-* fopen64: (libc)Opening Streams.
+-* fopen: (libc)Opening Streams.
+-* fopencookie: (libc)Streams and Cookies.
+-* fork: (libc)Creating a Process.
+-* forkpty: (libc)Pseudo-Terminal Pairs.
+-* fpathconf: (libc)Pathconf.
+-* fpclassify: (libc)Floating Point Classes.
+-* fprintf: (libc)Formatted Output Functions.
+-* fputc: (libc)Simple Output.
+-* fputc_unlocked: (libc)Simple Output.
+-* fputs: (libc)Simple Output.
+-* fputs_unlocked: (libc)Simple Output.
+-* fputwc: (libc)Simple Output.
+-* fputwc_unlocked: (libc)Simple Output.
+-* fputws: (libc)Simple Output.
+-* fputws_unlocked: (libc)Simple Output.
+-* fread: (libc)Block Input/Output.
+-* fread_unlocked: (libc)Block Input/Output.
+-* free: (libc)Freeing after Malloc.
+-* freopen64: (libc)Opening Streams.
+-* freopen: (libc)Opening Streams.
+-* frexp: (libc)Normalization Functions.
+-* frexpf: (libc)Normalization Functions.
+-* frexpl: (libc)Normalization Functions.
+-* fscanf: (libc)Formatted Input Functions.
+-* fseek: (libc)File Positioning.
+-* fseeko64: (libc)File Positioning.
+-* fseeko: (libc)File Positioning.
+-* fsetpos64: (libc)Portable Positioning.
+-* fsetpos: (libc)Portable Positioning.
+-* fstat64: (libc)Reading Attributes.
+-* fstat: (libc)Reading Attributes.
+-* fsync: (libc)Synchronizing I/O.
+-* ftell: (libc)File Positioning.
+-* ftello64: (libc)File Positioning.
+-* ftello: (libc)File Positioning.
+-* ftruncate64: (libc)File Size.
+-* ftruncate: (libc)File Size.
+-* ftrylockfile: (libc)Streams and Threads.
+-* ftw64: (libc)Working with Directory Trees.
+-* ftw: (libc)Working with Directory Trees.
+-* funlockfile: (libc)Streams and Threads.
+-* futimes: (libc)File Times.
+-* fwide: (libc)Streams and I18N.
+-* fwprintf: (libc)Formatted Output Functions.
+-* fwrite: (libc)Block Input/Output.
+-* fwrite_unlocked: (libc)Block Input/Output.
+-* fwscanf: (libc)Formatted Input Functions.
+-* gamma: (libc)Special Functions.
+-* gammaf: (libc)Special Functions.
+-* gammal: (libc)Special Functions.
+-* gcvt: (libc)System V Number Conversion.
+-* get_avphys_pages: (libc)Query Memory Parameters.
+-* get_current_dir_name: (libc)Working Directory.
+-* get_nprocs: (libc)Processor Resources.
+-* get_nprocs_conf: (libc)Processor Resources.
+-* get_phys_pages: (libc)Query Memory Parameters.
+-* getc: (libc)Character Input.
+-* getc_unlocked: (libc)Character Input.
+-* getchar: (libc)Character Input.
+-* getchar_unlocked: (libc)Character Input.
+-* getcontext: (libc)System V contexts.
+-* getcwd: (libc)Working Directory.
+-* getdate: (libc)General Time String Parsing.
+-* getdate_r: (libc)General Time String Parsing.
+-* getdelim: (libc)Line Input.
+-* getdomainnname: (libc)Host Identification.
+-* getegid: (libc)Reading Persona.
+-* getenv: (libc)Environment Access.
+-* geteuid: (libc)Reading Persona.
+-* getfsent: (libc)fstab.
+-* getfsfile: (libc)fstab.
+-* getfsspec: (libc)fstab.
+-* getgid: (libc)Reading Persona.
+-* getgrent: (libc)Scanning All Groups.
+-* getgrent_r: (libc)Scanning All Groups.
+-* getgrgid: (libc)Lookup Group.
+-* getgrgid_r: (libc)Lookup Group.
+-* getgrnam: (libc)Lookup Group.
+-* getgrnam_r: (libc)Lookup Group.
+-* getgrouplist: (libc)Setting Groups.
+-* getgroups: (libc)Reading Persona.
+-* gethostbyaddr: (libc)Host Names.
+-* gethostbyaddr_r: (libc)Host Names.
+-* gethostbyname2: (libc)Host Names.
+-* gethostbyname2_r: (libc)Host Names.
+-* gethostbyname: (libc)Host Names.
+-* gethostbyname_r: (libc)Host Names.
+-* gethostent: (libc)Host Names.
+-* gethostid: (libc)Host Identification.
+-* gethostname: (libc)Host Identification.
+-* getitimer: (libc)Setting an Alarm.
+-* getline: (libc)Line Input.
+-* getloadavg: (libc)Processor Resources.
+-* getlogin: (libc)Who Logged In.
+-* getmntent: (libc)mtab.
+-* getmntent_r: (libc)mtab.
+-* getnetbyaddr: (libc)Networks Database.
+-* getnetbyname: (libc)Networks Database.
+-* getnetent: (libc)Networks Database.
+-* getnetgrent: (libc)Lookup Netgroup.
+-* getnetgrent_r: (libc)Lookup Netgroup.
+-* getopt: (libc)Using Getopt.
+-* getopt_long: (libc)Getopt Long Options.
+-* getopt_long_only: (libc)Getopt Long Options.
+-* getpagesize: (libc)Query Memory Parameters.
+-* getpass: (libc)getpass.
+-* getpeername: (libc)Who is Connected.
+-* getpgid: (libc)Process Group Functions.
+-* getpgrp: (libc)Process Group Functions.
+-* getpgrp: (libc)Process Group Functions.
+-* getpid: (libc)Process Identification.
+-* getppid: (libc)Process Identification.
+-* getpriority: (libc)Traditional Scheduling Functions.
+-* getprotobyname: (libc)Protocols Database.
+-* getprotobynumber: (libc)Protocols Database.
+-* getprotoent: (libc)Protocols Database.
+-* getpt: (libc)Allocation.
+-* getpwent: (libc)Scanning All Users.
+-* getpwent_r: (libc)Scanning All Users.
+-* getpwnam: (libc)Lookup User.
+-* getpwnam_r: (libc)Lookup User.
+-* getpwuid: (libc)Lookup User.
+-* getpwuid_r: (libc)Lookup User.
+-* getrlimit64: (libc)Limits on Resources.
+-* getrlimit: (libc)Limits on Resources.
+-* getrusage: (libc)Resource Usage.
+-* gets: (libc)Line Input.
+-* getservbyname: (libc)Services Database.
+-* getservbyport: (libc)Services Database.
+-* getservent: (libc)Services Database.
+-* getsid: (libc)Process Group Functions.
+-* getsockname: (libc)Reading Address.
+-* getsockopt: (libc)Socket Option Functions.
+-* getsubopt: (libc)Suboptions.
+-* gettext: (libc)Translation with gettext.
+-* gettimeofday: (libc)High-Resolution Calendar.
+-* getuid: (libc)Reading Persona.
+-* getumask: (libc)Setting Permissions.
+-* getutent: (libc)Manipulating the Database.
+-* getutent_r: (libc)Manipulating the Database.
+-* getutid: (libc)Manipulating the Database.
+-* getutid_r: (libc)Manipulating the Database.
+-* getutline: (libc)Manipulating the Database.
+-* getutline_r: (libc)Manipulating the Database.
+-* getutmp: (libc)XPG Functions.
+-* getutmpx: (libc)XPG Functions.
+-* getutxent: (libc)XPG Functions.
+-* getutxid: (libc)XPG Functions.
+-* getutxline: (libc)XPG Functions.
+-* getw: (libc)Character Input.
+-* getwc: (libc)Character Input.
+-* getwc_unlocked: (libc)Character Input.
+-* getwchar: (libc)Character Input.
+-* getwchar_unlocked: (libc)Character Input.
+-* getwd: (libc)Working Directory.
+-* glob64: (libc)Calling Glob.
+-* glob: (libc)Calling Glob.
+-* globfree64: (libc)More Flags for Globbing.
+-* globfree: (libc)More Flags for Globbing.
+-* gmtime: (libc)Broken-down Time.
+-* gmtime_r: (libc)Broken-down Time.
+-* grantpt: (libc)Allocation.
+-* gsignal: (libc)Signaling Yourself.
+-* gtty: (libc)BSD Terminal Modes.
+-* hasmntopt: (libc)mtab.
+-* hcreate: (libc)Hash Search Function.
+-* hcreate_r: (libc)Hash Search Function.
+-* hdestroy: (libc)Hash Search Function.
+-* hdestroy_r: (libc)Hash Search Function.
+-* hsearch: (libc)Hash Search Function.
+-* hsearch_r: (libc)Hash Search Function.
+-* htonl: (libc)Byte Order.
+-* htons: (libc)Byte Order.
+-* hypot: (libc)Exponents and Logarithms.
+-* hypotf: (libc)Exponents and Logarithms.
+-* hypotl: (libc)Exponents and Logarithms.
+-* iconv: (libc)Generic Conversion Interface.
+-* iconv_close: (libc)Generic Conversion Interface.
+-* iconv_open: (libc)Generic Conversion Interface.
+-* if_freenameindex: (libc)Interface Naming.
+-* if_indextoname: (libc)Interface Naming.
+-* if_nameindex: (libc)Interface Naming.
+-* if_nametoindex: (libc)Interface Naming.
+-* ilogb: (libc)Exponents and Logarithms.
+-* ilogbf: (libc)Exponents and Logarithms.
+-* ilogbl: (libc)Exponents and Logarithms.
+-* imaxabs: (libc)Absolute Value.
+-* imaxdiv: (libc)Integer Division.
+-* in6addr_any: (libc)Host Address Data Type.
+-* in6addr_loopback: (libc)Host Address Data Type.
+-* index: (libc)Search Functions.
+-* inet_addr: (libc)Host Address Functions.
+-* inet_aton: (libc)Host Address Functions.
+-* inet_lnaof: (libc)Host Address Functions.
+-* inet_makeaddr: (libc)Host Address Functions.
+-* inet_netof: (libc)Host Address Functions.
+-* inet_network: (libc)Host Address Functions.
+-* inet_ntoa: (libc)Host Address Functions.
+-* inet_ntop: (libc)Host Address Functions.
+-* inet_pton: (libc)Host Address Functions.
+-* initgroups: (libc)Setting Groups.
+-* initstate: (libc)BSD Random.
+-* initstate_r: (libc)BSD Random.
+-* innetgr: (libc)Netgroup Membership.
+-* ioctl: (libc)IOCTLs.
+-* isalnum: (libc)Classification of Characters.
+-* isalpha: (libc)Classification of Characters.
+-* isascii: (libc)Classification of Characters.
+-* isatty: (libc)Is It a Terminal.
+-* isblank: (libc)Classification of Characters.
+-* iscntrl: (libc)Classification of Characters.
+-* isdigit: (libc)Classification of Characters.
+-* isfinite: (libc)Floating Point Classes.
+-* isgraph: (libc)Classification of Characters.
+-* isgreater: (libc)FP Comparison Functions.
+-* isgreaterequal: (libc)FP Comparison Functions.
+-* isinf: (libc)Floating Point Classes.
+-* isinff: (libc)Floating Point Classes.
+-* isinfl: (libc)Floating Point Classes.
+-* isless: (libc)FP Comparison Functions.
+-* islessequal: (libc)FP Comparison Functions.
+-* islessgreater: (libc)FP Comparison Functions.
+-* islower: (libc)Classification of Characters.
+-* isnan: (libc)Floating Point Classes.
+-* isnan: (libc)Floating Point Classes.
+-* isnanf: (libc)Floating Point Classes.
+-* isnanl: (libc)Floating Point Classes.
+-* isnormal: (libc)Floating Point Classes.
+-* isprint: (libc)Classification of Characters.
+-* ispunct: (libc)Classification of Characters.
+-* isspace: (libc)Classification of Characters.
+-* isunordered: (libc)FP Comparison Functions.
+-* isupper: (libc)Classification of Characters.
+-* iswalnum: (libc)Classification of Wide Characters.
+-* iswalpha: (libc)Classification of Wide Characters.
+-* iswblank: (libc)Classification of Wide Characters.
+-* iswcntrl: (libc)Classification of Wide Characters.
+-* iswctype: (libc)Classification of Wide Characters.
+-* iswdigit: (libc)Classification of Wide Characters.
+-* iswgraph: (libc)Classification of Wide Characters.
+-* iswlower: (libc)Classification of Wide Characters.
+-* iswprint: (libc)Classification of Wide Characters.
+-* iswpunct: (libc)Classification of Wide Characters.
+-* iswspace: (libc)Classification of Wide Characters.
+-* iswupper: (libc)Classification of Wide Characters.
+-* iswxdigit: (libc)Classification of Wide Characters.
+-* isxdigit: (libc)Classification of Characters.
+-* j0: (libc)Special Functions.
+-* j0f: (libc)Special Functions.
+-* j0l: (libc)Special Functions.
+-* j1: (libc)Special Functions.
+-* j1f: (libc)Special Functions.
+-* j1l: (libc)Special Functions.
+-* jn: (libc)Special Functions.
+-* jnf: (libc)Special Functions.
+-* jnl: (libc)Special Functions.
+-* jrand48: (libc)SVID Random.
+-* jrand48_r: (libc)SVID Random.
+-* kill: (libc)Signaling Another Process.
+-* killpg: (libc)Signaling Another Process.
+-* l64a: (libc)Encode Binary Data.
+-* labs: (libc)Absolute Value.
+-* lcong48: (libc)SVID Random.
+-* lcong48_r: (libc)SVID Random.
+-* ldexp: (libc)Normalization Functions.
+-* ldexpf: (libc)Normalization Functions.
+-* ldexpl: (libc)Normalization Functions.
+-* ldiv: (libc)Integer Division.
+-* lfind: (libc)Array Search Function.
+-* lgamma: (libc)Special Functions.
+-* lgamma_r: (libc)Special Functions.
+-* lgammaf: (libc)Special Functions.
+-* lgammaf_r: (libc)Special Functions.
+-* lgammal: (libc)Special Functions.
+-* lgammal_r: (libc)Special Functions.
+-* link: (libc)Hard Links.
+-* lio_listio64: (libc)Asynchronous Reads/Writes.
+-* lio_listio: (libc)Asynchronous Reads/Writes.
+-* listen: (libc)Listening.
+-* llabs: (libc)Absolute Value.
+-* lldiv: (libc)Integer Division.
+-* llrint: (libc)Rounding Functions.
+-* llrintf: (libc)Rounding Functions.
+-* llrintl: (libc)Rounding Functions.
+-* llround: (libc)Rounding Functions.
+-* llroundf: (libc)Rounding Functions.
+-* llroundl: (libc)Rounding Functions.
+-* localeconv: (libc)The Lame Way to Locale Data.
+-* localtime: (libc)Broken-down Time.
+-* localtime_r: (libc)Broken-down Time.
+-* log10: (libc)Exponents and Logarithms.
+-* log10f: (libc)Exponents and Logarithms.
+-* log10l: (libc)Exponents and Logarithms.
+-* log1p: (libc)Exponents and Logarithms.
+-* log1pf: (libc)Exponents and Logarithms.
+-* log1pl: (libc)Exponents and Logarithms.
+-* log2: (libc)Exponents and Logarithms.
+-* log2f: (libc)Exponents and Logarithms.
+-* log2l: (libc)Exponents and Logarithms.
+-* log: (libc)Exponents and Logarithms.
+-* logb: (libc)Exponents and Logarithms.
+-* logbf: (libc)Exponents and Logarithms.
+-* logbl: (libc)Exponents and Logarithms.
+-* logf: (libc)Exponents and Logarithms.
+-* login: (libc)Logging In and Out.
+-* login_tty: (libc)Logging In and Out.
+-* logl: (libc)Exponents and Logarithms.
+-* logout: (libc)Logging In and Out.
+-* logwtmp: (libc)Logging In and Out.
+-* longjmp: (libc)Non-Local Details.
+-* lrand48: (libc)SVID Random.
+-* lrand48_r: (libc)SVID Random.
+-* lrint: (libc)Rounding Functions.
+-* lrintf: (libc)Rounding Functions.
+-* lrintl: (libc)Rounding Functions.
+-* lround: (libc)Rounding Functions.
+-* lroundf: (libc)Rounding Functions.
+-* lroundl: (libc)Rounding Functions.
+-* lsearch: (libc)Array Search Function.
+-* lseek64: (libc)File Position Primitive.
+-* lseek: (libc)File Position Primitive.
+-* lstat64: (libc)Reading Attributes.
+-* lstat: (libc)Reading Attributes.
+-* lutimes: (libc)File Times.
+-* madvise: (libc)Memory-mapped I/O.
+-* makecontext: (libc)System V contexts.
+-* mallinfo: (libc)Statistics of Malloc.
+-* malloc: (libc)Basic Allocation.
+-* mallopt: (libc)Malloc Tunable Parameters.
+-* mblen: (libc)Non-reentrant Character Conversion.
+-* mbrlen: (libc)Converting a Character.
+-* mbrtowc: (libc)Converting a Character.
+-* mbsinit: (libc)Keeping the state.
+-* mbsnrtowcs: (libc)Converting Strings.
+-* mbsrtowcs: (libc)Converting Strings.
+-* mbstowcs: (libc)Non-reentrant String Conversion.
+-* mbtowc: (libc)Non-reentrant Character Conversion.
+-* mcheck: (libc)Heap Consistency Checking.
+-* memalign: (libc)Aligned Memory Blocks.
+-* memccpy: (libc)Copying and Concatenation.
+-* memchr: (libc)Search Functions.
+-* memcmp: (libc)String/Array Comparison.
+-* memcpy: (libc)Copying and Concatenation.
+-* memfrob: (libc)Trivial Encryption.
+-* memmem: (libc)Search Functions.
+-* memmove: (libc)Copying and Concatenation.
+-* mempcpy: (libc)Copying and Concatenation.
+-* memrchr: (libc)Search Functions.
+-* memset: (libc)Copying and Concatenation.
+-* mkdir: (libc)Creating Directories.
+-* mkdtemp: (libc)Temporary Files.
+-* mkfifo: (libc)FIFO Special Files.
+-* mknod: (libc)Making Special Files.
+-* mkstemp: (libc)Temporary Files.
+-* mktemp: (libc)Temporary Files.
+-* mktime: (libc)Broken-down Time.
+-* mlock: (libc)Page Lock Functions.
+-* mlockall: (libc)Page Lock Functions.
+-* mmap64: (libc)Memory-mapped I/O.
+-* mmap: (libc)Memory-mapped I/O.
+-* modf: (libc)Rounding Functions.
+-* modff: (libc)Rounding Functions.
+-* modfl: (libc)Rounding Functions.
+-* mount: (libc)Mount-Unmount-Remount.
+-* mprobe: (libc)Heap Consistency Checking.
+-* mrand48: (libc)SVID Random.
+-* mrand48_r: (libc)SVID Random.
+-* mremap: (libc)Memory-mapped I/O.
+-* msync: (libc)Memory-mapped I/O.
+-* mtrace: (libc)Tracing malloc.
+-* munlock: (libc)Page Lock Functions.
+-* munlockall: (libc)Page Lock Functions.
+-* munmap: (libc)Memory-mapped I/O.
+-* muntrace: (libc)Tracing malloc.
+-* nan: (libc)FP Bit Twiddling.
+-* nanf: (libc)FP Bit Twiddling.
+-* nanl: (libc)FP Bit Twiddling.
+-* nanosleep: (libc)Sleeping.
+-* nearbyint: (libc)Rounding Functions.
+-* nearbyintf: (libc)Rounding Functions.
+-* nearbyintl: (libc)Rounding Functions.
+-* nextafter: (libc)FP Bit Twiddling.
+-* nextafterf: (libc)FP Bit Twiddling.
+-* nextafterl: (libc)FP Bit Twiddling.
+-* nexttoward: (libc)FP Bit Twiddling.
+-* nexttowardf: (libc)FP Bit Twiddling.
+-* nexttowardl: (libc)FP Bit Twiddling.
+-* nftw64: (libc)Working with Directory Trees.
+-* nftw: (libc)Working with Directory Trees.
+-* ngettext: (libc)Advanced gettext functions.
+-* nice: (libc)Traditional Scheduling Functions.
+-* nl_langinfo: (libc)The Elegant and Fast Way.
+-* nrand48: (libc)SVID Random.
+-* nrand48_r: (libc)SVID Random.
+-* ntohl: (libc)Byte Order.
+-* ntohs: (libc)Byte Order.
+-* ntp_adjtime: (libc)High Accuracy Clock.
+-* ntp_gettime: (libc)High Accuracy Clock.
+-* obstack_1grow: (libc)Growing Objects.
+-* obstack_1grow_fast: (libc)Extra Fast Growing.
+-* obstack_alignment_mask: (libc)Obstacks Data Alignment.
+-* obstack_alloc: (libc)Allocation in an Obstack.
+-* obstack_base: (libc)Status of an Obstack.
+-* obstack_blank: (libc)Growing Objects.
+-* obstack_blank_fast: (libc)Extra Fast Growing.
+-* obstack_chunk_size: (libc)Obstack Chunks.
+-* obstack_copy0: (libc)Allocation in an Obstack.
+-* obstack_copy: (libc)Allocation in an Obstack.
+-* obstack_finish: (libc)Growing Objects.
+-* obstack_free: (libc)Freeing Obstack Objects.
+-* obstack_grow0: (libc)Growing Objects.
+-* obstack_grow: (libc)Growing Objects.
+-* obstack_init: (libc)Preparing for Obstacks.
+-* obstack_int_grow: (libc)Growing Objects.
+-* obstack_int_grow_fast: (libc)Extra Fast Growing.
+-* obstack_next_free: (libc)Status of an Obstack.
+-* obstack_object_size: (libc)Growing Objects.
+-* obstack_object_size: (libc)Status of an Obstack.
+-* obstack_printf: (libc)Dynamic Output.
+-* obstack_ptr_grow: (libc)Growing Objects.
+-* obstack_ptr_grow_fast: (libc)Extra Fast Growing.
+-* obstack_room: (libc)Extra Fast Growing.
+-* obstack_vprintf: (libc)Variable Arguments Output.
+-* offsetof: (libc)Structure Measurement.
+-* on_exit: (libc)Cleanups on Exit.
+-* open64: (libc)Opening and Closing Files.
+-* open: (libc)Opening and Closing Files.
+-* open_memstream: (libc)String Streams.
+-* open_obstack_stream: (libc)Obstack Streams.
+-* opendir: (libc)Opening a Directory.
+-* openlog: (libc)openlog.
+-* openpty: (libc)Pseudo-Terminal Pairs.
+-* parse_printf_format: (libc)Parsing a Template String.
+-* pathconf: (libc)Pathconf.
+-* pause: (libc)Using Pause.
+-* pclose: (libc)Pipe to a Subprocess.
+-* perror: (libc)Error Messages.
+-* pipe: (libc)Creating a Pipe.
+-* popen: (libc)Pipe to a Subprocess.
+-* posix_memalign: (libc)Aligned Memory Blocks.
+-* pow10: (libc)Exponents and Logarithms.
+-* pow10f: (libc)Exponents and Logarithms.
+-* pow10l: (libc)Exponents and Logarithms.
+-* pow: (libc)Exponents and Logarithms.
+-* powf: (libc)Exponents and Logarithms.
+-* powl: (libc)Exponents and Logarithms.
+-* pread64: (libc)I/O Primitives.
+-* pread: (libc)I/O Primitives.
+-* printf: (libc)Formatted Output Functions.
+-* printf_size: (libc)Predefined Printf Handlers.
+-* printf_size_info: (libc)Predefined Printf Handlers.
+-* psignal: (libc)Signal Messages.
+-* pthread_atfork: (libc)Threads and Fork.
+-* pthread_attr_destroy: (libc)Thread Attributes.
+-* pthread_attr_getattr: (libc)Thread Attributes.
+-* pthread_attr_init: (libc)Thread Attributes.
+-* pthread_attr_setattr: (libc)Thread Attributes.
+-* pthread_cancel: (libc)Basic Thread Operations.
+-* pthread_cleanup_pop: (libc)Cleanup Handlers.
+-* pthread_cleanup_pop_restore_np: (libc)Cleanup Handlers.
+-* pthread_cleanup_push: (libc)Cleanup Handlers.
+-* pthread_cleanup_push_defer_np: (libc)Cleanup Handlers.
+-* pthread_cond_broadcast: (libc)Condition Variables.
+-* pthread_cond_destroy: (libc)Condition Variables.
+-* pthread_cond_init: (libc)Condition Variables.
+-* pthread_cond_signal: (libc)Condition Variables.
+-* pthread_cond_timedwait: (libc)Condition Variables.
+-* pthread_cond_wait: (libc)Condition Variables.
+-* pthread_condattr_destroy: (libc)Condition Variables.
+-* pthread_condattr_init: (libc)Condition Variables.
+-* pthread_create: (libc)Basic Thread Operations.
+-* pthread_detach: (libc)Miscellaneous Thread Functions.
+-* pthread_equal: (libc)Miscellaneous Thread Functions.
+-* pthread_exit: (libc)Basic Thread Operations.
+-* pthread_getconcurrency: (libc)Miscellaneous Thread Functions.
+-* pthread_getschedparam: (libc)Miscellaneous Thread Functions.
+-* pthread_getspecific: (libc)Thread-Specific Data.
+-* pthread_join: (libc)Basic Thread Operations.
+-* pthread_key_create: (libc)Thread-Specific Data.
+-* pthread_key_delete: (libc)Thread-Specific Data.
+-* pthread_kill: (libc)Threads and Signal Handling.
+-* pthread_kill_other_threads_np: (libc)Miscellaneous Thread Functions.
+-* pthread_mutex_destroy: (libc)Mutexes.
+-* pthread_mutex_init: (libc)Mutexes.
+-* pthread_mutex_lock: (libc)Mutexes.
+-* pthread_mutex_timedlock: (libc)Mutexes.
+-* pthread_mutex_trylock: (libc)Mutexes.
+-* pthread_mutex_unlock: (libc)Mutexes.
+-* pthread_mutexattr_destroy: (libc)Mutexes.
+-* pthread_mutexattr_gettype: (libc)Mutexes.
+-* pthread_mutexattr_init: (libc)Mutexes.
+-* pthread_mutexattr_settype: (libc)Mutexes.
+-* pthread_once: (libc)Miscellaneous Thread Functions.
+-* pthread_self: (libc)Miscellaneous Thread Functions.
+-* pthread_setcancelstate: (libc)Cancellation.
+-* pthread_setcanceltype: (libc)Cancellation.
+-* pthread_setconcurrency: (libc)Miscellaneous Thread Functions.
+-* pthread_setschedparam: (libc)Miscellaneous Thread Functions.
+-* pthread_setspecific: (libc)Thread-Specific Data.
+-* pthread_sigmask: (libc)Threads and Signal Handling.
+-* pthread_testcancel: (libc)Cancellation.
+-* ptsname: (libc)Allocation.
+-* ptsname_r: (libc)Allocation.
+-* putc: (libc)Simple Output.
+-* putc_unlocked: (libc)Simple Output.
+-* putchar: (libc)Simple Output.
+-* putchar_unlocked: (libc)Simple Output.
+-* putenv: (libc)Environment Access.
+-* putpwent: (libc)Writing a User Entry.
+-* puts: (libc)Simple Output.
+-* pututline: (libc)Manipulating the Database.
+-* pututxline: (libc)XPG Functions.
+-* putw: (libc)Simple Output.
+-* putwc: (libc)Simple Output.
+-* putwc_unlocked: (libc)Simple Output.
+-* putwchar: (libc)Simple Output.
+-* putwchar_unlocked: (libc)Simple Output.
+-* pwrite64: (libc)I/O Primitives.
+-* pwrite: (libc)I/O Primitives.
+-* qecvt: (libc)System V Number Conversion.
+-* qecvt_r: (libc)System V Number Conversion.
+-* qfcvt: (libc)System V Number Conversion.
+-* qfcvt_r: (libc)System V Number Conversion.
+-* qgcvt: (libc)System V Number Conversion.
+-* qsort: (libc)Array Sort Function.
+-* raise: (libc)Signaling Yourself.
+-* rand: (libc)ISO Random.
+-* rand_r: (libc)ISO Random.
+-* random: (libc)BSD Random.
+-* random_r: (libc)BSD Random.
+-* rawmemchr: (libc)Search Functions.
+-* read: (libc)I/O Primitives.
+-* readdir64: (libc)Reading/Closing Directory.
+-* readdir64_r: (libc)Reading/Closing Directory.
+-* readdir: (libc)Reading/Closing Directory.
+-* readdir_r: (libc)Reading/Closing Directory.
+-* readlink: (libc)Symbolic Links.
+-* readv: (libc)Scatter-Gather.
+-* realloc: (libc)Changing Block Size.
+-* realpath: (libc)Symbolic Links.
+-* recv: (libc)Receiving Data.
+-* recvfrom: (libc)Receiving Datagrams.
+-* recvmsg: (libc)Receiving Datagrams.
+-* regcomp: (libc)POSIX Regexp Compilation.
+-* regerror: (libc)Regexp Cleanup.
+-* regexec: (libc)Matching POSIX Regexps.
+-* regfree: (libc)Regexp Cleanup.
+-* register_printf_function: (libc)Registering New Conversions.
+-* remainder: (libc)Remainder Functions.
+-* remainderf: (libc)Remainder Functions.
+-* remainderl: (libc)Remainder Functions.
+-* remove: (libc)Deleting Files.
+-* rename: (libc)Renaming Files.
+-* rewind: (libc)File Positioning.
+-* rewinddir: (libc)Random Access Directory.
+-* rindex: (libc)Search Functions.
+-* rint: (libc)Rounding Functions.
+-* rintf: (libc)Rounding Functions.
+-* rintl: (libc)Rounding Functions.
+-* rmdir: (libc)Deleting Files.
+-* round: (libc)Rounding Functions.
+-* roundf: (libc)Rounding Functions.
+-* roundl: (libc)Rounding Functions.
+-* rpmatch: (libc)Yes-or-No Questions.
+-* sbrk: (libc)Resizing the Data Segment.
+-* scalb: (libc)Normalization Functions.
+-* scalbf: (libc)Normalization Functions.
+-* scalbl: (libc)Normalization Functions.
+-* scalbln: (libc)Normalization Functions.
+-* scalblnf: (libc)Normalization Functions.
+-* scalblnl: (libc)Normalization Functions.
+-* scalbn: (libc)Normalization Functions.
+-* scalbnf: (libc)Normalization Functions.
+-* scalbnl: (libc)Normalization Functions.
+-* scandir64: (libc)Scanning Directory Content.
+-* scandir: (libc)Scanning Directory Content.
+-* scanf: (libc)Formatted Input Functions.
+-* sched_get_priority_max: (libc)Basic Scheduling Functions.
+-* sched_get_priority_min: (libc)Basic Scheduling Functions.
+-* sched_getparam: (libc)Basic Scheduling Functions.
+-* sched_getscheduler: (libc)Basic Scheduling Functions.
+-* sched_rr_get_interval: (libc)Basic Scheduling Functions.
+-* sched_setparam: (libc)Basic Scheduling Functions.
+-* sched_setscheduler: (libc)Basic Scheduling Functions.
+-* sched_yield: (libc)Basic Scheduling Functions.
+-* seed48: (libc)SVID Random.
+-* seed48_r: (libc)SVID Random.
+-* seekdir: (libc)Random Access Directory.
+-* select: (libc)Waiting for I/O.
+-* sem_destroy: (libc)POSIX Semaphores.
+-* sem_getvalue: (libc)POSIX Semaphores.
+-* sem_init: (libc)POSIX Semaphores.
+-* sem_post: (libc)POSIX Semaphores.
+-* sem_trywait: (libc)POSIX Semaphores.
+-* sem_wait: (libc)POSIX Semaphores.
+-* send: (libc)Sending Data.
+-* sendmsg: (libc)Receiving Datagrams.
+-* sendto: (libc)Sending Datagrams.
+-* setbuf: (libc)Controlling Buffering.
+-* setbuffer: (libc)Controlling Buffering.
+-* setcontext: (libc)System V contexts.
+-* setdomainname: (libc)Host Identification.
+-* setegid: (libc)Setting Groups.
+-* setenv: (libc)Environment Access.
+-* seteuid: (libc)Setting User ID.
+-* setfsent: (libc)fstab.
+-* setgid: (libc)Setting Groups.
+-* setgrent: (libc)Scanning All Groups.
+-* setgroups: (libc)Setting Groups.
+-* sethostent: (libc)Host Names.
+-* sethostid: (libc)Host Identification.
+-* sethostname: (libc)Host Identification.
+-* setitimer: (libc)Setting an Alarm.
+-* setjmp: (libc)Non-Local Details.
+-* setkey: (libc)DES Encryption.
+-* setkey_r: (libc)DES Encryption.
+-* setlinebuf: (libc)Controlling Buffering.
+-* setlocale: (libc)Setting the Locale.
+-* setlogmask: (libc)setlogmask.
+-* setmntent: (libc)mtab.
+-* setnetent: (libc)Networks Database.
+-* setnetgrent: (libc)Lookup Netgroup.
+-* setpgid: (libc)Process Group Functions.
+-* setpgrp: (libc)Process Group Functions.
+-* setpriority: (libc)Traditional Scheduling Functions.
+-* setprotoent: (libc)Protocols Database.
+-* setpwent: (libc)Scanning All Users.
+-* setregid: (libc)Setting Groups.
+-* setreuid: (libc)Setting User ID.
+-* setrlimit64: (libc)Limits on Resources.
+-* setrlimit: (libc)Limits on Resources.
+-* setservent: (libc)Services Database.
+-* setsid: (libc)Process Group Functions.
+-* setsockopt: (libc)Socket Option Functions.
+-* setstate: (libc)BSD Random.
+-* setstate_r: (libc)BSD Random.
+-* settimeofday: (libc)High-Resolution Calendar.
+-* setuid: (libc)Setting User ID.
+-* setutent: (libc)Manipulating the Database.
+-* setutxent: (libc)XPG Functions.
+-* setvbuf: (libc)Controlling Buffering.
+-* shutdown: (libc)Closing a Socket.
+-* sigaction: (libc)Advanced Signal Handling.
+-* sigaddset: (libc)Signal Sets.
+-* sigaltstack: (libc)Signal Stack.
+-* sigblock: (libc)Blocking in BSD.
+-* sigdelset: (libc)Signal Sets.
+-* sigemptyset: (libc)Signal Sets.
+-* sigfillset: (libc)Signal Sets.
+-* siginterrupt: (libc)BSD Handler.
+-* sigismember: (libc)Signal Sets.
+-* siglongjmp: (libc)Non-Local Exits and Signals.
+-* sigmask: (libc)Blocking in BSD.
+-* signal: (libc)Basic Signal Handling.
+-* signbit: (libc)FP Bit Twiddling.
+-* significand: (libc)Normalization Functions.
+-* significandf: (libc)Normalization Functions.
+-* significandl: (libc)Normalization Functions.
+-* sigpause: (libc)Blocking in BSD.
+-* sigpending: (libc)Checking for Pending Signals.
+-* sigprocmask: (libc)Process Signal Mask.
+-* sigsetjmp: (libc)Non-Local Exits and Signals.
+-* sigsetmask: (libc)Blocking in BSD.
+-* sigstack: (libc)Signal Stack.
+-* sigsuspend: (libc)Sigsuspend.
+-* sigvec: (libc)BSD Handler.
+-* sigwait: (libc)Threads and Signal Handling.
+-* sin: (libc)Trig Functions.
+-* sincos: (libc)Trig Functions.
+-* sincosf: (libc)Trig Functions.
+-* sincosl: (libc)Trig Functions.
+-* sinf: (libc)Trig Functions.
+-* sinh: (libc)Hyperbolic Functions.
+-* sinhf: (libc)Hyperbolic Functions.
+-* sinhl: (libc)Hyperbolic Functions.
+-* sinl: (libc)Trig Functions.
+-* sleep: (libc)Sleeping.
+-* snprintf: (libc)Formatted Output Functions.
+-* socket: (libc)Creating a Socket.
+-* socketpair: (libc)Socket Pairs.
+-* sprintf: (libc)Formatted Output Functions.
+-* sqrt: (libc)Exponents and Logarithms.
+-* sqrtf: (libc)Exponents and Logarithms.
+-* sqrtl: (libc)Exponents and Logarithms.
+-* srand48: (libc)SVID Random.
+-* srand48_r: (libc)SVID Random.
+-* srand: (libc)ISO Random.
+-* srandom: (libc)BSD Random.
+-* srandom_r: (libc)BSD Random.
+-* sscanf: (libc)Formatted Input Functions.
+-* ssignal: (libc)Basic Signal Handling.
+-* stat64: (libc)Reading Attributes.
+-* stat: (libc)Reading Attributes.
+-* stime: (libc)Simple Calendar Time.
+-* stpcpy: (libc)Copying and Concatenation.
+-* stpncpy: (libc)Copying and Concatenation.
+-* strcasecmp: (libc)String/Array Comparison.
+-* strcasestr: (libc)Search Functions.
+-* strcat: (libc)Copying and Concatenation.
+-* strchr: (libc)Search Functions.
+-* strchrnul: (libc)Search Functions.
+-* strcmp: (libc)String/Array Comparison.
+-* strcoll: (libc)Collation Functions.
+-* strcpy: (libc)Copying and Concatenation.
+-* strcspn: (libc)Search Functions.
+-* strdup: (libc)Copying and Concatenation.
+-* strdupa: (libc)Copying and Concatenation.
+-* strerror: (libc)Error Messages.
+-* strerror_r: (libc)Error Messages.
+-* strfmon: (libc)Formatting Numbers.
+-* strfry: (libc)strfry.
+-* strftime: (libc)Formatting Calendar Time.
+-* strlen: (libc)String Length.
+-* strncasecmp: (libc)String/Array Comparison.
+-* strncat: (libc)Copying and Concatenation.
+-* strncmp: (libc)String/Array Comparison.
+-* strncpy: (libc)Copying and Concatenation.
+-* strndup: (libc)Copying and Concatenation.
+-* strndupa: (libc)Copying and Concatenation.
+-* strnlen: (libc)String Length.
+-* strpbrk: (libc)Search Functions.
+-* strptime: (libc)Low-Level Time String Parsing.
+-* strrchr: (libc)Search Functions.
+-* strsep: (libc)Finding Tokens in a String.
+-* strsignal: (libc)Signal Messages.
+-* strspn: (libc)Search Functions.
+-* strstr: (libc)Search Functions.
+-* strtod: (libc)Parsing of Floats.
+-* strtof: (libc)Parsing of Floats.
+-* strtoimax: (libc)Parsing of Integers.
+-* strtok: (libc)Finding Tokens in a String.
+-* strtok_r: (libc)Finding Tokens in a String.
+-* strtol: (libc)Parsing of Integers.
+-* strtold: (libc)Parsing of Floats.
+-* strtoll: (libc)Parsing of Integers.
+-* strtoq: (libc)Parsing of Integers.
+-* strtoul: (libc)Parsing of Integers.
+-* strtoull: (libc)Parsing of Integers.
+-* strtoumax: (libc)Parsing of Integers.
+-* strtouq: (libc)Parsing of Integers.
+-* strverscmp: (libc)String/Array Comparison.
+-* strxfrm: (libc)Collation Functions.
+-* stty: (libc)BSD Terminal Modes.
+-* swapcontext: (libc)System V contexts.
+-* swprintf: (libc)Formatted Output Functions.
+-* swscanf: (libc)Formatted Input Functions.
+-* symlink: (libc)Symbolic Links.
+-* sync: (libc)Synchronizing I/O.
+-* syscall: (libc)System Calls.
+-* sysconf: (libc)Sysconf Definition.
+-* sysctl: (libc)System Parameters.
+-* syslog: (libc)syslog; vsyslog.
+-* system: (libc)Running a Command.
+-* sysv_signal: (libc)Basic Signal Handling.
+-* tan: (libc)Trig Functions.
+-* tanf: (libc)Trig Functions.
+-* tanh: (libc)Hyperbolic Functions.
+-* tanhf: (libc)Hyperbolic Functions.
+-* tanhl: (libc)Hyperbolic Functions.
+-* tanl: (libc)Trig Functions.
+-* tcdrain: (libc)Line Control.
+-* tcflow: (libc)Line Control.
+-* tcflush: (libc)Line Control.
+-* tcgetattr: (libc)Mode Functions.
+-* tcgetpgrp: (libc)Terminal Access Functions.
+-* tcgetsid: (libc)Terminal Access Functions.
+-* tcsendbreak: (libc)Line Control.
+-* tcsetattr: (libc)Mode Functions.
+-* tcsetpgrp: (libc)Terminal Access Functions.
+-* tdelete: (libc)Tree Search Function.
+-* tdestroy: (libc)Tree Search Function.
+-* telldir: (libc)Random Access Directory.
+-* tempnam: (libc)Temporary Files.
+-* textdomain: (libc)Locating gettext catalog.
+-* tfind: (libc)Tree Search Function.
+-* tgamma: (libc)Special Functions.
+-* tgammaf: (libc)Special Functions.
+-* tgammal: (libc)Special Functions.
+-* time: (libc)Simple Calendar Time.
+-* timegm: (libc)Broken-down Time.
+-* timelocal: (libc)Broken-down Time.
+-* times: (libc)Processor Time.
+-* tmpfile64: (libc)Temporary Files.
+-* tmpfile: (libc)Temporary Files.
+-* tmpnam: (libc)Temporary Files.
+-* tmpnam_r: (libc)Temporary Files.
+-* toascii: (libc)Case Conversion.
+-* tolower: (libc)Case Conversion.
+-* toupper: (libc)Case Conversion.
+-* towctrans: (libc)Wide Character Case Conversion.
+-* towlower: (libc)Wide Character Case Conversion.
+-* towupper: (libc)Wide Character Case Conversion.
+-* trunc: (libc)Rounding Functions.
+-* truncate64: (libc)File Size.
+-* truncate: (libc)File Size.
+-* truncf: (libc)Rounding Functions.
+-* truncl: (libc)Rounding Functions.
+-* tsearch: (libc)Tree Search Function.
+-* ttyname: (libc)Is It a Terminal.
+-* ttyname_r: (libc)Is It a Terminal.
+-* twalk: (libc)Tree Search Function.
+-* tzset: (libc)Time Zone Functions.
+-* ulimit: (libc)Limits on Resources.
+-* umask: (libc)Setting Permissions.
+-* umount2: (libc)Mount-Unmount-Remount.
+-* umount: (libc)Mount-Unmount-Remount.
+-* uname: (libc)Platform Type.
+-* ungetc: (libc)How Unread.
+-* ungetwc: (libc)How Unread.
+-* unlink: (libc)Deleting Files.
+-* unlockpt: (libc)Allocation.
+-* unsetenv: (libc)Environment Access.
+-* updwtmp: (libc)Manipulating the Database.
+-* utime: (libc)File Times.
+-* utimes: (libc)File Times.
+-* utmpname: (libc)Manipulating the Database.
+-* utmpxname: (libc)XPG Functions.
+-* va_arg: (libc)Argument Macros.
+-* va_end: (libc)Argument Macros.
+-* va_start: (libc)Argument Macros.
+-* va_start: (libc)Old Varargs.
+-* valloc: (libc)Aligned Memory Blocks.
+-* vasprintf: (libc)Variable Arguments Output.
+-* verr: (libc)Error Messages.
+-* verrx: (libc)Error Messages.
+-* versionsort64: (libc)Scanning Directory Content.
+-* versionsort: (libc)Scanning Directory Content.
+-* vfork: (libc)Creating a Process.
+-* vfprintf: (libc)Variable Arguments Output.
+-* vfscanf: (libc)Variable Arguments Input.
+-* vfwprintf: (libc)Variable Arguments Output.
+-* vfwscanf: (libc)Variable Arguments Input.
+-* vlimit: (libc)Limits on Resources.
+-* vprintf: (libc)Variable Arguments Output.
+-* vscanf: (libc)Variable Arguments Input.
+-* vsnprintf: (libc)Variable Arguments Output.
+-* vsprintf: (libc)Variable Arguments Output.
+-* vsscanf: (libc)Variable Arguments Input.
+-* vswprintf: (libc)Variable Arguments Output.
+-* vswscanf: (libc)Variable Arguments Input.
+-* vsyslog: (libc)syslog; vsyslog.
+-* vtimes: (libc)Resource Usage.
+-* vwarn: (libc)Error Messages.
+-* vwarnx: (libc)Error Messages.
+-* vwprintf: (libc)Variable Arguments Output.
+-* vwscanf: (libc)Variable Arguments Input.
+-* wait3: (libc)BSD Wait Functions.
+-* wait4: (libc)Process Completion.
+-* wait: (libc)Process Completion.
+-* waitpid: (libc)Process Completion.
+-* warn: (libc)Error Messages.
+-* warnx: (libc)Error Messages.
+-* wcpcpy: (libc)Copying and Concatenation.
+-* wcpncpy: (libc)Copying and Concatenation.
+-* wcrtomb: (libc)Converting a Character.
+-* wcscasecmp: (libc)String/Array Comparison.
+-* wcscat: (libc)Copying and Concatenation.
+-* wcschr: (libc)Search Functions.
+-* wcschrnul: (libc)Search Functions.
+-* wcscmp: (libc)String/Array Comparison.
+-* wcscoll: (libc)Collation Functions.
+-* wcscpy: (libc)Copying and Concatenation.
+-* wcscspn: (libc)Search Functions.
+-* wcsdup: (libc)Copying and Concatenation.
+-* wcsftime: (libc)Formatting Calendar Time.
+-* wcslen: (libc)String Length.
+-* wcsncasecmp: (libc)String/Array Comparison.
+-* wcsncat: (libc)Copying and Concatenation.
+-* wcsncmp: (libc)String/Array Comparison.
+-* wcsncpy: (libc)Copying and Concatenation.
+-* wcsnlen: (libc)String Length.
+-* wcsnrtombs: (libc)Converting Strings.
+-* wcspbrk: (libc)Search Functions.
+-* wcsrchr: (libc)Search Functions.
+-* wcsrtombs: (libc)Converting Strings.
+-* wcsspn: (libc)Search Functions.
+-* wcsstr: (libc)Search Functions.
+-* wcstod: (libc)Parsing of Floats.
+-* wcstof: (libc)Parsing of Floats.
+-* wcstoimax: (libc)Parsing of Integers.
+-* wcstok: (libc)Finding Tokens in a String.
+-* wcstol: (libc)Parsing of Integers.
+-* wcstold: (libc)Parsing of Floats.
+-* wcstoll: (libc)Parsing of Integers.
+-* wcstombs: (libc)Non-reentrant String Conversion.
+-* wcstoq: (libc)Parsing of Integers.
+-* wcstoul: (libc)Parsing of Integers.
+-* wcstoull: (libc)Parsing of Integers.
+-* wcstoumax: (libc)Parsing of Integers.
+-* wcstouq: (libc)Parsing of Integers.
+-* wcswcs: (libc)Search Functions.
+-* wcsxfrm: (libc)Collation Functions.
+-* wctob: (libc)Converting a Character.
+-* wctomb: (libc)Non-reentrant Character Conversion.
+-* wctrans: (libc)Wide Character Case Conversion.
+-* wctype: (libc)Classification of Wide Characters.
+-* wmemchr: (libc)Search Functions.
+-* wmemcmp: (libc)String/Array Comparison.
+-* wmemcpy: (libc)Copying and Concatenation.
+-* wmemmove: (libc)Copying and Concatenation.
+-* wmempcpy: (libc)Copying and Concatenation.
+-* wmemset: (libc)Copying and Concatenation.
+-* wordexp: (libc)Calling Wordexp.
+-* wordfree: (libc)Calling Wordexp.
+-* wprintf: (libc)Formatted Output Functions.
+-* write: (libc)I/O Primitives.
+-* writev: (libc)Scatter-Gather.
+-* wscanf: (libc)Formatted Input Functions.
+-* y0: (libc)Special Functions.
+-* y0f: (libc)Special Functions.
+-* y0l: (libc)Special Functions.
+-* y1: (libc)Special Functions.
+-* y1f: (libc)Special Functions.
+-* y1l: (libc)Special Functions.
+-* yn: (libc)Special Functions.
+-* ynf: (libc)Special Functions.
+-* ynl: (libc)Special Functions.
+-* {(*__gconv_end_fct)}: (libc)glibc iconv Implementation.
+-* {(*__gconv_fct)}: (libc)glibc iconv Implementation.
+-* {(*__gconv_init_fct)}: (libc)glibc iconv Implementation.
+-END-INFO-DIR-ENTRY
+diff -u -udbrN glibc-2.3.2/manual/dir.c.texi glibc-2.3.2-200304020432/manual/dir.c.texi
+--- glibc-2.3.2/manual/dir.c.texi Mon Nov 18 20:37:19 2002
++++ glibc-2.3.2-200304020432/manual/dir.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,24 +0,0 @@
+-@group
+-#include <stdio.h>
+-#include <sys/types.h>
+-#include <dirent.h>
+-@end group
+-
+-int
+-main (void)
+-@{
+- DIR *dp;
+- struct dirent *ep;
+-
+- dp = opendir ("./");
+- if (dp != NULL)
+- @{
+- while (ep = readdir (dp))
+- puts (ep->d_name);
+- (void) closedir (dp);
+- @}
+- else
+- perror ("Couldn't open the directory");
+-
+- return 0;
+-@}
+diff -u -udbrN glibc-2.3.2/manual/dir2.c.texi glibc-2.3.2-200304020432/manual/dir2.c.texi
+--- glibc-2.3.2/manual/dir2.c.texi Wed Dec 9 23:51:53 1998
++++ glibc-2.3.2-200304020432/manual/dir2.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,29 +0,0 @@
+-@group
+-#include <stdio.h>
+-#include <dirent.h>
+-@end group
+-
+-static int
+-one (struct dirent *unused)
+-@{
+- return 1;
+-@}
+-
+-int
+-main (void)
+-@{
+- struct dirent **eps;
+- int n;
+-
+- n = scandir ("./", &eps, one, alphasort);
+- if (n >= 0)
+- @{
+- int cnt;
+- for (cnt = 0; cnt < n; ++cnt)
+- puts (eps[cnt]->d_name);
+- @}
+- else
+- perror ("Couldn't open the directory");
+-
+- return 0;
+-@}
+diff -u -udbrN glibc-2.3.2/manual/execinfo.c.texi glibc-2.3.2-200304020432/manual/execinfo.c.texi
+--- glibc-2.3.2/manual/execinfo.c.texi Wed Jan 17 17:41:01 2001
++++ glibc-2.3.2-200304020432/manual/execinfo.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,37 +0,0 @@
+-#include <execinfo.h>
+-#include <stdio.h>
+-#include <stdlib.h>
+-
+-/* @r{Obtain a backtrace and print it to @code{stdout}.} */
+-void
+-print_trace (void)
+-@{
+- void *array[10];
+- size_t size;
+- char **strings;
+- size_t i;
+-
+- size = backtrace (array, 10);
+- strings = backtrace_symbols (array, size);
+-
+- printf ("Obtained %zd stack frames.\n", size);
+-
+- for (i = 0; i < size; i++)
+- printf ("%s\n", strings[i]);
+-
+- free (strings);
+-@}
+-
+-/* @r{A dummy function to make the backtrace more interesting.} */
+-void
+-dummy_function (void)
+-@{
+- print_trace ();
+-@}
+-
+-int
+-main (void)
+-@{
+- dummy_function ();
+- return 0;
+-@}
+diff -u -udbrN glibc-2.3.2/manual/filecli.c.texi glibc-2.3.2-200304020432/manual/filecli.c.texi
+--- glibc-2.3.2/manual/filecli.c.texi Wed Dec 9 23:51:53 1998
++++ glibc-2.3.2-200304020432/manual/filecli.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,54 +0,0 @@
+-#include <stdio.h>
+-#include <errno.h>
+-#include <unistd.h>
+-#include <stdlib.h>
+-#include <sys/socket.h>
+-#include <sys/un.h>
+-
+-#define SERVER "/tmp/serversocket"
+-#define CLIENT "/tmp/mysocket"
+-#define MAXMSG 512
+-#define MESSAGE "Yow!!! Are we having fun yet?!?"
+-
+-int
+-main (void)
+-@{
+- extern int make_named_socket (const char *name);
+- int sock;
+- char message[MAXMSG];
+- struct sockaddr_un name;
+- size_t size;
+- int nbytes;
+-
+- /* @r{Make the socket.} */
+- sock = make_named_socket (CLIENT);
+-
+- /* @r{Initialize the server socket address.} */
+- name.sun_family = AF_LOCAL;
+- strcpy (name.sun_path, SERVER);
+- size = strlen (name.sun_path) + sizeof (name.sun_family);
+-
+- /* @r{Send the datagram.} */
+- nbytes = sendto (sock, MESSAGE, strlen (MESSAGE) + 1, 0,
+- (struct sockaddr *) & name, size);
+- if (nbytes < 0)
+- @{
+- perror ("sendto (client)");
+- exit (EXIT_FAILURE);
+- @}
+-
+- /* @r{Wait for a reply.} */
+- nbytes = recvfrom (sock, message, MAXMSG, 0, NULL, 0);
+- if (nbytes < 0)
+- @{
+- perror ("recfrom (client)");
+- exit (EXIT_FAILURE);
+- @}
+-
+- /* @r{Print a diagnostic message.} */
+- fprintf (stderr, "Client: got message: %s\n", message);
+-
+- /* @r{Clean up.} */
+- remove (CLIENT);
+- close (sock);
+-@}
+diff -u -udbrN glibc-2.3.2/manual/filesrv.c.texi glibc-2.3.2-200304020432/manual/filesrv.c.texi
+--- glibc-2.3.2/manual/filesrv.c.texi Wed Dec 9 23:51:53 1998
++++ glibc-2.3.2-200304020432/manual/filesrv.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,48 +0,0 @@
+-#include <stdio.h>
+-#include <errno.h>
+-#include <stdlib.h>
+-#include <sys/socket.h>
+-#include <sys/un.h>
+-
+-#define SERVER "/tmp/serversocket"
+-#define MAXMSG 512
+-
+-int
+-main (void)
+-@{
+- int sock;
+- char message[MAXMSG];
+- struct sockaddr_un name;
+- size_t size;
+- int nbytes;
+-
+- /* @r{Remove the filename first, it's ok if the call fails} */
+- unlink (SERVER);
+-
+- /* @r{Make the socket, then loop endlessly.} */
+- sock = make_named_socket (SERVER);
+- while (1)
+- @{
+- /* @r{Wait for a datagram.} */
+- size = sizeof (name);
+- nbytes = recvfrom (sock, message, MAXMSG, 0,
+- (struct sockaddr *) & name, &size);
+- if (nbytes < 0)
+- @{
+- perror ("recfrom (server)");
+- exit (EXIT_FAILURE);
+- @}
+-
+- /* @r{Give a diagnostic message.} */
+- fprintf (stderr, "Server: got message: %s\n", message);
+-
+- /* @r{Bounce the message back to the sender.} */
+- nbytes = sendto (sock, message, nbytes, 0,
+- (struct sockaddr *) & name, size);
+- if (nbytes < 0)
+- @{
+- perror ("sendto (server)");
+- exit (EXIT_FAILURE);
+- @}
+- @}
+-@}
+diff -u -udbrN glibc-2.3.2/manual/fmtmsgexpl.c.texi glibc-2.3.2-200304020432/manual/fmtmsgexpl.c.texi
+--- glibc-2.3.2/manual/fmtmsgexpl.c.texi Wed Dec 9 23:51:53 1998
++++ glibc-2.3.2-200304020432/manual/fmtmsgexpl.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,12 +0,0 @@
+-#include <fmtmsg.h>
+-
+-int
+-main (void)
+-@{
+- addseverity (5, "NOTE2");
+- fmtmsg (MM_PRINT, "only1field", MM_INFO, "text2", "action2", "tag2");
+- fmtmsg (MM_PRINT, "UX:cat", 5, "invalid syntax", "refer to manual",
+- "UX:cat:001");
+- fmtmsg (MM_PRINT, "label:foo", 6, "text", "action", "tag");
+- return 0;
+-@}
+diff -u -udbrN glibc-2.3.2/manual/genpass.c.texi glibc-2.3.2-200304020432/manual/genpass.c.texi
+--- glibc-2.3.2/manual/genpass.c.texi Tue Apr 18 06:13:59 2000
++++ glibc-2.3.2-200304020432/manual/genpass.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,32 +0,0 @@
+-#include <stdio.h>
+-#include <time.h>
+-#include <unistd.h>
+-#include <crypt.h>
+-
+-int
+-main(void)
+-@{
+- unsigned long seed[2];
+- char salt[] = "$1$........";
+- const char *const seedchars =
+- "./0123456789ABCDEFGHIJKLMNOPQRST"
+- "UVWXYZabcdefghijklmnopqrstuvwxyz";
+- char *password;
+- int i;
+-
+- /* @r{Generate a (not very) random seed.
+- You should do it better than this...} */
+- seed[0] = time(NULL);
+- seed[1] = getpid() ^ (seed[0] >> 14 & 0x30000);
+-
+- /* @r{Turn it into printable characters from `seedchars'.} */
+- for (i = 0; i < 8; i++)
+- salt[3+i] = seedchars[(seed[i/5] >> (i%5)*6) & 0x3f];
+-
+- /* @r{Read in the user's password and encrypt it.} */
+- password = crypt(getpass("Password:"), salt);
+-
+- /* @r{Print the results.} */
+- puts(password);
+- return 0;
+-@}
+diff -u -udbrN glibc-2.3.2/manual/inetcli.c.texi glibc-2.3.2-200304020432/manual/inetcli.c.texi
+--- glibc-2.3.2/manual/inetcli.c.texi Wed Dec 9 23:51:53 1998
++++ glibc-2.3.2-200304020432/manual/inetcli.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,59 +0,0 @@
+-#include <stdio.h>
+-#include <errno.h>
+-#include <stdlib.h>
+-#include <unistd.h>
+-#include <sys/types.h>
+-#include <sys/socket.h>
+-#include <netinet/in.h>
+-#include <netdb.h>
+-
+-#define PORT 5555
+-#define MESSAGE "Yow!!! Are we having fun yet?!?"
+-#define SERVERHOST "mescaline.gnu.org"
+-
+-void
+-write_to_server (int filedes)
+-@{
+- int nbytes;
+-
+- nbytes = write (filedes, MESSAGE, strlen (MESSAGE) + 1);
+- if (nbytes < 0)
+- @{
+- perror ("write");
+- exit (EXIT_FAILURE);
+- @}
+-@}
+-
+-
+-int
+-main (void)
+-@{
+- extern void init_sockaddr (struct sockaddr_in *name,
+- const char *hostname,
+- uint16_t port);
+- int sock;
+- struct sockaddr_in servername;
+-
+- /* @r{Create the socket.} */
+- sock = socket (PF_INET, SOCK_STREAM, 0);
+- if (sock < 0)
+- @{
+- perror ("socket (client)");
+- exit (EXIT_FAILURE);
+- @}
+-
+- /* @r{Connect to the server.} */
+- init_sockaddr (&servername, SERVERHOST, PORT);
+- if (0 > connect (sock,
+- (struct sockaddr *) &servername,
+- sizeof (servername)))
+- @{
+- perror ("connect (client)");
+- exit (EXIT_FAILURE);
+- @}
+-
+- /* @r{Send data to the server.} */
+- write_to_server (sock);
+- close (sock);
+- exit (EXIT_SUCCESS);
+-@}
+diff -u -udbrN glibc-2.3.2/manual/inetsrv.c.texi glibc-2.3.2-200304020432/manual/inetsrv.c.texi
+--- glibc-2.3.2/manual/inetsrv.c.texi Wed Dec 9 23:51:53 1998
++++ glibc-2.3.2-200304020432/manual/inetsrv.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,103 +0,0 @@
+-#include <stdio.h>
+-#include <errno.h>
+-#include <stdlib.h>
+-#include <unistd.h>
+-#include <sys/types.h>
+-#include <sys/socket.h>
+-#include <netinet/in.h>
+-#include <netdb.h>
+-
+-#define PORT 5555
+-#define MAXMSG 512
+-
+-int
+-read_from_client (int filedes)
+-@{
+- char buffer[MAXMSG];
+- int nbytes;
+-
+- nbytes = read (filedes, buffer, MAXMSG);
+- if (nbytes < 0)
+- @{
+- /* @r{Read error.} */
+- perror ("read");
+- exit (EXIT_FAILURE);
+- @}
+- else if (nbytes == 0)
+- /* @r{End-of-file.} */
+- return -1;
+- else
+- @{
+- /* @r{Data read.} */
+- fprintf (stderr, "Server: got message: `%s'\n", buffer);
+- return 0;
+- @}
+-@}
+-
+-int
+-main (void)
+-@{
+- extern int make_socket (uint16_t port);
+- int sock;
+- fd_set active_fd_set, read_fd_set;
+- int i;
+- struct sockaddr_in clientname;
+- size_t size;
+-
+- /* @r{Create the socket and set it up to accept connections.} */
+- sock = make_socket (PORT);
+- if (listen (sock, 1) < 0)
+- @{
+- perror ("listen");
+- exit (EXIT_FAILURE);
+- @}
+-
+- /* @r{Initialize the set of active sockets.} */
+- FD_ZERO (&active_fd_set);
+- FD_SET (sock, &active_fd_set);
+-
+- while (1)
+- @{
+- /* @r{Block until input arrives on one or more active sockets.} */
+- read_fd_set = active_fd_set;
+- if (select (FD_SETSIZE, &read_fd_set, NULL, NULL, NULL) < 0)
+- @{
+- perror ("select");
+- exit (EXIT_FAILURE);
+- @}
+-
+- /* @r{Service all the sockets with input pending.} */
+- for (i = 0; i < FD_SETSIZE; ++i)
+- if (FD_ISSET (i, &read_fd_set))
+- @{
+- if (i == sock)
+- @{
+- /* @r{Connection request on original socket.} */
+- int new;
+- size = sizeof (clientname);
+- new = accept (sock,
+- (struct sockaddr *) &clientname,
+- &size);
+- if (new < 0)
+- @{
+- perror ("accept");
+- exit (EXIT_FAILURE);
+- @}
+- fprintf (stderr,
+- "Server: connect from host %s, port %hd.\n",
+- inet_ntoa (clientname.sin_addr),
+- ntohs (clientname.sin_port));
+- FD_SET (new, &active_fd_set);
+- @}
+- else
+- @{
+- /* @r{Data arriving on an already-connected socket.} */
+- if (read_from_client (i) < 0)
+- @{
+- close (i);
+- FD_CLR (i, &active_fd_set);
+- @}
+- @}
+- @}
+- @}
+-@}
+diff -u -udbrN glibc-2.3.2/manual/isockad.c.texi glibc-2.3.2-200304020432/manual/isockad.c.texi
+--- glibc-2.3.2/manual/isockad.c.texi Wed Dec 9 23:51:53 1998
++++ glibc-2.3.2-200304020432/manual/isockad.c.texi Thu Jan 1 01:00:00 1970
+@@ -1,23 +0,0 @@
+-#include <stdio.h>
+-#include <stdlib.h>
+-#include <sys/socket.h>
+-#include <netinet/in.h>
+-#include <netdb.h>
+-
+-void
+-init_sockaddr (struct sockaddr_in *name,
+- const char *hostname,
+- uint16_t port)
+-@{
+- struct hostent *hostinfo;
+-
+- name->sin_family = AF_INET;
+- name->sin_port = htons (port);
+- hostinfo = gethostbyname (hostname);
+- if (hostinfo == NULL)
+- @{
+- fprintf (stderr, "Unknown host %s.\n", hostname);
+- exit (EXIT_FAILURE);
+- @}
+- name->sin_addr = *(struct in_addr *) hostinfo->h_addr;
+-@}
+diff -u -udbrN glibc-2.3.2/manual/libc.cp glibc-2.3.2-200304020432/manual/libc.cp
+--- glibc-2.3.2/manual/libc.cp Tue Feb 25 11:35:07 2003
++++ glibc-2.3.2-200304020432/manual/libc.cp Thu Jan 1 01:00:00 1970
+@@ -1,1058 +0,0 @@
+-\entry{library}{1}{library}
+-\entry{standards}{1}{standards}
+-\entry{ISO C}{2}{ISO C}
+-\entry{POSIX}{2}{POSIX}
+-\entry{POSIX.1}{2}{POSIX.1}
+-\entry{IEEE Std 1003.1}{2}{IEEE Std 1003.1}
+-\entry{ISO/IEC 9945-1}{2}{ISO/IEC 9945-1}
+-\entry{POSIX.2}{2}{POSIX.2}
+-\entry{IEEE Std 1003.2}{2}{IEEE Std 1003.2}
+-\entry{ISO/IEC 9945-2}{2}{ISO/IEC 9945-2}
+-\entry{BSD Unix}{3}{BSD Unix}
+-\entry{4.n BSD Unix}{3}{4.\var {n} BSD Unix}
+-\entry{Berkeley Unix}{3}{Berkeley Unix}
+-\entry{SunOS}{3}{SunOS}
+-\entry{Unix, Berkeley}{3}{Unix, Berkeley}
+-\entry{SVID}{3}{SVID}
+-\entry{System V Unix}{3}{System V Unix}
+-\entry{Unix, System V}{3}{Unix, System V}
+-\entry{header files}{4}{header files}
+-\entry{definition (compared to declaration)}{4}{definition (compared to declaration)}
+-\entry{declaration (compared to definition)}{4}{declaration (compared to definition)}
+-\entry{shadowing functions with macros}{5}{shadowing functions with macros}
+-\entry{removing macros that shadow functions}{5}{removing macros that shadow functions}
+-\entry{undefining macros that shadow functions}{5}{undefining macros that shadow functions}
+-\entry{reserved names}{6}{reserved names}
+-\entry{name space}{6}{name space}
+-\entry{feature test macros}{7}{feature test macros}
+-\entry{BSD compatibility library.}{8}{BSD compatibility library.}
+-\entry{error reporting}{15}{error reporting}
+-\entry{reporting errors}{15}{reporting errors}
+-\entry{error codes}{15}{error codes}
+-\entry{status codes}{15}{status codes}
+-\entry{program name}{27}{program name}
+-\entry{name of running program}{27}{name of running program}
+-\entry{memory allocation}{31}{memory allocation}
+-\entry{storage allocation}{31}{storage allocation}
+-\entry{page frame}{31}{page frame}
+-\entry{frame, real memory}{31}{frame, real memory}
+-\entry{swap space}{31}{swap space}
+-\entry{page, virtual memory}{31}{page, virtual memory}
+-\entry{page fault}{31}{page fault}
+-\entry{paging}{31}{paging}
+-\entry{executable}{32}{executable}
+-\entry{literals}{32}{literals}
+-\entry{constants}{32}{constants}
+-\entry{memory mapped I/O}{32}{memory mapped I/O}
+-\entry{memory mapped file}{32}{memory mapped file}
+-\entry{files, accessing}{32}{files, accessing}
+-\entry{execing a program}{32}{execing a program}
+-\entry{freeing memory}{32}{freeing memory}
+-\entry{exiting a program}{32}{exiting a program}
+-\entry{static memory allocation}{33}{static memory allocation}
+-\entry{static storage class}{33}{static storage class}
+-\entry{automatic memory allocation}{33}{automatic memory allocation}
+-\entry{automatic storage class}{33}{automatic storage class}
+-\entry{dynamic memory allocation}{33}{dynamic memory allocation}
+-\entry{dynamic memory allocation}{33}{dynamic memory allocation}
+-\entry{unconstrained memory allocation}{34}{unconstrained memory allocation}
+-\entry{malloc function}{34}{\code {malloc} function}
+-\entry{heap, dynamic allocation from}{34}{heap, dynamic allocation from}
+-\entry{allocation of memory with malloc}{34}{allocation of memory with \code {malloc}}
+-\entry{freeing memory allocated with malloc}{35}{freeing memory allocated with \code {malloc}}
+-\entry{heap, freeing memory from}{35}{heap, freeing memory from}
+-\entry{changing the size of a block (malloc)}{36}{changing the size of a block (\code {malloc})}
+-\entry{efficiency and malloc}{37}{efficiency and \code {malloc}}
+-\entry{page boundary}{38}{page boundary}
+-\entry{alignment (with malloc)}{38}{alignment (with \code {malloc})}
+-\entry{heap consistency checking}{39}{heap consistency checking}
+-\entry{consistency checking, of heap}{39}{consistency checking, of heap}
+-\entry{allocation hooks, for malloc}{41}{allocation hooks, for \code {malloc}}
+-\entry{allocation statistics}{43}{allocation statistics}
+-\entry{allocation debugging}{45}{allocation debugging}
+-\entry{malloc debugger}{45}{malloc debugger}
+-\entry{obstacks}{49}{obstacks}
+-\entry{allocation (obstacks)}{51}{allocation (obstacks)}
+-\entry{freeing (obstacks)}{52}{freeing (obstacks)}
+-\entry{macros}{52}{macros}
+-\entry{growing objects (in obstacks)}{53}{growing objects (in obstacks)}
+-\entry{changing the size of a block (obstacks)}{53}{changing the size of a block (obstacks)}
+-\entry{shrinking objects}{54}{shrinking objects}
+-\entry{efficiency and obstacks}{55}{efficiency and obstacks}
+-\entry{obstack status}{56}{obstack status}
+-\entry{status of obstack}{56}{status of obstack}
+-\entry{alignment (in obstacks)}{56}{alignment (in obstacks)}
+-\entry{efficiency of chunks}{57}{efficiency of chunks}
+-\entry{chunks}{57}{chunks}
+-\entry{automatic freeing}{59}{automatic freeing}
+-\entry{alloca function}{59}{\code {alloca} function}
+-\entry{automatic storage with variable size}{59}{automatic storage with variable size}
+-\entry{longjmp}{60}{longjmp}
+-\entry{alloca disadvantages}{61}{\code {alloca} disadvantages}
+-\entry{disadvantages of alloca}{61}{disadvantages of \code {alloca}}
+-\entry{variable-sized arrays}{61}{variable-sized arrays}
+-\entry{locking pages}{62}{locking pages}
+-\entry{memory lock}{62}{memory lock}
+-\entry{paging}{62}{paging}
+-\entry{realtime processing}{62}{realtime processing}
+-\entry{speed of execution}{62}{speed of execution}
+-\entry{copy-on-write page fault}{63}{copy-on-write page fault}
+-\entry{page fault, copy-on-write}{63}{page fault, copy-on-write}
+-\entry{character testing}{67}{character testing}
+-\entry{classification of characters}{67}{classification of characters}
+-\entry{predicates on characters}{67}{predicates on characters}
+-\entry{character predicates}{67}{character predicates}
+-\entry{lower-case character}{67}{lower-case character}
+-\entry{upper-case character}{67}{upper-case character}
+-\entry{alphabetic character}{67}{alphabetic character}
+-\entry{digit character}{67}{digit character}
+-\entry{decimal digit character}{67}{decimal digit character}
+-\entry{alphanumeric character}{68}{alphanumeric character}
+-\entry{hexadecimal digit character}{68}{hexadecimal digit character}
+-\entry{punctuation character}{68}{punctuation character}
+-\entry{whitespace character}{68}{whitespace character}
+-\entry{blank character}{68}{blank character}
+-\entry{graphic character}{68}{graphic character}
+-\entry{printing character}{68}{printing character}
+-\entry{control character}{68}{control character}
+-\entry{ASCII character}{68}{ASCII character}
+-\entry{character case conversion}{69}{character case conversion}
+-\entry{case conversion of characters}{69}{case conversion of characters}
+-\entry{converting case of characters}{69}{converting case of characters}
+-\entry{alphanumeric character}{70}{alphanumeric character}
+-\entry{alphabetic character}{70}{alphabetic character}
+-\entry{control character}{71}{control character}
+-\entry{digit character}{71}{digit character}
+-\entry{graphic character}{71}{graphic character}
+-\entry{lower-case character}{71}{lower-case character}
+-\entry{printing character}{71}{printing character}
+-\entry{punctuation character}{72}{punctuation character}
+-\entry{whitespace character}{72}{whitespace character}
+-\entry{upper-case character}{72}{upper-case character}
+-\entry{hexadecimal digit character}{72}{hexadecimal digit character}
+-\entry{blank character}{72}{blank character}
+-\entry{string, representation of}{75}{string, representation of}
+-\entry{string}{75}{string}
+-\entry{multibyte character string}{75}{multibyte character string}
+-\entry{wide character string}{75}{wide character string}
+-\entry{null character}{75}{null character}
+-\entry{null wide character}{75}{null wide character}
+-\entry{string literal}{75}{string literal}
+-\entry{length of string}{76}{length of string}
+-\entry{allocation size of string}{76}{allocation size of string}
+-\entry{size of string}{76}{size of string}
+-\entry{string length}{76}{string length}
+-\entry{string allocation}{76}{string allocation}
+-\entry{single-byte string}{76}{single-byte string}
+-\entry{multibyte string}{76}{multibyte string}
+-\entry{wide character string}{76}{wide character string}
+-\entry{wint_t}{77}{wint_t}
+-\entry{parameter promotion}{77}{parameter promotion}
+-\entry{copying strings and arrays}{79}{copying strings and arrays}
+-\entry{string copy functions}{79}{string copy functions}
+-\entry{array copy functions}{79}{array copy functions}
+-\entry{concatenating strings}{79}{concatenating strings}
+-\entry{string concatenation functions}{79}{string concatenation functions}
+-\entry{__va_copy}{85}{__va_copy}
+-\entry{va_copy}{85}{va_copy}
+-\entry{comparing strings and arrays}{89}{comparing strings and arrays}
+-\entry{string comparison functions}{89}{string comparison functions}
+-\entry{array comparison functions}{89}{array comparison functions}
+-\entry{predicates on strings}{89}{predicates on strings}
+-\entry{predicates on arrays}{89}{predicates on arrays}
+-\entry{collating strings}{92}{collating strings}
+-\entry{string collation functions}{92}{string collation functions}
+-\entry{converting string to collation order}{93}{converting string to collation order}
+-\entry{search functions (for strings)}{96}{search functions (for strings)}
+-\entry{string search functions}{96}{string search functions}
+-\entry{tokenizing strings}{100}{tokenizing strings}
+-\entry{breaking a string into tokens}{100}{breaking a string into tokens}
+-\entry{parsing tokens from a string}{100}{parsing tokens from a string}
+-\entry{encryption}{105}{encryption}
+-\entry{Rot13}{105}{Rot13}
+-\entry{argz vectors (string vectors)}{107}{argz vectors (string vectors)}
+-\entry{string vectors, null-character separated}{107}{string vectors, null-character separated}
+-\entry{argument vectors, null-character separated}{107}{argument vectors, null-character separated}
+-\entry{envz vectors (environment vectors)}{107}{envz vectors (environment vectors)}
+-\entry{environment vectors, null-character separated}{107}{environment vectors, null-character separated}
+-\entry{internal representation}{111}{internal representation}
+-\entry{wide character}{111}{wide character}
+-\entry{Unicode}{111}{Unicode}
+-\entry{ISO 10646}{111}{ISO 10646}
+-\entry{UCS-2}{111}{UCS-2}
+-\entry{UCS-4}{111}{UCS-4}
+-\entry{UTF-8}{111}{UTF-8}
+-\entry{UTF-16}{111}{UTF-16}
+-\entry{multibyte character}{113}{multibyte character}
+-\entry{EBCDIC}{113}{EBCDIC}
+-\entry{ISO 2022}{113}{ISO 2022}
+-\entry{EUC}{113}{EUC}
+-\entry{Shift_JIS}{113}{Shift_JIS}
+-\entry{SJIS}{113}{SJIS}
+-\entry{ISO 6937}{114}{ISO 6937}
+-\entry{UTF-8}{114}{UTF-8}
+-\entry{UTF-7}{114}{UTF-7}
+-\entry{stateful}{116}{stateful}
+-\entry{shift state}{116}{shift state}
+-\entry{stateful}{119}{stateful}
+-\entry{stateful}{124}{stateful}
+-\entry{stateful}{134}{stateful}
+-\entry{stateful}{136}{stateful}
+-\entry{triangulation}{139}{triangulation}
+-\entry{ISO-2022-JP}{139}{ISO-2022-JP}
+-\entry{EUC-JP}{139}{EUC-JP}
+-\entry{stateful}{148}{stateful}
+-\entry{internationalization}{153}{internationalization}
+-\entry{locales}{153}{locales}
+-\entry{combining locales}{154}{combining locales}
+-\entry{categories for locales}{154}{categories for locales}
+-\entry{locale categories}{154}{locale categories}
+-\entry{changing the locale}{155}{changing the locale}
+-\entry{locale, changing}{155}{locale, changing}
+-\entry{monetary value formatting}{158}{monetary value formatting}
+-\entry{numeric value formatting}{158}{numeric value formatting}
+-\entry{decimal-point separator}{158}{decimal-point separator}
+-\entry{grouping of digits}{158}{grouping of digits}
+-\entry{currency symbols}{159}{currency symbols}
+-\entry{NLSPATH environment variable}{172}{NLSPATH environment variable}
+-\entry{LC_ALL environment variable}{173}{LC_ALL environment variable}
+-\entry{LC_MESSAGES environment variable}{173}{LC_MESSAGES environment variable}
+-\entry{LANG environment variable}{173}{LANG environment variable}
+-\entry{gencat}{176}{gencat}
+-\entry{sgettext}{190}{sgettext}
+-\entry{sgettext}{190}{sgettext}
+-\entry{Comparison Function}{195}{Comparison Function}
+-\entry{search function (for arrays)}{195}{search function (for arrays)}
+-\entry{binary search function (for arrays)}{195}{binary search function (for arrays)}
+-\entry{array search function}{195}{array search function}
+-\entry{sort function (for arrays)}{196}{sort function (for arrays)}
+-\entry{quick sort function (for arrays)}{196}{quick sort function (for arrays)}
+-\entry{array sort function}{196}{array sort function}
+-\entry{stable sorting}{196}{stable sorting}
+-\entry{Kermit the frog}{199}{Kermit the frog}
+-\entry{Korn Shell}{206}{Korn Shell}
+-\entry{globbing}{206}{globbing}
+-\entry{word expansion}{218}{word expansion}
+-\entry{expansion of shell words}{218}{expansion of shell words}
+-\entry{tilde expansion}{219}{tilde expansion}
+-\entry{variable substitution}{219}{variable substitution}
+-\entry{substitution of variables and commands}{219}{substitution of variables and commands}
+-\entry{command substitution}{219}{command substitution}
+-\entry{arithmetic expansion}{219}{arithmetic expansion}
+-\entry{field splitting}{219}{field splitting}
+-\entry{wildcard expansion}{219}{wildcard expansion}
+-\entry{quote removal}{219}{quote removal}
+-\entry{removal of quotes}{219}{removal of quotes}
+-\entry{opening a file}{225}{opening a file}
+-\entry{file position}{226}{file position}
+-\entry{sequential-access files}{226}{sequential-access files}
+-\entry{random-access files}{226}{random-access files}
+-\entry{append-access files}{227}{append-access files}
+-\entry{file name}{227}{file name}
+-\entry{directory}{227}{directory}
+-\entry{link}{227}{link}
+-\entry{directory entry}{227}{directory entry}
+-\entry{file name component}{227}{file name component}
+-\entry{file name resolution}{228}{file name resolution}
+-\entry{root directory}{228}{root directory}
+-\entry{absolute file name}{228}{absolute file name}
+-\entry{relative file name}{228}{relative file name}
+-\entry{parent directory}{228}{parent directory}
+-\entry{file name errors}{229}{file name errors}
+-\entry{usual file name errors}{229}{usual file name errors}
+-\entry{file pointer}{231}{file pointer}
+-\entry{standard streams}{231}{standard streams}
+-\entry{streams, standard}{231}{streams, standard}
+-\entry{standard input stream}{231}{standard input stream}
+-\entry{standard output stream}{231}{standard output stream}
+-\entry{standard error stream}{232}{standard error stream}
+-\entry{opening a stream}{232}{opening a stream}
+-\entry{stream orientation}{233}{stream orientation}
+-\entry{orientation, stream}{233}{orientation, stream}
+-\entry{closing a stream}{235}{closing a stream}
+-\entry{threads}{236}{threads}
+-\entry{multi-threaded application}{236}{multi-threaded application}
+-\entry{C++ streams}{239}{C++ streams}
+-\entry{streams, C++}{239}{streams, C++}
+-\entry{orientation, stream}{240}{orientation, stream}
+-\entry{stream orientation}{240}{stream orientation}
+-\entry{writing to a stream, by characters}{241}{writing to a stream, by characters}
+-\entry{reading from a stream, by characters}{243}{reading from a stream, by characters}
+-\entry{peeking at input}{247}{peeking at input}
+-\entry{unreading characters}{247}{unreading characters}
+-\entry{pushing input back}{247}{pushing input back}
+-\entry{binary I/O to a stream}{249}{binary I/O to a stream}
+-\entry{block I/O to a stream}{249}{block I/O to a stream}
+-\entry{reading from a stream, by blocks}{249}{reading from a stream, by blocks}
+-\entry{writing to a stream, by blocks}{249}{writing to a stream, by blocks}
+-\entry{format string, for printf}{250}{format string, for \code {printf}}
+-\entry{template, for printf}{250}{template, for \code {printf}}
+-\entry{formatted output to a stream}{250}{formatted output to a stream}
+-\entry{writing to a stream, formatted}{250}{writing to a stream, formatted}
+-\entry{conversion specifications (printf)}{250}{conversion specifications (\code {printf})}
+-\entry{flag character (printf)}{252}{flag character (\code {printf})}
+-\entry{minimum field width (printf)}{252}{minimum field width (\code {printf})}
+-\entry{precision (printf)}{252}{precision (\code {printf})}
+-\entry{type modifier character (printf)}{252}{type modifier character (\code {printf})}
+-\entry{output conversions, for printf}{252}{output conversions, for \code {printf}}
+-\entry{parsing a template string}{263}{parsing a template string}
+-\entry{customizing printf}{266}{customizing \code {printf}}
+-\entry{defining new printf conversions}{266}{defining new \code {printf} conversions}
+-\entry{extending printf}{266}{extending \code {printf}}
+-\entry{formatted input from a stream}{272}{formatted input from a stream}
+-\entry{reading from a stream, formatted}{272}{reading from a stream, formatted}
+-\entry{format string, for scanf}{272}{format string, for \code {scanf}}
+-\entry{template, for scanf}{272}{template, for \code {scanf}}
+-\entry{conversion specifications (scanf)}{272}{conversion specifications (\code {scanf})}
+-\entry{matching failure, in scanf}{272}{matching failure, in \code {scanf}}
+-\entry{flag character (scanf)}{273}{flag character (\code {scanf})}
+-\entry{maximum field width (scanf)}{273}{maximum field width (\code {scanf})}
+-\entry{type modifier character (scanf)}{273}{type modifier character (\code {scanf})}
+-\entry{input conversions, for scanf}{274}{input conversions, for \code {scanf}}
+-\entry{end of file, on a stream}{281}{end of file, on a stream}
+-\entry{text stream}{283}{text stream}
+-\entry{binary stream}{283}{binary stream}
+-\entry{lines (in a text file)}{283}{lines (in a text file)}
+-\entry{file positioning on a stream}{284}{file positioning on a stream}
+-\entry{positioning a stream}{284}{positioning a stream}
+-\entry{seeking on a stream}{284}{seeking on a stream}
+-\entry{buffering of streams}{288}{buffering of streams}
+-\entry{unbuffered stream}{288}{unbuffered stream}
+-\entry{line buffered stream}{288}{line buffered stream}
+-\entry{fully buffered stream}{288}{fully buffered stream}
+-\entry{flushing a stream}{289}{flushing a stream}
+-\entry{buffering, controlling}{290}{buffering, controlling}
+-\entry{stream, for I/O to a string}{292}{stream, for I/O to a string}
+-\entry{string stream}{292}{string stream}
+-\entry{custom streams}{295}{custom streams}
+-\entry{programming your own streams}{295}{programming your own streams}
+-\entry{cookie, for custom stream}{295}{cookie, for custom stream}
+-\entry{hook functions (of custom streams)}{296}{hook functions (of custom streams)}
+-\entry{formatted messages}{297}{formatted messages}
+-\entry{severity class}{298}{severity class}
+-\entry{severity class}{300}{severity class}
+-\entry{opening a file descriptor}{303}{opening a file descriptor}
+-\entry{closing a file descriptor}{303}{closing a file descriptor}
+-\entry{reading from a file descriptor}{306}{reading from a file descriptor}
+-\entry{end-of-file, on a file descriptor}{306}{end-of-file, on a file descriptor}
+-\entry{writing to a file descriptor}{308}{writing to a file descriptor}
+-\entry{file positioning on a file descriptor}{310}{file positioning on a file descriptor}
+-\entry{positioning a file descriptor}{310}{positioning a file descriptor}
+-\entry{seeking on a file descriptor}{310}{seeking on a file descriptor}
+-\entry{sparse files}{311}{sparse files}
+-\entry{holes in files}{311}{holes in files}
+-\entry{streams, and file descriptors}{313}{streams, and file descriptors}
+-\entry{converting file descriptor to stream}{313}{converting file descriptor to stream}
+-\entry{extracting file descriptor from stream}{313}{extracting file descriptor from stream}
+-\entry{standard file descriptors}{313}{standard file descriptors}
+-\entry{file descriptors, standard}{313}{file descriptors, standard}
+-\entry{standard input file descriptor}{313}{standard input file descriptor}
+-\entry{standard output file descriptor}{313}{standard output file descriptor}
+-\entry{standard error file descriptor}{313}{standard error file descriptor}
+-\entry{channels}{314}{channels}
+-\entry{streams and descriptors}{314}{streams and descriptors}
+-\entry{descriptors and streams}{314}{descriptors and streams}
+-\entry{mixing descriptors and streams}{314}{mixing descriptors and streams}
+-\entry{linked channels}{314}{linked channels}
+-\entry{cleaning up a stream}{314}{cleaning up a stream}
+-\entry{independent channels}{314}{independent channels}
+-\entry{scatter-gather}{315}{scatter-gather}
+-\entry{waiting for input or output}{321}{waiting for input or output}
+-\entry{multiplexing input}{321}{multiplexing input}
+-\entry{input from multiple files}{321}{input from multiple files}
+-\entry{file descriptor sets, for select}{321}{file descriptor sets, for \code {select}}
+-\entry{synchronizing}{323}{synchronizing}
+-\entry{synchronizing}{332}{synchronizing}
+-\entry{control operations on files}{336}{control operations on files}
+-\entry{fcntl function}{336}{\code {fcntl} function}
+-\entry{duplicating file descriptors}{337}{duplicating file descriptors}
+-\entry{redirecting input and output}{337}{redirecting input and output}
+-\entry{file descriptor flags}{339}{file descriptor flags}
+-\entry{close-on-exec (file descriptor flag)}{339}{close-on-exec (file descriptor flag)}
+-\entry{file status flags}{340}{file status flags}
+-\entry{file name translation flags}{341}{file name translation flags}
+-\entry{flags, file name translation}{341}{flags, file name translation}
+-\entry{open-time action flags}{342}{open-time action flags}
+-\entry{flags, open-time action}{342}{flags, open-time action}
+-\entry{create on open (file status flag)}{342}{create on open (file status flag)}
+-\entry{non-blocking open}{342}{non-blocking open}
+-\entry{controlling terminal, setting}{342}{controlling terminal, setting}
+-\entry{symbolic link, opening}{342}{symbolic link, opening}
+-\entry{file locks}{345}{file locks}
+-\entry{record locking}{345}{record locking}
+-\entry{exclusive lock}{345}{exclusive lock}
+-\entry{write lock}{345}{write lock}
+-\entry{shared lock}{345}{shared lock}
+-\entry{read lock}{345}{read lock}
+-\entry{interrupt-driven input}{348}{interrupt-driven input}
+-\entry{generic i/o control operations}{349}{generic i/o control operations}
+-\entry{IOCTLs}{349}{IOCTLs}
+-\entry{current working directory}{351}{current working directory}
+-\entry{working directory}{351}{working directory}
+-\entry{change working directory}{351}{change working directory}
+-\entry{accessing directories}{353}{accessing directories}
+-\entry{reading from a directory}{353}{reading from a directory}
+-\entry{directories, accessing}{353}{directories, accessing}
+-\entry{directory stream}{353}{directory stream}
+-\entry{directory hierarchy}{360}{directory hierarchy}
+-\entry{hierarchy, directory}{360}{hierarchy, directory}
+-\entry{tree, directory}{360}{tree, directory}
+-\entry{hard link}{363}{hard link}
+-\entry{link, hard}{363}{link, hard}
+-\entry{multiple names for one file}{363}{multiple names for one file}
+-\entry{file names, multiple}{363}{file names, multiple}
+-\entry{soft link}{364}{soft link}
+-\entry{link, soft}{364}{link, soft}
+-\entry{symbolic link}{364}{symbolic link}
+-\entry{link, symbolic}{364}{link, symbolic}
+-\entry{deleting a file}{367}{deleting a file}
+-\entry{removing a file}{367}{removing a file}
+-\entry{unlinking a file}{367}{unlinking a file}
+-\entry{directories, deleting}{368}{directories, deleting}
+-\entry{deleting a directory}{368}{deleting a directory}
+-\entry{renaming a file}{368}{renaming a file}
+-\entry{creating a directory}{369}{creating a directory}
+-\entry{directories, creating}{369}{directories, creating}
+-\entry{status of a file}{370}{status of a file}
+-\entry{attributes of a file}{370}{attributes of a file}
+-\entry{file attributes}{370}{file attributes}
+-\entry{inode number}{373}{inode number}
+-\entry{file owner}{377}{file owner}
+-\entry{owner of a file}{377}{owner of a file}
+-\entry{group owner of a file}{377}{group owner of a file}
+-\entry{file permission bits}{378}{file permission bits}
+-\entry{sticky bit}{379}{sticky bit}
+-\entry{permission to access a file}{380}{permission to access a file}
+-\entry{access permission for a file}{380}{access permission for a file}
+-\entry{file access permission}{380}{file access permission}
+-\entry{file creation mask}{380}{file creation mask}
+-\entry{umask}{380}{umask}
+-\entry{testing access permission}{382}{testing access permission}
+-\entry{access, testing for}{382}{access, testing for}
+-\entry{setuid programs and file access}{382}{setuid programs and file access}
+-\entry{file access time}{383}{file access time}
+-\entry{file modification time}{383}{file modification time}
+-\entry{file attribute modification time}{383}{file attribute modification time}
+-\entry{creating special files}{388}{creating special files}
+-\entry{special files}{388}{special files}
+-\entry{TMPDIR environment variable}{390}{TMPDIR environment variable}
+-\entry{pipe}{393}{pipe}
+-\entry{FIFO special file}{393}{FIFO special file}
+-\entry{creating a pipe}{393}{creating a pipe}
+-\entry{opening a pipe}{393}{opening a pipe}
+-\entry{interprocess communication, with pipes}{393}{interprocess communication, with pipes}
+-\entry{creating a pipe to a subprocess}{395}{creating a pipe to a subprocess}
+-\entry{pipe to a subprocess}{395}{pipe to a subprocess}
+-\entry{filtering i/o through subprocess}{395}{filtering i/o through subprocess}
+-\entry{creating a FIFO special file}{396}{creating a FIFO special file}
+-\entry{interprocess communication, with FIFO}{396}{interprocess communication, with FIFO}
+-\entry{socket}{399}{socket}
+-\entry{interprocess communication, with sockets}{399}{interprocess communication, with sockets}
+-\entry{communication style (of a socket)}{399}{communication style (of a socket)}
+-\entry{style of communication (of a socket)}{399}{style of communication (of a socket)}
+-\entry{packet}{399}{packet}
+-\entry{byte stream}{399}{byte stream}
+-\entry{stream (sockets)}{399}{stream (sockets)}
+-\entry{loss of data on sockets}{399}{loss of data on sockets}
+-\entry{data loss on sockets}{399}{data loss on sockets}
+-\entry{namespace (of socket)}{399}{namespace (of socket)}
+-\entry{domain (of socket)}{399}{domain (of socket)}
+-\entry{socket namespace}{399}{socket namespace}
+-\entry{socket domain}{399}{socket domain}
+-\entry{network protocol}{399}{network protocol}
+-\entry{protocol (of socket)}{399}{protocol (of socket)}
+-\entry{socket protocol}{399}{socket protocol}
+-\entry{protocol family}{399}{protocol family}
+-\entry{address of socket}{401}{address of socket}
+-\entry{name of socket}{401}{name of socket}
+-\entry{binding a socket address}{401}{binding a socket address}
+-\entry{socket address (name) binding}{401}{socket address (name) binding}
+-\entry{local namespace, for sockets}{405}{local namespace, for sockets}
+-\entry{Internet namespace, for sockets}{407}{Internet namespace, for sockets}
+-\entry{host address, Internet}{409}{host address, Internet}
+-\entry{Internet host address}{409}{Internet host address}
+-\entry{network number}{409}{network number}
+-\entry{local network address number}{409}{local network address number}
+-\entry{standard dot notation, for Internet addresses}{409}{standard dot notation, for Internet addresses}
+-\entry{dot notation, for Internet addresses}{409}{dot notation, for Internet addresses}
+-\entry{hosts database}{413}{hosts database}
+-\entry{converting host name to address}{413}{converting host name to address}
+-\entry{converting host address to name}{413}{converting host address to name}
+-\entry{port number}{416}{port number}
+-\entry{services database}{417}{services database}
+-\entry{converting service name to port number}{417}{converting service name to port number}
+-\entry{converting port number to service name}{417}{converting port number to service name}
+-\entry{byte order conversion, for socket}{418}{byte order conversion, for socket}
+-\entry{converting byte order}{418}{converting byte order}
+-\entry{big-endian}{418}{big-endian}
+-\entry{little-endian}{418}{little-endian}
+-\entry{network byte order}{418}{network byte order}
+-\entry{protocols database}{419}{protocols database}
+-\entry{TCP (Internet protocol)}{419}{TCP (Internet protocol)}
+-\entry{creating a socket}{422}{creating a socket}
+-\entry{socket, creating}{422}{socket, creating}
+-\entry{opening a socket}{422}{opening a socket}
+-\entry{socket, closing}{422}{socket, closing}
+-\entry{closing a socket}{422}{closing a socket}
+-\entry{shutting down a socket}{422}{shutting down a socket}
+-\entry{socket shutdown}{422}{socket shutdown}
+-\entry{creating a socket pair}{423}{creating a socket pair}
+-\entry{socket pair}{423}{socket pair}
+-\entry{opening a socket pair}{423}{opening a socket pair}
+-\entry{connection}{424}{connection}
+-\entry{client}{424}{client}
+-\entry{server}{424}{server}
+-\entry{connecting a socket}{424}{connecting a socket}
+-\entry{socket, connecting}{424}{socket, connecting}
+-\entry{socket, initiating a connection}{424}{socket, initiating a connection}
+-\entry{socket, client actions}{424}{socket, client actions}
+-\entry{listening (sockets)}{425}{listening (sockets)}
+-\entry{sockets, server actions}{425}{sockets, server actions}
+-\entry{sockets, listening}{425}{sockets, listening}
+-\entry{sockets, accepting connections}{426}{sockets, accepting connections}
+-\entry{accepting connections}{426}{accepting connections}
+-\entry{reading from a socket}{427}{reading from a socket}
+-\entry{writing to a socket}{427}{writing to a socket}
+-\entry{out-of-band data}{433}{out-of-band data}
+-\entry{high-priority data}{433}{high-priority data}
+-\entry{urgent socket condition}{433}{urgent socket condition}
+-\entry{datagram socket}{435}{datagram socket}
+-\entry{sending a datagram}{436}{sending a datagram}
+-\entry{transmitting datagrams}{436}{transmitting datagrams}
+-\entry{datagrams, transmitting}{436}{datagrams, transmitting}
+-\entry{receiving datagrams}{436}{receiving datagrams}
+-\entry{socket options}{441}{socket options}
+-\entry{level, for socket options}{441}{level, for socket options}
+-\entry{socket option level}{441}{socket option level}
+-\entry{networks database}{443}{networks database}
+-\entry{converting network number to network name}{443}{converting network number to network name}
+-\entry{converting network name to network number}{443}{converting network name to network number}
+-\entry{terminal identification}{445}{terminal identification}
+-\entry{identifying terminals}{445}{identifying terminals}
+-\entry{terminal input queue}{446}{terminal input queue}
+-\entry{typeahead buffer}{446}{typeahead buffer}
+-\entry{terminal output queue}{446}{terminal output queue}
+-\entry{canonical input processing}{446}{canonical input processing}
+-\entry{noncanonical input processing}{446}{noncanonical input processing}
+-\entry{terminal mode data types}{447}{terminal mode data types}
+-\entry{terminal mode functions}{448}{terminal mode functions}
+-\entry{parity checking}{450}{parity checking}
+-\entry{break condition, detecting}{451}{break condition, detecting}
+-\entry{modem status lines}{453}{modem status lines}
+-\entry{carrier detect}{453}{carrier detect}
+-\entry{modem disconnect}{453}{modem disconnect}
+-\entry{echo of terminal input}{455}{echo of terminal input}
+-\entry{interactive signals, from terminal}{456}{interactive signals, from terminal}
+-\entry{line speed}{457}{line speed}
+-\entry{baud rate}{457}{baud rate}
+-\entry{terminal line speed}{457}{terminal line speed}
+-\entry{terminal line speed}{457}{terminal line speed}
+-\entry{EOF character}{458}{EOF character}
+-\entry{EOL character}{459}{EOL character}
+-\entry{EOL2 character}{459}{EOL2 character}
+-\entry{ERASE character}{459}{ERASE character}
+-\entry{WERASE character}{459}{WERASE character}
+-\entry{KILL character}{460}{KILL character}
+-\entry{REPRINT character}{460}{REPRINT character}
+-\entry{INTR character}{460}{INTR character}
+-\entry{interrupt character}{460}{interrupt character}
+-\entry{QUIT character}{460}{QUIT character}
+-\entry{SUSP character}{460}{SUSP character}
+-\entry{suspend character}{460}{suspend character}
+-\entry{DSUSP character}{461}{DSUSP character}
+-\entry{delayed suspend character}{461}{delayed suspend character}
+-\entry{START character}{461}{START character}
+-\entry{STOP character}{461}{STOP character}
+-\entry{LNEXT character}{462}{LNEXT character}
+-\entry{DISCARD character}{462}{DISCARD character}
+-\entry{STATUS character}{462}{STATUS character}
+-\entry{MIN termios slot}{463}{MIN termios slot}
+-\entry{TIME termios slot}{463}{TIME termios slot}
+-\entry{terminal modes, BSD}{464}{terminal modes, BSD}
+-\entry{terminal line control functions}{465}{terminal line control functions}
+-\entry{break condition, generating}{465}{break condition, generating}
+-\entry{flushing terminal output queue}{465}{flushing terminal output queue}
+-\entry{terminal output queue, flushing}{465}{terminal output queue, flushing}
+-\entry{clearing terminal input queue}{465}{clearing terminal input queue}
+-\entry{terminal input queue, clearing}{465}{terminal input queue, clearing}
+-\entry{flow control, terminal}{466}{flow control, terminal}
+-\entry{terminal flow control}{466}{terminal flow control}
+-\entry{pseudo-terminals}{468}{pseudo-terminals}
+-\entry{allocating pseudo-terminals}{468}{allocating pseudo-terminals}
+-\entry{opening a pseudo-terminal pair}{470}{opening a pseudo-terminal pair}
+-\entry{constants}{479}{constants}
+-\entry{mathematical constants}{479}{mathematical constants}
+-\entry{trigonometric functions}{480}{trigonometric functions}
+-\entry{pi (trigonometric constant)}{480}{pi (trigonometric constant)}
+-\entry{complex trigonometric functions}{481}{complex trigonometric functions}
+-\entry{inverse trigonometric functions}{481}{inverse trigonometric functions}
+-\entry{inverse complex trigonometric functions}{482}{inverse complex trigonometric functions}
+-\entry{exponentiation functions}{483}{exponentiation functions}
+-\entry{power functions}{483}{power functions}
+-\entry{logarithm functions}{483}{logarithm functions}
+-\entry{square root function}{485}{square root function}
+-\entry{cube root function}{485}{cube root function}
+-\entry{complex exponentiation functions}{485}{complex exponentiation functions}
+-\entry{complex logarithm functions}{485}{complex logarithm functions}
+-\entry{hyperbolic functions}{486}{hyperbolic functions}
+-\entry{hyperbolic functions}{487}{hyperbolic functions}
+-\entry{inverse hyperbolic functions}{487}{inverse hyperbolic functions}
+-\entry{inverse complex hyperbolic functions}{487}{inverse complex hyperbolic functions}
+-\entry{special functions}{488}{special functions}
+-\entry{Bessel functions}{488}{Bessel functions}
+-\entry{gamma function}{488}{gamma function}
+-\entry{math errors}{490}{math errors}
+-\entry{ulps}{490}{ulps}
+-\entry{random numbers}{508}{random numbers}
+-\entry{pseudo-random numbers}{508}{pseudo-random numbers}
+-\entry{seed (for random numbers)}{508}{seed (for random numbers)}
+-\entry{Optimization}{515}{Optimization}
+-\entry{integer}{517}{integer}
+-\entry{signedness}{517}{signedness}
+-\entry{maximum possible integer}{518}{maximum possible integer}
+-\entry{minimum possible integer}{518}{minimum possible integer}
+-\entry{integer division functions}{518}{integer division functions}
+-\entry{floating point}{520}{floating point}
+-\entry{IEEE 754}{520}{IEEE 754}
+-\entry{IEEE floating point}{520}{IEEE floating point}
+-\entry{floating-point classes}{520}{floating-point classes}
+-\entry{classes, floating-point}{520}{classes, floating-point}
+-\entry{exception}{522}{exception}
+-\entry{signal}{522}{signal}
+-\entry{zero divide}{522}{zero divide}
+-\entry{division by zero}{522}{division by zero}
+-\entry{inexact exception}{522}{inexact exception}
+-\entry{invalid exception}{522}{invalid exception}
+-\entry{overflow exception}{522}{overflow exception}
+-\entry{underflow exception}{522}{underflow exception}
+-\entry{infinity}{524}{infinity}
+-\entry{not a number}{524}{not a number}
+-\entry{NaN}{524}{NaN}
+-\entry{errors, mathematical}{526}{errors, mathematical}
+-\entry{domain error}{526}{domain error}
+-\entry{range error}{526}{range error}
+-\entry{absolute value functions}{530}{absolute value functions}
+-\entry{normalization functions (floating-point)}{531}{normalization functions (floating-point)}
+-\entry{converting floats to integers}{532}{converting floats to integers}
+-\entry{FP arithmetic}{535}{FP arithmetic}
+-\entry{NaN}{536}{NaN}
+-\entry{unordered comparison}{536}{unordered comparison}
+-\entry{minimum}{537}{minimum}
+-\entry{maximum}{537}{maximum}
+-\entry{positive difference}{537}{positive difference}
+-\entry{multiply-add}{537}{multiply-add}
+-\entry{butterfly}{538}{butterfly}
+-\entry{complex numbers}{538}{complex numbers}
+-\entry{project complex numbers}{539}{project complex numbers}
+-\entry{conjugate complex numbers}{539}{conjugate complex numbers}
+-\entry{decompose complex numbers}{539}{decompose complex numbers}
+-\entry{parsing numbers (in formatted input)}{539}{parsing numbers (in formatted input)}
+-\entry{converting strings to numbers}{539}{converting strings to numbers}
+-\entry{number syntax, parsing}{539}{number syntax, parsing}
+-\entry{syntax, for reading numbers}{539}{syntax, for reading numbers}
+-\entry{gcvt_r}{546}{gcvt_r}
+-\entry{time}{549}{time}
+-\entry{calendar time}{549}{calendar time}
+-\entry{date}{549}{date}
+-\entry{interval}{549}{interval}
+-\entry{elapsed time}{549}{elapsed time}
+-\entry{time, elapsed}{549}{time, elapsed}
+-\entry{period of time}{549}{period of time}
+-\entry{CPU time}{549}{CPU time}
+-\entry{processor time}{549}{processor time}
+-\entry{elapsed time}{549}{elapsed time}
+-\entry{timeval}{550}{timeval}
+-\entry{timespec}{550}{timespec}
+-\entry{CPU time}{551}{CPU time}
+-\entry{clock ticks}{551}{clock ticks}
+-\entry{ticks, clock}{551}{ticks, clock}
+-\entry{processor time}{552}{processor time}
+-\entry{CPU time}{552}{CPU time}
+-\entry{child process}{552}{child process}
+-\entry{simple time}{553}{simple time}
+-\entry{high-resolution time}{553}{high-resolution time}
+-\entry{local time}{553}{local time}
+-\entry{broken-down time}{553}{broken-down time}
+-\entry{Gregorian calendar}{553}{Gregorian calendar}
+-\entry{calendar, Gregorian}{553}{calendar, Gregorian}
+-\entry{epoch}{553}{epoch}
+-\entry{broken-down time}{556}{broken-down time}
+-\entry{calendar time and broken-down time}{556}{calendar time and broken-down time}
+-\entry{leap second}{556}{leap second}
+-\entry{Daylight Saving Time}{557}{Daylight Saving Time}
+-\entry{summer time}{557}{summer time}
+-\entry{time, high precision}{559}{time, high precision}
+-\entry{clock, high accuracy}{559}{clock, high accuracy}
+-\entry{time zone}{575}{time zone}
+-\entry{time zone database}{576}{time zone database}
+-\entry{setting an alarm}{578}{setting an alarm}
+-\entry{interval timer, setting}{578}{interval timer, setting}
+-\entry{alarms, setting}{578}{alarms, setting}
+-\entry{timers, setting}{578}{timers, setting}
+-\entry{real-time timer}{578}{real-time timer}
+-\entry{timer, real-time}{578}{timer, real-time}
+-\entry{virtual timer}{578}{virtual timer}
+-\entry{timer, virtual}{578}{timer, virtual}
+-\entry{profiling timer}{578}{profiling timer}
+-\entry{timer, profiling}{578}{timer, profiling}
+-\entry{resource limits}{585}{resource limits}
+-\entry{limits on resource usage}{585}{limits on resource usage}
+-\entry{usage limits}{585}{usage limits}
+-\entry{limit}{585}{limit}
+-\entry{current limit}{585}{current limit}
+-\entry{soft limit}{585}{soft limit}
+-\entry{maximum limit}{585}{maximum limit}
+-\entry{hard limit}{585}{hard limit}
+-\entry{process priority}{589}{process priority}
+-\entry{cpu priority}{589}{cpu priority}
+-\entry{priority of a process}{589}{priority of a process}
+-\entry{absolute priority}{589}{absolute priority}
+-\entry{priority, absolute}{589}{priority, absolute}
+-\entry{realtime CPU scheduling}{589}{realtime CPU scheduling}
+-\entry{ready to run}{590}{ready to run}
+-\entry{preemptive scheduling}{590}{preemptive scheduling}
+-\entry{runnable process}{590}{runnable process}
+-\entry{realtime scheduling}{591}{realtime scheduling}
+-\entry{scheduling, traditional}{595}{scheduling, traditional}
+-\entry{address space}{598}{address space}
+-\entry{physical memory}{598}{physical memory}
+-\entry{physical address}{598}{physical address}
+-\entry{shared memory}{598}{shared memory}
+-\entry{thrashing}{598}{thrashing}
+-\entry{memory page}{598}{memory page}
+-\entry{page, memory}{598}{page, memory}
+-\entry{sysconf}{599}{sysconf}
+-\entry{sysconf}{599}{sysconf}
+-\entry{sysconf}{600}{sysconf}
+-\entry{sysconf}{600}{sysconf}
+-\entry{load average}{600}{load average}
+-\entry{non-local exits}{601}{non-local exits}
+-\entry{long jumps}{601}{long jumps}
+-\entry{signal}{611}{signal}
+-\entry{generation of signals}{612}{generation of signals}
+-\entry{delivery of signals}{612}{delivery of signals}
+-\entry{pending signals}{612}{pending signals}
+-\entry{blocked signals}{612}{blocked signals}
+-\entry{specified action (for a signal)}{612}{specified action (for a signal)}
+-\entry{default action (for a signal)}{612}{default action (for a signal)}
+-\entry{signal action}{612}{signal action}
+-\entry{catching signals}{612}{catching signals}
+-\entry{signal names}{613}{signal names}
+-\entry{names of signals}{613}{names of signals}
+-\entry{signal number}{613}{signal number}
+-\entry{program error signals}{613}{program error signals}
+-\entry{exception}{614}{exception}
+-\entry{floating-point exception}{614}{floating-point exception}
+-\entry{illegal instruction}{615}{illegal instruction}
+-\entry{segmentation violation}{615}{segmentation violation}
+-\entry{bus error}{616}{bus error}
+-\entry{abort signal}{616}{abort signal}
+-\entry{program termination signals}{616}{program termination signals}
+-\entry{termination signal}{616}{termination signal}
+-\entry{interrupt signal}{616}{interrupt signal}
+-\entry{quit signal}{616}{quit signal}
+-\entry{quit signal}{616}{quit signal}
+-\entry{kill signal}{617}{kill signal}
+-\entry{hangup signal}{617}{hangup signal}
+-\entry{alarm signal}{617}{alarm signal}
+-\entry{virtual time alarm signal}{618}{virtual time alarm signal}
+-\entry{profiling alarm signal}{618}{profiling alarm signal}
+-\entry{input available signal}{618}{input available signal}
+-\entry{output possible signal}{618}{output possible signal}
+-\entry{urgent data signal}{618}{urgent data signal}
+-\entry{job control signals}{618}{job control signals}
+-\entry{child process signal}{618}{child process signal}
+-\entry{continue signal}{619}{continue signal}
+-\entry{stop signal}{619}{stop signal}
+-\entry{interactive stop signal}{619}{interactive stop signal}
+-\entry{terminal input signal}{619}{terminal input signal}
+-\entry{terminal output signal}{619}{terminal output signal}
+-\entry{pipe signal}{620}{pipe signal}
+-\entry{broken pipe signal}{620}{broken pipe signal}
+-\entry{lost resource signal}{620}{lost resource signal}
+-\entry{user signals}{621}{user signals}
+-\entry{signal messages}{621}{signal messages}
+-\entry{signal actions}{622}{signal actions}
+-\entry{establishing a handler}{622}{establishing a handler}
+-\entry{signal function}{622}{\code {signal} function}
+-\entry{default action for a signal}{622}{default action for a signal}
+-\entry{ignore action for a signal}{622}{ignore action for a signal}
+-\entry{sigaction function}{624}{\code {sigaction} function}
+-\entry{signal flags}{627}{signal flags}
+-\entry{flags for sigaction}{627}{flags for \code {sigaction}}
+-\entry{sigaction flags}{627}{\code {sigaction} flags}
+-\entry{initial signal actions}{627}{initial signal actions}
+-\entry{signal handler function}{628}{signal handler function}
+-\entry{non-local exit, from signal handler}{630}{non-local exit, from signal handler}
+-\entry{race conditions, relating to signals}{631}{race conditions, relating to signals}
+-\entry{handling multiple signals}{632}{handling multiple signals}
+-\entry{successive signals}{632}{successive signals}
+-\entry{merging of signals}{632}{merging of signals}
+-\entry{restrictions on signal handler functions}{634}{restrictions on signal handler functions}
+-\entry{volatile declarations}{634}{\code {volatile} declarations}
+-\entry{reentrant functions}{635}{reentrant functions}
+-\entry{EINTR, and restarting interrupted primitives}{639}{EINTR, and restarting interrupted primitives}
+-\entry{restarting interrupted primitives}{639}{restarting interrupted primitives}
+-\entry{interrupting primitives}{639}{interrupting primitives}
+-\entry{primitives, interrupting}{639}{primitives, interrupting}
+-\entry{sending signals}{639}{sending signals}
+-\entry{raising signals}{639}{raising signals}
+-\entry{signals, generating}{639}{signals, generating}
+-\entry{killing a process}{640}{killing a process}
+-\entry{interprocess communication, with signals}{642}{interprocess communication, with signals}
+-\entry{blocking signals}{643}{blocking signals}
+-\entry{signal set}{644}{signal set}
+-\entry{signal mask}{645}{signal mask}
+-\entry{process signal mask}{645}{process signal mask}
+-\entry{blocking signals, in a handler}{646}{blocking signals, in a handler}
+-\entry{pending signals, checking for}{647}{pending signals, checking for}
+-\entry{blocked signals, checking for}{647}{blocked signals, checking for}
+-\entry{checking for pending signals}{647}{checking for pending signals}
+-\entry{timing error in signal handling}{649}{timing error in signal handling}
+-\entry{waiting for a signal}{650}{waiting for a signal}
+-\entry{pause function}{650}{\code {pause} function}
+-\entry{process}{657}{process}
+-\entry{program}{657}{program}
+-\entry{address space}{657}{address space}
+-\entry{thread of control}{657}{thread of control}
+-\entry{program arguments}{657}{program arguments}
+-\entry{command line arguments}{657}{command line arguments}
+-\entry{arguments, to program}{657}{arguments, to program}
+-\entry{program startup}{657}{program startup}
+-\entry{startup of program}{657}{startup of program}
+-\entry{invocation of program}{657}{invocation of program}
+-\entry{main function}{657}{\code {main} function}
+-\entry{argc (program argument count)}{657}{argc (program argument count)}
+-\entry{argv (program argument vector)}{657}{argv (program argument vector)}
+-\entry{program argument syntax}{658}{program argument syntax}
+-\entry{syntax, for program arguments}{658}{syntax, for program arguments}
+-\entry{command argument syntax}{658}{command argument syntax}
+-\entry{long-named options}{658}{long-named options}
+-\entry{program arguments, parsing}{659}{program arguments, parsing}
+-\entry{command arguments, parsing}{659}{command arguments, parsing}
+-\entry{parsing program arguments}{659}{parsing program arguments}
+-\entry{argp (program argument parser)}{666}{argp (program argument parser)}
+-\entry{argument parsing with argp}{666}{argument parsing with argp}
+-\entry{option parsing with argp}{666}{option parsing with argp}
+-\entry{argp parser functions}{671}{argp parser functions}
+-\entry{usage messages, in argp}{673}{usage messages, in argp}
+-\entry{syntax error messages, in argp}{674}{syntax error messages, in argp}
+-\entry{error messages, in argp}{674}{error messages, in argp}
+-\entry{ARGP_HELP_FMT environment variable}{688}{ARGP_HELP_FMT environment variable}
+-\entry{environment variable}{691}{environment variable}
+-\entry{environment}{691}{environment}
+-\entry{environment access}{691}{environment access}
+-\entry{environment representation}{691}{environment representation}
+-\entry{standard environment variables}{693}{standard environment variables}
+-\entry{HOME environment variable}{693}{\code {HOME} environment variable}
+-\entry{home directory}{693}{home directory}
+-\entry{LOGNAME environment variable}{693}{\code {LOGNAME} environment variable}
+-\entry{PATH environment variable}{693}{\code {PATH} environment variable}
+-\entry{TERM environment variable}{694}{\code {TERM} environment variable}
+-\entry{TZ environment variable}{694}{\code {TZ} environment variable}
+-\entry{LANG environment variable}{694}{\code {LANG} environment variable}
+-\entry{LC_ALL environment variable}{694}{\code {LC_ALL} environment variable}
+-\entry{LC_COLLATE environment variable}{694}{\code {LC_COLLATE} environment variable}
+-\entry{LC_CTYPE environment variable}{694}{\code {LC_CTYPE} environment variable}
+-\entry{LC_MESSAGES environment variable}{694}{\code {LC_MESSAGES} environment variable}
+-\entry{LC_MONETARY environment variable}{694}{\code {LC_MONETARY} environment variable}
+-\entry{LC_NUMERIC environment variable}{694}{\code {LC_NUMERIC} environment variable}
+-\entry{LC_TIME environment variable}{694}{\code {LC_TIME} environment variable}
+-\entry{NLSPATH environment variable}{694}{\code {NLSPATH} environment variable}
+-\entry{_POSIX_OPTION_ORDER environment variable.}{695}{\code {_POSIX_OPTION_ORDER} environment variable.}
+-\entry{system call}{695}{system call}
+-\entry{kernel call}{695}{kernel call}
+-\entry{system call number}{695}{system call number}
+-\entry{errno}{695}{errno}
+-\entry{program termination}{696}{program termination}
+-\entry{process termination}{696}{process termination}
+-\entry{exit status value}{696}{exit status value}
+-\entry{exit status}{697}{exit status}
+-\entry{aborting a program}{699}{aborting a program}
+-\entry{process}{701}{process}
+-\entry{child process}{701}{child process}
+-\entry{parent process}{701}{parent process}
+-\entry{running a command}{701}{running a command}
+-\entry{process ID}{702}{process ID}
+-\entry{process lifetime}{702}{process lifetime}
+-\entry{creating a process}{702}{creating a process}
+-\entry{forking a process}{702}{forking a process}
+-\entry{child process}{702}{child process}
+-\entry{parent process}{702}{parent process}
+-\entry{process image}{702}{process image}
+-\entry{executing a file}{704}{executing a file}
+-\entry{exec functions}{704}{\code {exec} functions}
+-\entry{process completion}{706}{process completion}
+-\entry{waiting for completion of child process}{706}{waiting for completion of child process}
+-\entry{testing exit status of child process}{706}{testing exit status of child process}
+-\entry{process groups}{713}{process groups}
+-\entry{job control}{713}{job control}
+-\entry{job}{713}{job}
+-\entry{session}{713}{session}
+-\entry{shell}{713}{shell}
+-\entry{session}{713}{session}
+-\entry{session leader}{713}{session leader}
+-\entry{controlling terminal}{713}{controlling terminal}
+-\entry{foreground job}{713}{foreground job}
+-\entry{background job}{713}{background job}
+-\entry{stopped job}{714}{stopped job}
+-\entry{job control is optional}{714}{job control is optional}
+-\entry{controlling process}{714}{controlling process}
+-\entry{controlling terminal, access to}{714}{controlling terminal, access to}
+-\entry{SIGTTIN, from background job}{714}{\code {SIGTTIN}, from background job}
+-\entry{SIGTTOU, from background job}{715}{\code {SIGTTOU}, from background job}
+-\entry{orphaned process group}{715}{orphaned process group}
+-\entry{job control, enabling}{717}{job control, enabling}
+-\entry{subshell}{717}{subshell}
+-\entry{job control, enabling}{717}{job control, enabling}
+-\entry{launching jobs}{718}{launching jobs}
+-\entry{process group leader}{719}{process group leader}
+-\entry{process group ID}{719}{process group ID}
+-\entry{race conditions, relating to job control}{719}{race conditions, relating to job control}
+-\entry{foreground job, launching}{722}{foreground job, launching}
+-\entry{background job, launching}{722}{background job, launching}
+-\entry{stopped jobs, detecting}{723}{stopped jobs, detecting}
+-\entry{terminated jobs, detecting}{723}{terminated jobs, detecting}
+-\entry{SIGCHLD, handling of}{723}{\code {SIGCHLD}, handling of}
+-\entry{stopped jobs, continuing}{726}{stopped jobs, continuing}
+-\entry{process group functions}{728}{process group functions}
+-\entry{job control functions}{728}{job control functions}
+-\entry{controlling terminal, determining}{728}{controlling terminal, determining}
+-\entry{BSD compatibility library}{729}{BSD compatibility library}
+-\entry{Name Service Switch}{733}{Name Service Switch}
+-\entry{NSS}{733}{NSS}
+-\entry{databases}{733}{databases}
+-\entry{ethers}{733}{ethers}
+-\entry{group}{733}{group}
+-\entry{hosts}{733}{hosts}
+-\entry{netgroup}{733}{netgroup}
+-\entry{networks}{733}{networks}
+-\entry{protocols}{733}{protocols}
+-\entry{passwd}{733}{passwd}
+-\entry{rpc}{733}{rpc}
+-\entry{services}{733}{services}
+-\entry{shadow}{733}{shadow}
+-\entry{/etc/nsswitch.conf}{734}{\file {/etc/nsswitch.conf}}
+-\entry{nsswitch.conf}{734}{\file {nsswitch.conf}}
+-\entry{DNS server unavailable}{735}{DNS server unavailable}
+-\entry{nisplus, and completeness}{735}{nisplus, and completeness}
+-\entry{nisplus, and booting}{735}{nisplus, and booting}
+-\entry{bootstrapping, and services}{735}{bootstrapping, and services}
+-\entry{default value, and NSS}{736}{default value, and NSS}
+-\entry{optimizing NSS}{736}{optimizing NSS}
+-\entry{reentrant NSS functions}{737}{reentrant NSS functions}
+-\entry{login name}{743}{login name}
+-\entry{user name}{743}{user name}
+-\entry{user ID}{743}{user ID}
+-\entry{group name}{743}{group name}
+-\entry{group ID}{743}{group ID}
+-\entry{persona}{743}{persona}
+-\entry{effective user ID}{743}{effective user ID}
+-\entry{effective group ID}{743}{effective group ID}
+-\entry{supplementary group IDs}{743}{supplementary group IDs}
+-\entry{real user ID}{743}{real user ID}
+-\entry{real group ID}{743}{real group ID}
+-\entry{setuid programs}{744}{\code {setuid} programs}
+-\entry{saved set-user-ID}{744}{saved set-user-ID}
+-\entry{saved set-group-ID}{744}{saved set-group-ID}
+-\entry{_POSIX_SAVED_IDS}{744}{\code {_POSIX_SAVED_IDS}}
+-\entry{login name, determining}{753}{login name, determining}
+-\entry{user ID, determining}{753}{user ID, determining}
+-\entry{user accounting database}{753}{user accounting database}
+-\entry{user database}{761}{user database}
+-\entry{password database}{761}{password database}
+-\entry{converting user ID to user name}{762}{converting user ID to user name}
+-\entry{converting user name to user ID}{762}{converting user name to user ID}
+-\entry{scanning the user list}{762}{scanning the user list}
+-\entry{group database}{764}{group database}
+-\entry{converting group name to group ID}{764}{converting group name to group ID}
+-\entry{converting group ID to group name}{764}{converting group ID to group name}
+-\entry{scanning the group list}{765}{scanning the group list}
+-\entry{Netgroup}{767}{Netgroup}
+-\entry{host name}{771}{host name}
+-\entry{DNS}{771}{DNS}
+-\entry{Domain Name System}{771}{Domain Name System}
+-\entry{hostname}{771}{hostname}
+-\entry{domain name}{771}{domain name}
+-\entry{FQDN}{771}{FQDN}
+-\entry{YP}{771}{YP}
+-\entry{NIS}{771}{NIS}
+-\entry{NIS domain name}{771}{NIS domain name}
+-\entry{YP domain name}{771}{YP domain name}
+-\entry{/etc/hostname}{772}{/etc/hostname}
+-\entry{NIS domain name}{772}{NIS domain name}
+-\entry{YP domain name}{772}{YP domain name}
+-\entry{NIS domain name}{772}{NIS domain name}
+-\entry{YP domain name}{772}{YP domain name}
+-\entry{POSIX capacity limits}{787}{POSIX capacity limits}
+-\entry{limits, POSIX}{787}{limits, POSIX}
+-\entry{capacity limits, POSIX}{787}{capacity limits, POSIX}
+-\entry{limits, program argument size}{787}{limits, program argument size}
+-\entry{limits, number of processes}{787}{limits, number of processes}
+-\entry{limits, number of open files}{787}{limits, number of open files}
+-\entry{limits, time zone name length}{787}{limits, time zone name length}
+-\entry{limits, number of supplementary group IDs}{787}{limits, number of supplementary group IDs}
+-\entry{POSIX optional features}{788}{POSIX optional features}
+-\entry{optional POSIX features}{788}{optional POSIX features}
+-\entry{limits, link count of files}{799}{limits, link count of files}
+-\entry{limits, terminal input queue}{799}{limits, terminal input queue}
+-\entry{limits, file name length}{800}{limits, file name length}
+-\entry{limits, pipe buffer size}{800}{limits, pipe buffer size}
+-\entry{backtrace}{817}{backtrace}
+-\entry{backtrace_symbols}{817}{backtrace_symbols}
+-\entry{backtrace_fd}{817}{backtrace_fd}
+-\entry{consistency checking}{841}{consistency checking}
+-\entry{impossible events}{841}{impossible events}
+-\entry{assertions}{841}{assertions}
+-\entry{variable number of arguments}{842}{variable number of arguments}
+-\entry{variadic functions}{842}{variadic functions}
+-\entry{optional arguments}{842}{optional arguments}
+-\entry{function prototypes (variadic)}{843}{function prototypes (variadic)}
+-\entry{prototypes for variadic functions}{843}{prototypes for variadic functions}
+-\entry{variadic function prototypes}{843}{variadic function prototypes}
+-\entry{variadic function argument access}{844}{variadic function argument access}
+-\entry{arguments (variadic functions)}{844}{arguments (variadic functions)}
+-\entry{number of arguments passed}{844}{number of arguments passed}
+-\entry{how many arguments}{844}{how many arguments}
+-\entry{arguments, how many}{844}{arguments, how many}
+-\entry{variadic functions, calling}{845}{variadic functions, calling}
+-\entry{calling variadic functions}{845}{calling variadic functions}
+-\entry{declaring variadic functions}{845}{declaring variadic functions}
+-\entry{default argument promotions}{845}{default argument promotions}
+-\entry{argument promotion}{845}{argument promotion}
+-\entry{null pointer constant}{848}{null pointer constant}
+-\entry{integer type width}{850}{integer type width}
+-\entry{width of integer type}{850}{width of integer type}
+-\entry{type measurements, integer}{850}{type measurements, integer}
+-\entry{integer type range}{850}{integer type range}
+-\entry{range of integer type}{850}{range of integer type}
+-\entry{limits, integer types}{850}{limits, integer types}
+-\entry{floating type measurements}{851}{floating type measurements}
+-\entry{measurements of floating types}{851}{measurements of floating types}
+-\entry{type measurements, floating}{851}{type measurements, floating}
+-\entry{limits, floating types}{851}{limits, floating types}
+-\entry{sign (of floating point number)}{852}{sign (of floating point number)}
+-\entry{base (of floating point number)}{852}{base (of floating point number)}
+-\entry{radix (of floating point number)}{852}{radix (of floating point number)}
+-\entry{exponent (of floating point number)}{852}{exponent (of floating point number)}
+-\entry{bias (of floating point number exponent)}{852}{bias (of floating point number exponent)}
+-\entry{mantissa (of floating point number)}{852}{mantissa (of floating point number)}
+-\entry{significand (of floating point number)}{852}{significand (of floating point number)}
+-\entry{precision (of floating point number)}{852}{precision (of floating point number)}
+-\entry{hidden bit (of floating point number mantissa)}{852}{hidden bit (of floating point number mantissa)}
+-\entry{normalized floating point number}{852}{normalized floating point number}
+-\entry{IEEE floating point representation}{856}{IEEE floating point representation}
+-\entry{floating point, IEEE}{856}{floating point, IEEE}
+-\entry{configuring}{993}{configuring}
+-\entry{compiling}{993}{compiling}
+-\entry{installing}{996}{installing}
+-\entry{installation tools}{997}{installation tools}
+-\entry{tools, for installing library}{997}{tools, for installing library}
+-\entry{configurations, all supported}{998}{configurations, all supported}
+-\entry{upgrading from libc5}{999}{upgrading from libc5}
+-\entry{kernel header files}{999}{kernel header files}
+-\entry{reporting bugs}{1000}{reporting bugs}
+-\entry{bugs, reporting}{1000}{bugs, reporting}
+-\entry{free documentation}{1015}{free documentation}
+-\entry{LGPL, Lesser General Public License}{1017}{LGPL, Lesser General Public License}
+-\entry{FDL, GNU Free Documentation License}{1027}{FDL, GNU Free Documentation License}
+diff -u -udbrN glibc-2.3.2/manual/libc.cps glibc-2.3.2-200304020432/manual/libc.cps
+--- glibc-2.3.2/manual/libc.cps Tue Feb 25 11:34:58 2003
++++ glibc-2.3.2-200304020432/manual/libc.cps Thu Jan 1 01:00:00 1970
+@@ -1,1034 +0,0 @@
+-\initial {/}
+-\entry {/etc/hostname}{772}
+-\entry {\file {/etc/nsswitch.conf}}{734}
+-\initial {_}
+-\entry {__va_copy}{85}
+-\entry {\code {_POSIX_OPTION_ORDER} environment variable.}{695}
+-\entry {\code {_POSIX_SAVED_IDS}}{744}
+-\initial {4}
+-\entry {4.\var {n} BSD Unix}{3}
+-\initial {A}
+-\entry {abort signal}{616}
+-\entry {aborting a program}{699}
+-\entry {absolute file name}{228}
+-\entry {absolute priority}{589}
+-\entry {absolute value functions}{530}
+-\entry {accepting connections}{426}
+-\entry {access permission for a file}{380}
+-\entry {access, testing for}{382}
+-\entry {accessing directories}{353}
+-\entry {address of socket}{401}
+-\entry {address space}{598, 657}
+-\entry {alarm signal}{617}
+-\entry {alarms, setting}{578}
+-\entry {alignment (in obstacks)}{56}
+-\entry {alignment (with \code {malloc})}{38}
+-\entry {\code {alloca} disadvantages}{61}
+-\entry {\code {alloca} function}{59}
+-\entry {allocating pseudo-terminals}{468}
+-\entry {allocation (obstacks)}{51}
+-\entry {allocation debugging}{45}
+-\entry {allocation hooks, for \code {malloc}}{41}
+-\entry {allocation of memory with \code {malloc}}{34}
+-\entry {allocation size of string}{76}
+-\entry {allocation statistics}{43}
+-\entry {alphabetic character}{67, 70}
+-\entry {alphanumeric character}{68, 70}
+-\entry {append-access files}{227}
+-\entry {argc (program argument count)}{657}
+-\entry {argp (program argument parser)}{666}
+-\entry {argp parser functions}{671}
+-\entry {ARGP_HELP_FMT environment variable}{688}
+-\entry {argument parsing with argp}{666}
+-\entry {argument promotion}{845}
+-\entry {argument vectors, null-character separated}{107}
+-\entry {arguments (variadic functions)}{844}
+-\entry {arguments, how many}{844}
+-\entry {arguments, to program}{657}
+-\entry {argv (program argument vector)}{657}
+-\entry {argz vectors (string vectors)}{107}
+-\entry {arithmetic expansion}{219}
+-\entry {array comparison functions}{89}
+-\entry {array copy functions}{79}
+-\entry {array search function}{195}
+-\entry {array sort function}{196}
+-\entry {ASCII character}{68}
+-\entry {assertions}{841}
+-\entry {attributes of a file}{370}
+-\entry {automatic freeing}{59}
+-\entry {automatic memory allocation}{33}
+-\entry {automatic storage class}{33}
+-\entry {automatic storage with variable size}{59}
+-\initial {B}
+-\entry {background job}{713}
+-\entry {background job, launching}{722}
+-\entry {backtrace}{817}
+-\entry {backtrace_fd}{817}
+-\entry {backtrace_symbols}{817}
+-\entry {base (of floating point number)}{852}
+-\entry {baud rate}{457}
+-\entry {Berkeley Unix}{3}
+-\entry {Bessel functions}{488}
+-\entry {bias (of floating point number exponent)}{852}
+-\entry {big-endian}{418}
+-\entry {binary I/O to a stream}{249}
+-\entry {binary search function (for arrays)}{195}
+-\entry {binary stream}{283}
+-\entry {binding a socket address}{401}
+-\entry {blank character}{68, 72}
+-\entry {block I/O to a stream}{249}
+-\entry {blocked signals}{612}
+-\entry {blocked signals, checking for}{647}
+-\entry {blocking signals}{643}
+-\entry {blocking signals, in a handler}{646}
+-\entry {bootstrapping, and services}{735}
+-\entry {break condition, detecting}{451}
+-\entry {break condition, generating}{465}
+-\entry {breaking a string into tokens}{100}
+-\entry {broken pipe signal}{620}
+-\entry {broken-down time}{553, 556}
+-\entry {BSD compatibility library}{729}
+-\entry {BSD compatibility library.}{8}
+-\entry {BSD Unix}{3}
+-\entry {buffering of streams}{288}
+-\entry {buffering, controlling}{290}
+-\entry {bugs, reporting}{1000}
+-\entry {bus error}{616}
+-\entry {butterfly}{538}
+-\entry {byte order conversion, for socket}{418}
+-\entry {byte stream}{399}
+-\initial {C}
+-\entry {C++ streams}{239}
+-\entry {calendar time}{549}
+-\entry {calendar time and broken-down time}{556}
+-\entry {calendar, Gregorian}{553}
+-\entry {calling variadic functions}{845}
+-\entry {canonical input processing}{446}
+-\entry {capacity limits, POSIX}{787}
+-\entry {carrier detect}{453}
+-\entry {case conversion of characters}{69}
+-\entry {catching signals}{612}
+-\entry {categories for locales}{154}
+-\entry {change working directory}{351}
+-\entry {changing the locale}{155}
+-\entry {changing the size of a block (\code {malloc})}{36}
+-\entry {changing the size of a block (obstacks)}{53}
+-\entry {channels}{314}
+-\entry {character case conversion}{69}
+-\entry {character predicates}{67}
+-\entry {character testing}{67}
+-\entry {checking for pending signals}{647}
+-\entry {child process}{552, 701, 702}
+-\entry {child process signal}{618}
+-\entry {chunks}{57}
+-\entry {classes, floating-point}{520}
+-\entry {classification of characters}{67}
+-\entry {cleaning up a stream}{314}
+-\entry {clearing terminal input queue}{465}
+-\entry {client}{424}
+-\entry {clock ticks}{551}
+-\entry {clock, high accuracy}{559}
+-\entry {close-on-exec (file descriptor flag)}{339}
+-\entry {closing a file descriptor}{303}
+-\entry {closing a socket}{422}
+-\entry {closing a stream}{235}
+-\entry {collating strings}{92}
+-\entry {combining locales}{154}
+-\entry {command argument syntax}{658}
+-\entry {command arguments, parsing}{659}
+-\entry {command line arguments}{657}
+-\entry {command substitution}{219}
+-\entry {communication style (of a socket)}{399}
+-\entry {comparing strings and arrays}{89}
+-\entry {Comparison Function}{195}
+-\entry {compiling}{993}
+-\entry {complex exponentiation functions}{485}
+-\entry {complex logarithm functions}{485}
+-\entry {complex numbers}{538}
+-\entry {complex trigonometric functions}{481}
+-\entry {concatenating strings}{79}
+-\entry {configurations, all supported}{998}
+-\entry {configuring}{993}
+-\entry {conjugate complex numbers}{539}
+-\entry {connecting a socket}{424}
+-\entry {connection}{424}
+-\entry {consistency checking}{841}
+-\entry {consistency checking, of heap}{39}
+-\entry {constants}{32, 479}
+-\entry {continue signal}{619}
+-\entry {control character}{68, 71}
+-\entry {control operations on files}{336}
+-\entry {controlling process}{714}
+-\entry {controlling terminal}{713}
+-\entry {controlling terminal, access to}{714}
+-\entry {controlling terminal, determining}{728}
+-\entry {controlling terminal, setting}{342}
+-\entry {conversion specifications (\code {printf})}{250}
+-\entry {conversion specifications (\code {scanf})}{272}
+-\entry {converting byte order}{418}
+-\entry {converting case of characters}{69}
+-\entry {converting file descriptor to stream}{313}
+-\entry {converting floats to integers}{532}
+-\entry {converting group ID to group name}{764}
+-\entry {converting group name to group ID}{764}
+-\entry {converting host address to name}{413}
+-\entry {converting host name to address}{413}
+-\entry {converting network name to network number}{443}
+-\entry {converting network number to network name}{443}
+-\entry {converting port number to service name}{417}
+-\entry {converting service name to port number}{417}
+-\entry {converting string to collation order}{93}
+-\entry {converting strings to numbers}{539}
+-\entry {converting user ID to user name}{762}
+-\entry {converting user name to user ID}{762}
+-\entry {cookie, for custom stream}{295}
+-\entry {copy-on-write page fault}{63}
+-\entry {copying strings and arrays}{79}
+-\entry {cpu priority}{589}
+-\entry {CPU time}{549, 551, 552}
+-\entry {create on open (file status flag)}{342}
+-\entry {creating a directory}{369}
+-\entry {creating a FIFO special file}{396}
+-\entry {creating a pipe}{393}
+-\entry {creating a pipe to a subprocess}{395}
+-\entry {creating a process}{702}
+-\entry {creating a socket}{422}
+-\entry {creating a socket pair}{423}
+-\entry {creating special files}{388}
+-\entry {cube root function}{485}
+-\entry {currency symbols}{159}
+-\entry {current limit}{585}
+-\entry {current working directory}{351}
+-\entry {custom streams}{295}
+-\entry {customizing \code {printf}}{266}
+-\initial {D}
+-\entry {data loss on sockets}{399}
+-\entry {databases}{733}
+-\entry {datagram socket}{435}
+-\entry {datagrams, transmitting}{436}
+-\entry {date}{549}
+-\entry {Daylight Saving Time}{557}
+-\entry {decimal digit character}{67}
+-\entry {decimal-point separator}{158}
+-\entry {declaration (compared to definition)}{4}
+-\entry {declaring variadic functions}{845}
+-\entry {decompose complex numbers}{539}
+-\entry {default action (for a signal)}{612}
+-\entry {default action for a signal}{622}
+-\entry {default argument promotions}{845}
+-\entry {default value, and NSS}{736}
+-\entry {defining new \code {printf} conversions}{266}
+-\entry {definition (compared to declaration)}{4}
+-\entry {delayed suspend character}{461}
+-\entry {deleting a directory}{368}
+-\entry {deleting a file}{367}
+-\entry {delivery of signals}{612}
+-\entry {descriptors and streams}{314}
+-\entry {digit character}{67, 71}
+-\entry {directories, accessing}{353}
+-\entry {directories, creating}{369}
+-\entry {directories, deleting}{368}
+-\entry {directory}{227}
+-\entry {directory entry}{227}
+-\entry {directory hierarchy}{360}
+-\entry {directory stream}{353}
+-\entry {disadvantages of \code {alloca}}{61}
+-\entry {DISCARD character}{462}
+-\entry {division by zero}{522}
+-\entry {DNS}{771}
+-\entry {DNS server unavailable}{735}
+-\entry {domain (of socket)}{399}
+-\entry {domain error}{526}
+-\entry {domain name}{771}
+-\entry {Domain Name System}{771}
+-\entry {dot notation, for Internet addresses}{409}
+-\entry {DSUSP character}{461}
+-\entry {duplicating file descriptors}{337}
+-\entry {dynamic memory allocation}{33}
+-\initial {E}
+-\entry {EBCDIC}{113}
+-\entry {echo of terminal input}{455}
+-\entry {effective group ID}{743}
+-\entry {effective user ID}{743}
+-\entry {efficiency and \code {malloc}}{37}
+-\entry {efficiency and obstacks}{55}
+-\entry {efficiency of chunks}{57}
+-\entry {EINTR, and restarting interrupted primitives}{639}
+-\entry {elapsed time}{549}
+-\entry {encryption}{105}
+-\entry {end of file, on a stream}{281}
+-\entry {end-of-file, on a file descriptor}{306}
+-\entry {environment}{691}
+-\entry {environment access}{691}
+-\entry {environment representation}{691}
+-\entry {environment variable}{691}
+-\entry {environment vectors, null-character separated}{107}
+-\entry {envz vectors (environment vectors)}{107}
+-\entry {EOF character}{458}
+-\entry {EOL character}{459}
+-\entry {EOL2 character}{459}
+-\entry {epoch}{553}
+-\entry {ERASE character}{459}
+-\entry {errno}{695}
+-\entry {error codes}{15}
+-\entry {error messages, in argp}{674}
+-\entry {error reporting}{15}
+-\entry {errors, mathematical}{526}
+-\entry {establishing a handler}{622}
+-\entry {ethers}{733}
+-\entry {EUC}{113}
+-\entry {EUC-JP}{139}
+-\entry {exception}{522, 614}
+-\entry {exclusive lock}{345}
+-\entry {\code {exec} functions}{704}
+-\entry {execing a program}{32}
+-\entry {executable}{32}
+-\entry {executing a file}{704}
+-\entry {exit status}{697}
+-\entry {exit status value}{696}
+-\entry {exiting a program}{32}
+-\entry {expansion of shell words}{218}
+-\entry {exponent (of floating point number)}{852}
+-\entry {exponentiation functions}{483}
+-\entry {extending \code {printf}}{266}
+-\entry {extracting file descriptor from stream}{313}
+-\initial {F}
+-\entry {\code {fcntl} function}{336}
+-\entry {FDL, GNU Free Documentation License}{1027}
+-\entry {feature test macros}{7}
+-\entry {field splitting}{219}
+-\entry {FIFO special file}{393}
+-\entry {file access permission}{380}
+-\entry {file access time}{383}
+-\entry {file attribute modification time}{383}
+-\entry {file attributes}{370}
+-\entry {file creation mask}{380}
+-\entry {file descriptor flags}{339}
+-\entry {file descriptor sets, for \code {select}}{321}
+-\entry {file descriptors, standard}{313}
+-\entry {file locks}{345}
+-\entry {file modification time}{383}
+-\entry {file name}{227}
+-\entry {file name component}{227}
+-\entry {file name errors}{229}
+-\entry {file name resolution}{228}
+-\entry {file name translation flags}{341}
+-\entry {file names, multiple}{363}
+-\entry {file owner}{377}
+-\entry {file permission bits}{378}
+-\entry {file pointer}{231}
+-\entry {file position}{226}
+-\entry {file positioning on a file descriptor}{310}
+-\entry {file positioning on a stream}{284}
+-\entry {file status flags}{340}
+-\entry {files, accessing}{32}
+-\entry {filtering i/o through subprocess}{395}
+-\entry {flag character (\code {printf})}{252}
+-\entry {flag character (\code {scanf})}{273}
+-\entry {flags for \code {sigaction}}{627}
+-\entry {flags, file name translation}{341}
+-\entry {flags, open-time action}{342}
+-\entry {floating point}{520}
+-\entry {floating point, IEEE}{856}
+-\entry {floating type measurements}{851}
+-\entry {floating-point classes}{520}
+-\entry {floating-point exception}{614}
+-\entry {flow control, terminal}{466}
+-\entry {flushing a stream}{289}
+-\entry {flushing terminal output queue}{465}
+-\entry {foreground job}{713}
+-\entry {foreground job, launching}{722}
+-\entry {forking a process}{702}
+-\entry {format string, for \code {printf}}{250}
+-\entry {format string, for \code {scanf}}{272}
+-\entry {formatted input from a stream}{272}
+-\entry {formatted messages}{297}
+-\entry {formatted output to a stream}{250}
+-\entry {FP arithmetic}{535}
+-\entry {FQDN}{771}
+-\entry {frame, real memory}{31}
+-\entry {free documentation}{1015}
+-\entry {freeing (obstacks)}{52}
+-\entry {freeing memory}{32}
+-\entry {freeing memory allocated with \code {malloc}}{35}
+-\entry {fully buffered stream}{288}
+-\entry {function prototypes (variadic)}{843}
+-\initial {G}
+-\entry {gamma function}{488}
+-\entry {gcvt_r}{546}
+-\entry {gencat}{176}
+-\entry {generation of signals}{612}
+-\entry {generic i/o control operations}{349}
+-\entry {globbing}{206}
+-\entry {graphic character}{68, 71}
+-\entry {Gregorian calendar}{553}
+-\entry {group}{733}
+-\entry {group database}{764}
+-\entry {group ID}{743}
+-\entry {group name}{743}
+-\entry {group owner of a file}{377}
+-\entry {grouping of digits}{158}
+-\entry {growing objects (in obstacks)}{53}
+-\initial {H}
+-\entry {handling multiple signals}{632}
+-\entry {hangup signal}{617}
+-\entry {hard limit}{585}
+-\entry {hard link}{363}
+-\entry {header files}{4}
+-\entry {heap consistency checking}{39}
+-\entry {heap, dynamic allocation from}{34}
+-\entry {heap, freeing memory from}{35}
+-\entry {hexadecimal digit character}{68, 72}
+-\entry {hidden bit (of floating point number mantissa)}{852}
+-\entry {hierarchy, directory}{360}
+-\entry {high-priority data}{433}
+-\entry {high-resolution time}{553}
+-\entry {holes in files}{311}
+-\entry {home directory}{693}
+-\entry {\code {HOME} environment variable}{693}
+-\entry {hook functions (of custom streams)}{296}
+-\entry {host address, Internet}{409}
+-\entry {host name}{771}
+-\entry {hostname}{771}
+-\entry {hosts}{733}
+-\entry {hosts database}{413}
+-\entry {how many arguments}{844}
+-\entry {hyperbolic functions}{486, 487}
+-\initial {I}
+-\entry {identifying terminals}{445}
+-\entry {IEEE 754}{520}
+-\entry {IEEE floating point}{520}
+-\entry {IEEE floating point representation}{856}
+-\entry {IEEE Std 1003.1}{2}
+-\entry {IEEE Std 1003.2}{2}
+-\entry {ignore action for a signal}{622}
+-\entry {illegal instruction}{615}
+-\entry {impossible events}{841}
+-\entry {independent channels}{314}
+-\entry {inexact exception}{522}
+-\entry {infinity}{524}
+-\entry {initial signal actions}{627}
+-\entry {inode number}{373}
+-\entry {input available signal}{618}
+-\entry {input conversions, for \code {scanf}}{274}
+-\entry {input from multiple files}{321}
+-\entry {installation tools}{997}
+-\entry {installing}{996}
+-\entry {integer}{517}
+-\entry {integer division functions}{518}
+-\entry {integer type range}{850}
+-\entry {integer type width}{850}
+-\entry {interactive signals, from terminal}{456}
+-\entry {interactive stop signal}{619}
+-\entry {internal representation}{111}
+-\entry {internationalization}{153}
+-\entry {Internet host address}{409}
+-\entry {Internet namespace, for sockets}{407}
+-\entry {interprocess communication, with FIFO}{396}
+-\entry {interprocess communication, with pipes}{393}
+-\entry {interprocess communication, with signals}{642}
+-\entry {interprocess communication, with sockets}{399}
+-\entry {interrupt character}{460}
+-\entry {interrupt signal}{616}
+-\entry {interrupt-driven input}{348}
+-\entry {interrupting primitives}{639}
+-\entry {interval}{549}
+-\entry {interval timer, setting}{578}
+-\entry {INTR character}{460}
+-\entry {invalid exception}{522}
+-\entry {inverse complex hyperbolic functions}{487}
+-\entry {inverse complex trigonometric functions}{482}
+-\entry {inverse hyperbolic functions}{487}
+-\entry {inverse trigonometric functions}{481}
+-\entry {invocation of program}{657}
+-\entry {IOCTLs}{349}
+-\entry {ISO 10646}{111}
+-\entry {ISO 2022}{113}
+-\entry {ISO 6937}{114}
+-\entry {ISO C}{2}
+-\entry {ISO-2022-JP}{139}
+-\entry {ISO/IEC 9945-1}{2}
+-\entry {ISO/IEC 9945-2}{2}
+-\initial {J}
+-\entry {job}{713}
+-\entry {job control}{713}
+-\entry {job control functions}{728}
+-\entry {job control is optional}{714}
+-\entry {job control signals}{618}
+-\entry {job control, enabling}{717}
+-\initial {K}
+-\entry {Kermit the frog}{199}
+-\entry {kernel call}{695}
+-\entry {kernel header files}{999}
+-\entry {KILL character}{460}
+-\entry {kill signal}{617}
+-\entry {killing a process}{640}
+-\entry {Korn Shell}{206}
+-\initial {L}
+-\entry {LANG environment variable}{173}
+-\entry {\code {LANG} environment variable}{694}
+-\entry {launching jobs}{718}
+-\entry {LC_ALL environment variable}{173}
+-\entry {\code {LC_ALL} environment variable}{694}
+-\entry {\code {LC_COLLATE} environment variable}{694}
+-\entry {\code {LC_CTYPE} environment variable}{694}
+-\entry {LC_MESSAGES environment variable}{173}
+-\entry {\code {LC_MESSAGES} environment variable}{694}
+-\entry {\code {LC_MONETARY} environment variable}{694}
+-\entry {\code {LC_NUMERIC} environment variable}{694}
+-\entry {\code {LC_TIME} environment variable}{694}
+-\entry {leap second}{556}
+-\entry {length of string}{76}
+-\entry {level, for socket options}{441}
+-\entry {LGPL, Lesser General Public License}{1017}
+-\entry {library}{1}
+-\entry {limit}{585}
+-\entry {limits on resource usage}{585}
+-\entry {limits, file name length}{800}
+-\entry {limits, floating types}{851}
+-\entry {limits, integer types}{850}
+-\entry {limits, link count of files}{799}
+-\entry {limits, number of open files}{787}
+-\entry {limits, number of processes}{787}
+-\entry {limits, number of supplementary group IDs}{787}
+-\entry {limits, pipe buffer size}{800}
+-\entry {limits, POSIX}{787}
+-\entry {limits, program argument size}{787}
+-\entry {limits, terminal input queue}{799}
+-\entry {limits, time zone name length}{787}
+-\entry {line buffered stream}{288}
+-\entry {line speed}{457}
+-\entry {lines (in a text file)}{283}
+-\entry {link}{227}
+-\entry {link, hard}{363}
+-\entry {link, soft}{364}
+-\entry {link, symbolic}{364}
+-\entry {linked channels}{314}
+-\entry {listening (sockets)}{425}
+-\entry {literals}{32}
+-\entry {little-endian}{418}
+-\entry {LNEXT character}{462}
+-\entry {load average}{600}
+-\entry {local namespace, for sockets}{405}
+-\entry {local network address number}{409}
+-\entry {local time}{553}
+-\entry {locale categories}{154}
+-\entry {locale, changing}{155}
+-\entry {locales}{153}
+-\entry {locking pages}{62}
+-\entry {logarithm functions}{483}
+-\entry {login name}{743}
+-\entry {login name, determining}{753}
+-\entry {\code {LOGNAME} environment variable}{693}
+-\entry {long jumps}{601}
+-\entry {long-named options}{658}
+-\entry {longjmp}{60}
+-\entry {loss of data on sockets}{399}
+-\entry {lost resource signal}{620}
+-\entry {lower-case character}{67, 71}
+-\initial {M}
+-\entry {macros}{52}
+-\entry {\code {main} function}{657}
+-\entry {malloc debugger}{45}
+-\entry {\code {malloc} function}{34}
+-\entry {mantissa (of floating point number)}{852}
+-\entry {matching failure, in \code {scanf}}{272}
+-\entry {math errors}{490}
+-\entry {mathematical constants}{479}
+-\entry {maximum}{537}
+-\entry {maximum field width (\code {scanf})}{273}
+-\entry {maximum limit}{585}
+-\entry {maximum possible integer}{518}
+-\entry {measurements of floating types}{851}
+-\entry {memory allocation}{31}
+-\entry {memory lock}{62}
+-\entry {memory mapped file}{32}
+-\entry {memory mapped I/O}{32}
+-\entry {memory page}{598}
+-\entry {merging of signals}{632}
+-\entry {MIN termios slot}{463}
+-\entry {minimum}{537}
+-\entry {minimum field width (\code {printf})}{252}
+-\entry {minimum possible integer}{518}
+-\entry {mixing descriptors and streams}{314}
+-\entry {modem disconnect}{453}
+-\entry {modem status lines}{453}
+-\entry {monetary value formatting}{158}
+-\entry {multi-threaded application}{236}
+-\entry {multibyte character}{113}
+-\entry {multibyte character string}{75}
+-\entry {multibyte string}{76}
+-\entry {multiple names for one file}{363}
+-\entry {multiplexing input}{321}
+-\entry {multiply-add}{537}
+-\initial {N}
+-\entry {name of running program}{27}
+-\entry {name of socket}{401}
+-\entry {Name Service Switch}{733}
+-\entry {name space}{6}
+-\entry {names of signals}{613}
+-\entry {namespace (of socket)}{399}
+-\entry {NaN}{524, 536}
+-\entry {netgroup}{733}
+-\entry {Netgroup}{767}
+-\entry {network byte order}{418}
+-\entry {network number}{409}
+-\entry {network protocol}{399}
+-\entry {networks}{733}
+-\entry {networks database}{443}
+-\entry {NIS}{771}
+-\entry {NIS domain name}{771, 772}
+-\entry {nisplus, and booting}{735}
+-\entry {nisplus, and completeness}{735}
+-\entry {NLSPATH environment variable}{172}
+-\entry {\code {NLSPATH} environment variable}{694}
+-\entry {non-blocking open}{342}
+-\entry {non-local exit, from signal handler}{630}
+-\entry {non-local exits}{601}
+-\entry {noncanonical input processing}{446}
+-\entry {normalization functions (floating-point)}{531}
+-\entry {normalized floating point number}{852}
+-\entry {not a number}{524}
+-\entry {NSS}{733}
+-\entry {\file {nsswitch.conf}}{734}
+-\entry {null character}{75}
+-\entry {null pointer constant}{848}
+-\entry {null wide character}{75}
+-\entry {number of arguments passed}{844}
+-\entry {number syntax, parsing}{539}
+-\entry {numeric value formatting}{158}
+-\initial {O}
+-\entry {obstack status}{56}
+-\entry {obstacks}{49}
+-\entry {open-time action flags}{342}
+-\entry {opening a file}{225}
+-\entry {opening a file descriptor}{303}
+-\entry {opening a pipe}{393}
+-\entry {opening a pseudo-terminal pair}{470}
+-\entry {opening a socket}{422}
+-\entry {opening a socket pair}{423}
+-\entry {opening a stream}{232}
+-\entry {Optimization}{515}
+-\entry {optimizing NSS}{736}
+-\entry {option parsing with argp}{666}
+-\entry {optional arguments}{842}
+-\entry {optional POSIX features}{788}
+-\entry {orientation, stream}{233, 240}
+-\entry {orphaned process group}{715}
+-\entry {out-of-band data}{433}
+-\entry {output conversions, for \code {printf}}{252}
+-\entry {output possible signal}{618}
+-\entry {overflow exception}{522}
+-\entry {owner of a file}{377}
+-\initial {P}
+-\entry {packet}{399}
+-\entry {page boundary}{38}
+-\entry {page fault}{31}
+-\entry {page fault, copy-on-write}{63}
+-\entry {page frame}{31}
+-\entry {page, memory}{598}
+-\entry {page, virtual memory}{31}
+-\entry {paging}{31, 62}
+-\entry {parameter promotion}{77}
+-\entry {parent directory}{228}
+-\entry {parent process}{701, 702}
+-\entry {parity checking}{450}
+-\entry {parsing a template string}{263}
+-\entry {parsing numbers (in formatted input)}{539}
+-\entry {parsing program arguments}{659}
+-\entry {parsing tokens from a string}{100}
+-\entry {passwd}{733}
+-\entry {password database}{761}
+-\entry {\code {PATH} environment variable}{693}
+-\entry {\code {pause} function}{650}
+-\entry {peeking at input}{247}
+-\entry {pending signals}{612}
+-\entry {pending signals, checking for}{647}
+-\entry {period of time}{549}
+-\entry {permission to access a file}{380}
+-\entry {persona}{743}
+-\entry {physical address}{598}
+-\entry {physical memory}{598}
+-\entry {pi (trigonometric constant)}{480}
+-\entry {pipe}{393}
+-\entry {pipe signal}{620}
+-\entry {pipe to a subprocess}{395}
+-\entry {port number}{416}
+-\entry {positioning a file descriptor}{310}
+-\entry {positioning a stream}{284}
+-\entry {positive difference}{537}
+-\entry {POSIX}{2}
+-\entry {POSIX capacity limits}{787}
+-\entry {POSIX optional features}{788}
+-\entry {POSIX.1}{2}
+-\entry {POSIX.2}{2}
+-\entry {power functions}{483}
+-\entry {precision (of floating point number)}{852}
+-\entry {precision (\code {printf})}{252}
+-\entry {predicates on arrays}{89}
+-\entry {predicates on characters}{67}
+-\entry {predicates on strings}{89}
+-\entry {preemptive scheduling}{590}
+-\entry {primitives, interrupting}{639}
+-\entry {printing character}{68, 71}
+-\entry {priority of a process}{589}
+-\entry {priority, absolute}{589}
+-\entry {process}{657, 701}
+-\entry {process completion}{706}
+-\entry {process group functions}{728}
+-\entry {process group ID}{719}
+-\entry {process group leader}{719}
+-\entry {process groups}{713}
+-\entry {process ID}{702}
+-\entry {process image}{702}
+-\entry {process lifetime}{702}
+-\entry {process priority}{589}
+-\entry {process signal mask}{645}
+-\entry {process termination}{696}
+-\entry {processor time}{549, 552}
+-\entry {profiling alarm signal}{618}
+-\entry {profiling timer}{578}
+-\entry {program}{657}
+-\entry {program argument syntax}{658}
+-\entry {program arguments}{657}
+-\entry {program arguments, parsing}{659}
+-\entry {program error signals}{613}
+-\entry {program name}{27}
+-\entry {program startup}{657}
+-\entry {program termination}{696}
+-\entry {program termination signals}{616}
+-\entry {programming your own streams}{295}
+-\entry {project complex numbers}{539}
+-\entry {protocol (of socket)}{399}
+-\entry {protocol family}{399}
+-\entry {protocols}{733}
+-\entry {protocols database}{419}
+-\entry {prototypes for variadic functions}{843}
+-\entry {pseudo-random numbers}{508}
+-\entry {pseudo-terminals}{468}
+-\entry {punctuation character}{68, 72}
+-\entry {pushing input back}{247}
+-\initial {Q}
+-\entry {quick sort function (for arrays)}{196}
+-\entry {QUIT character}{460}
+-\entry {quit signal}{616}
+-\entry {quote removal}{219}
+-\initial {R}
+-\entry {race conditions, relating to job control}{719}
+-\entry {race conditions, relating to signals}{631}
+-\entry {radix (of floating point number)}{852}
+-\entry {raising signals}{639}
+-\entry {random numbers}{508}
+-\entry {random-access files}{226}
+-\entry {range error}{526}
+-\entry {range of integer type}{850}
+-\entry {read lock}{345}
+-\entry {reading from a directory}{353}
+-\entry {reading from a file descriptor}{306}
+-\entry {reading from a socket}{427}
+-\entry {reading from a stream, by blocks}{249}
+-\entry {reading from a stream, by characters}{243}
+-\entry {reading from a stream, formatted}{272}
+-\entry {ready to run}{590}
+-\entry {real group ID}{743}
+-\entry {real user ID}{743}
+-\entry {real-time timer}{578}
+-\entry {realtime CPU scheduling}{589}
+-\entry {realtime processing}{62}
+-\entry {realtime scheduling}{591}
+-\entry {receiving datagrams}{436}
+-\entry {record locking}{345}
+-\entry {redirecting input and output}{337}
+-\entry {reentrant functions}{635}
+-\entry {reentrant NSS functions}{737}
+-\entry {relative file name}{228}
+-\entry {removal of quotes}{219}
+-\entry {removing a file}{367}
+-\entry {removing macros that shadow functions}{5}
+-\entry {renaming a file}{368}
+-\entry {reporting bugs}{1000}
+-\entry {reporting errors}{15}
+-\entry {REPRINT character}{460}
+-\entry {reserved names}{6}
+-\entry {resource limits}{585}
+-\entry {restarting interrupted primitives}{639}
+-\entry {restrictions on signal handler functions}{634}
+-\entry {root directory}{228}
+-\entry {Rot13}{105}
+-\entry {rpc}{733}
+-\entry {runnable process}{590}
+-\entry {running a command}{701}
+-\initial {S}
+-\entry {saved set-group-ID}{744}
+-\entry {saved set-user-ID}{744}
+-\entry {scanning the group list}{765}
+-\entry {scanning the user list}{762}
+-\entry {scatter-gather}{315}
+-\entry {scheduling, traditional}{595}
+-\entry {search function (for arrays)}{195}
+-\entry {search functions (for strings)}{96}
+-\entry {seed (for random numbers)}{508}
+-\entry {seeking on a file descriptor}{310}
+-\entry {seeking on a stream}{284}
+-\entry {segmentation violation}{615}
+-\entry {sending a datagram}{436}
+-\entry {sending signals}{639}
+-\entry {sequential-access files}{226}
+-\entry {server}{424}
+-\entry {services}{733}
+-\entry {services database}{417}
+-\entry {session}{713}
+-\entry {session leader}{713}
+-\entry {setting an alarm}{578}
+-\entry {\code {setuid} programs}{744}
+-\entry {setuid programs and file access}{382}
+-\entry {severity class}{298, 300}
+-\entry {sgettext}{190}
+-\entry {shadow}{733}
+-\entry {shadowing functions with macros}{5}
+-\entry {shared lock}{345}
+-\entry {shared memory}{598}
+-\entry {shell}{713}
+-\entry {shift state}{116}
+-\entry {Shift_JIS}{113}
+-\entry {shrinking objects}{54}
+-\entry {shutting down a socket}{422}
+-\entry {\code {sigaction} flags}{627}
+-\entry {\code {sigaction} function}{624}
+-\entry {\code {SIGCHLD}, handling of}{723}
+-\entry {sign (of floating point number)}{852}
+-\entry {signal}{522, 611}
+-\entry {signal action}{612}
+-\entry {signal actions}{622}
+-\entry {signal flags}{627}
+-\entry {\code {signal} function}{622}
+-\entry {signal handler function}{628}
+-\entry {signal mask}{645}
+-\entry {signal messages}{621}
+-\entry {signal names}{613}
+-\entry {signal number}{613}
+-\entry {signal set}{644}
+-\entry {signals, generating}{639}
+-\entry {signedness}{517}
+-\entry {significand (of floating point number)}{852}
+-\entry {\code {SIGTTIN}, from background job}{714}
+-\entry {\code {SIGTTOU}, from background job}{715}
+-\entry {simple time}{553}
+-\entry {single-byte string}{76}
+-\entry {size of string}{76}
+-\entry {SJIS}{113}
+-\entry {socket}{399}
+-\entry {socket address (name) binding}{401}
+-\entry {socket domain}{399}
+-\entry {socket namespace}{399}
+-\entry {socket option level}{441}
+-\entry {socket options}{441}
+-\entry {socket pair}{423}
+-\entry {socket protocol}{399}
+-\entry {socket shutdown}{422}
+-\entry {socket, client actions}{424}
+-\entry {socket, closing}{422}
+-\entry {socket, connecting}{424}
+-\entry {socket, creating}{422}
+-\entry {socket, initiating a connection}{424}
+-\entry {sockets, accepting connections}{426}
+-\entry {sockets, listening}{425}
+-\entry {sockets, server actions}{425}
+-\entry {soft limit}{585}
+-\entry {soft link}{364}
+-\entry {sort function (for arrays)}{196}
+-\entry {sparse files}{311}
+-\entry {special files}{388}
+-\entry {special functions}{488}
+-\entry {specified action (for a signal)}{612}
+-\entry {speed of execution}{62}
+-\entry {square root function}{485}
+-\entry {stable sorting}{196}
+-\entry {standard dot notation, for Internet addresses}{409}
+-\entry {standard environment variables}{693}
+-\entry {standard error file descriptor}{313}
+-\entry {standard error stream}{232}
+-\entry {standard file descriptors}{313}
+-\entry {standard input file descriptor}{313}
+-\entry {standard input stream}{231}
+-\entry {standard output file descriptor}{313}
+-\entry {standard output stream}{231}
+-\entry {standard streams}{231}
+-\entry {standards}{1}
+-\entry {START character}{461}
+-\entry {startup of program}{657}
+-\entry {stateful}{116, 119, 124, 134, 136, 148}
+-\entry {static memory allocation}{33}
+-\entry {static storage class}{33}
+-\entry {STATUS character}{462}
+-\entry {status codes}{15}
+-\entry {status of a file}{370}
+-\entry {status of obstack}{56}
+-\entry {sticky bit}{379}
+-\entry {STOP character}{461}
+-\entry {stop signal}{619}
+-\entry {stopped job}{714}
+-\entry {stopped jobs, continuing}{726}
+-\entry {stopped jobs, detecting}{723}
+-\entry {storage allocation}{31}
+-\entry {stream (sockets)}{399}
+-\entry {stream orientation}{233, 240}
+-\entry {stream, for I/O to a string}{292}
+-\entry {streams and descriptors}{314}
+-\entry {streams, and file descriptors}{313}
+-\entry {streams, C++}{239}
+-\entry {streams, standard}{231}
+-\entry {string}{75}
+-\entry {string allocation}{76}
+-\entry {string collation functions}{92}
+-\entry {string comparison functions}{89}
+-\entry {string concatenation functions}{79}
+-\entry {string copy functions}{79}
+-\entry {string length}{76}
+-\entry {string literal}{75}
+-\entry {string search functions}{96}
+-\entry {string stream}{292}
+-\entry {string vectors, null-character separated}{107}
+-\entry {string, representation of}{75}
+-\entry {style of communication (of a socket)}{399}
+-\entry {subshell}{717}
+-\entry {substitution of variables and commands}{219}
+-\entry {successive signals}{632}
+-\entry {summer time}{557}
+-\entry {SunOS}{3}
+-\entry {supplementary group IDs}{743}
+-\entry {SUSP character}{460}
+-\entry {suspend character}{460}
+-\entry {SVID}{3}
+-\entry {swap space}{31}
+-\entry {symbolic link}{364}
+-\entry {symbolic link, opening}{342}
+-\entry {synchronizing}{323, 332}
+-\entry {syntax error messages, in argp}{674}
+-\entry {syntax, for program arguments}{658}
+-\entry {syntax, for reading numbers}{539}
+-\entry {sysconf}{599, 600}
+-\entry {system call}{695}
+-\entry {system call number}{695}
+-\entry {System V Unix}{3}
+-\initial {T}
+-\entry {TCP (Internet protocol)}{419}
+-\entry {template, for \code {printf}}{250}
+-\entry {template, for \code {scanf}}{272}
+-\entry {\code {TERM} environment variable}{694}
+-\entry {terminal flow control}{466}
+-\entry {terminal identification}{445}
+-\entry {terminal input queue}{446}
+-\entry {terminal input queue, clearing}{465}
+-\entry {terminal input signal}{619}
+-\entry {terminal line control functions}{465}
+-\entry {terminal line speed}{457}
+-\entry {terminal mode data types}{447}
+-\entry {terminal mode functions}{448}
+-\entry {terminal modes, BSD}{464}
+-\entry {terminal output queue}{446}
+-\entry {terminal output queue, flushing}{465}
+-\entry {terminal output signal}{619}
+-\entry {terminated jobs, detecting}{723}
+-\entry {termination signal}{616}
+-\entry {testing access permission}{382}
+-\entry {testing exit status of child process}{706}
+-\entry {text stream}{283}
+-\entry {thrashing}{598}
+-\entry {thread of control}{657}
+-\entry {threads}{236}
+-\entry {ticks, clock}{551}
+-\entry {tilde expansion}{219}
+-\entry {time}{549}
+-\entry {TIME termios slot}{463}
+-\entry {time zone}{575}
+-\entry {time zone database}{576}
+-\entry {time, elapsed}{549}
+-\entry {time, high precision}{559}
+-\entry {timer, profiling}{578}
+-\entry {timer, real-time}{578}
+-\entry {timer, virtual}{578}
+-\entry {timers, setting}{578}
+-\entry {timespec}{550}
+-\entry {timeval}{550}
+-\entry {timing error in signal handling}{649}
+-\entry {TMPDIR environment variable}{390}
+-\entry {tokenizing strings}{100}
+-\entry {tools, for installing library}{997}
+-\entry {transmitting datagrams}{436}
+-\entry {tree, directory}{360}
+-\entry {triangulation}{139}
+-\entry {trigonometric functions}{480}
+-\entry {type measurements, floating}{851}
+-\entry {type measurements, integer}{850}
+-\entry {type modifier character (\code {printf})}{252}
+-\entry {type modifier character (\code {scanf})}{273}
+-\entry {typeahead buffer}{446}
+-\entry {\code {TZ} environment variable}{694}
+-\initial {U}
+-\entry {UCS-2}{111}
+-\entry {UCS-4}{111}
+-\entry {ulps}{490}
+-\entry {umask}{380}
+-\entry {unbuffered stream}{288}
+-\entry {unconstrained memory allocation}{34}
+-\entry {undefining macros that shadow functions}{5}
+-\entry {underflow exception}{522}
+-\entry {Unicode}{111}
+-\entry {Unix, Berkeley}{3}
+-\entry {Unix, System V}{3}
+-\entry {unlinking a file}{367}
+-\entry {unordered comparison}{536}
+-\entry {unreading characters}{247}
+-\entry {upgrading from libc5}{999}
+-\entry {upper-case character}{67, 72}
+-\entry {urgent data signal}{618}
+-\entry {urgent socket condition}{433}
+-\entry {usage limits}{585}
+-\entry {usage messages, in argp}{673}
+-\entry {user accounting database}{753}
+-\entry {user database}{761}
+-\entry {user ID}{743}
+-\entry {user ID, determining}{753}
+-\entry {user name}{743}
+-\entry {user signals}{621}
+-\entry {usual file name errors}{229}
+-\entry {UTF-16}{111}
+-\entry {UTF-7}{114}
+-\entry {UTF-8}{111, 114}
+-\initial {V}
+-\entry {va_copy}{85}
+-\entry {variable number of arguments}{842}
+-\entry {variable substitution}{219}
+-\entry {variable-sized arrays}{61}
+-\entry {variadic function argument access}{844}
+-\entry {variadic function prototypes}{843}
+-\entry {variadic functions}{842}
+-\entry {variadic functions, calling}{845}
+-\entry {virtual time alarm signal}{618}
+-\entry {virtual timer}{578}
+-\entry {\code {volatile} declarations}{634}
+-\initial {W}
+-\entry {waiting for a signal}{650}
+-\entry {waiting for completion of child process}{706}
+-\entry {waiting for input or output}{321}
+-\entry {WERASE character}{459}
+-\entry {whitespace character}{68, 72}
+-\entry {wide character}{111}
+-\entry {wide character string}{75, 76}
+-\entry {width of integer type}{850}
+-\entry {wildcard expansion}{219}
+-\entry {wint_t}{77}
+-\entry {word expansion}{218}
+-\entry {working directory}{351}
+-\entry {write lock}{345}
+-\entry {writing to a file descriptor}{308}
+-\entry {writing to a socket}{427}
+-\entry {writing to a stream, by blocks}{249}
+-\entry {writing to a stream, by characters}{241}
+-\entry {writing to a stream, formatted}{250}
+-\initial {Y}
+-\entry {YP}{771}
+-\entry {YP domain name}{771, 772}
+-\initial {Z}
+-\entry {zero divide}{522}
+diff -u -udbrN glibc-2.3.2/manual/libc.fn glibc-2.3.2-200304020432/manual/libc.fn
+--- glibc-2.3.2/manual/libc.fn Tue Feb 25 11:35:07 2003
++++ glibc-2.3.2-200304020432/manual/libc.fn Thu Jan 1 01:00:00 1970
+@@ -1,1335 +0,0 @@
+-\entry{strerror}{26}{\code {strerror}}
+-\entry{strerror_r}{26}{\code {strerror_r}}
+-\entry{perror}{26}{\code {perror}}
+-\entry{error}{28}{\code {error}}
+-\entry{error_at_line}{28}{\code {error_at_line}}
+-\entry{warn}{30}{\code {warn}}
+-\entry{vwarn}{30}{\code {vwarn}}
+-\entry{warnx}{30}{\code {warnx}}
+-\entry{vwarnx}{30}{\code {vwarnx}}
+-\entry{err}{30}{\code {err}}
+-\entry{verr}{30}{\code {verr}}
+-\entry{errx}{30}{\code {errx}}
+-\entry{verrx}{30}{\code {verrx}}
+-\entry{malloc}{34}{\code {malloc}}
+-\entry{free}{35}{\code {free}}
+-\entry{cfree}{36}{\code {cfree}}
+-\entry{realloc}{36}{\code {realloc}}
+-\entry{calloc}{37}{\code {calloc}}
+-\entry{memalign}{38}{\code {memalign}}
+-\entry{posix_memalign}{38}{\code {posix_memalign}}
+-\entry{valloc}{38}{\code {valloc}}
+-\entry{mallopt}{39}{\code {mallopt}}
+-\entry{mcheck}{39}{\code {mcheck}}
+-\entry{mprobe}{40}{\code {mprobe}}
+-\entry{mallinfo}{44}{\code {mallinfo}}
+-\entry{mtrace}{45}{\code {mtrace}}
+-\entry{muntrace}{46}{\code {muntrace}}
+-\entry{obstack_chunk_alloc}{50}{\code {obstack_chunk_alloc}}
+-\entry{obstack_chunk_free}{50}{\code {obstack_chunk_free}}
+-\entry{obstack_init}{50}{\code {obstack_init}}
+-\entry{obstack_alloc}{51}{\code {obstack_alloc}}
+-\entry{obstack_copy}{51}{\code {obstack_copy}}
+-\entry{obstack_copy0}{52}{\code {obstack_copy0}}
+-\entry{obstack_free}{52}{\code {obstack_free}}
+-\entry{obstack_blank}{53}{\code {obstack_blank}}
+-\entry{obstack_grow}{53}{\code {obstack_grow}}
+-\entry{obstack_grow0}{54}{\code {obstack_grow0}}
+-\entry{obstack_1grow}{54}{\code {obstack_1grow}}
+-\entry{obstack_ptr_grow}{54}{\code {obstack_ptr_grow}}
+-\entry{obstack_int_grow}{54}{\code {obstack_int_grow}}
+-\entry{obstack_finish}{54}{\code {obstack_finish}}
+-\entry{obstack_object_size}{54}{\code {obstack_object_size}}
+-\entry{obstack_room}{55}{\code {obstack_room}}
+-\entry{obstack_1grow_fast}{55}{\code {obstack_1grow_fast}}
+-\entry{obstack_ptr_grow_fast}{55}{\code {obstack_ptr_grow_fast}}
+-\entry{obstack_int_grow_fast}{55}{\code {obstack_int_grow_fast}}
+-\entry{obstack_blank_fast}{55}{\code {obstack_blank_fast}}
+-\entry{obstack_base}{56}{\code {obstack_base}}
+-\entry{obstack_next_free}{56}{\code {obstack_next_free}}
+-\entry{obstack_object_size}{56}{\code {obstack_object_size}}
+-\entry{obstack_alignment_mask}{57}{\code {obstack_alignment_mask}}
+-\entry{obstack_chunk_size}{57}{\code {obstack_chunk_size}}
+-\entry{alloca}{59}{\code {alloca}}
+-\entry{brk}{62}{\code {brk}}
+-\entry{sbrk}{62}{\code {sbrk}}
+-\entry{mlock}{64}{\code {mlock}}
+-\entry{munlock}{64}{\code {munlock}}
+-\entry{mlockall}{64}{\code {mlockall}}
+-\entry{munlockall}{65}{\code {munlockall}}
+-\entry{islower}{67}{\code {islower}}
+-\entry{isupper}{67}{\code {isupper}}
+-\entry{isalpha}{67}{\code {isalpha}}
+-\entry{isdigit}{68}{\code {isdigit}}
+-\entry{isalnum}{68}{\code {isalnum}}
+-\entry{isxdigit}{68}{\code {isxdigit}}
+-\entry{ispunct}{68}{\code {ispunct}}
+-\entry{isspace}{68}{\code {isspace}}
+-\entry{isblank}{68}{\code {isblank}}
+-\entry{isgraph}{68}{\code {isgraph}}
+-\entry{isprint}{68}{\code {isprint}}
+-\entry{iscntrl}{68}{\code {iscntrl}}
+-\entry{isascii}{68}{\code {isascii}}
+-\entry{tolower}{69}{\code {tolower}}
+-\entry{toupper}{69}{\code {toupper}}
+-\entry{toascii}{69}{\code {toascii}}
+-\entry{_tolower}{69}{\code {_tolower}}
+-\entry{_toupper}{69}{\code {_toupper}}
+-\entry{wctype}{70}{\code {wctype}}
+-\entry{iswctype}{70}{\code {iswctype}}
+-\entry{iswalnum}{70}{\code {iswalnum}}
+-\entry{iswalpha}{70}{\code {iswalpha}}
+-\entry{iswcntrl}{71}{\code {iswcntrl}}
+-\entry{iswdigit}{71}{\code {iswdigit}}
+-\entry{iswgraph}{71}{\code {iswgraph}}
+-\entry{iswlower}{71}{\code {iswlower}}
+-\entry{iswprint}{71}{\code {iswprint}}
+-\entry{iswpunct}{72}{\code {iswpunct}}
+-\entry{iswspace}{72}{\code {iswspace}}
+-\entry{iswupper}{72}{\code {iswupper}}
+-\entry{iswxdigit}{72}{\code {iswxdigit}}
+-\entry{iswblank}{72}{\code {iswblank}}
+-\entry{wctrans}{74}{\code {wctrans}}
+-\entry{towctrans}{74}{\code {towctrans}}
+-\entry{towlower}{74}{\code {towlower}}
+-\entry{towupper}{74}{\code {towupper}}
+-\entry{strlen}{77}{\code {strlen}}
+-\entry{wcslen}{78}{\code {wcslen}}
+-\entry{strnlen}{78}{\code {strnlen}}
+-\entry{wcsnlen}{79}{\code {wcsnlen}}
+-\entry{memcpy}{79}{\code {memcpy}}
+-\entry{wmemcpy}{79}{\code {wmemcpy}}
+-\entry{mempcpy}{80}{\code {mempcpy}}
+-\entry{wmempcpy}{80}{\code {wmempcpy}}
+-\entry{memmove}{80}{\code {memmove}}
+-\entry{wmemmove}{81}{\code {wmemmove}}
+-\entry{memccpy}{81}{\code {memccpy}}
+-\entry{memset}{81}{\code {memset}}
+-\entry{wmemset}{81}{\code {wmemset}}
+-\entry{strcpy}{81}{\code {strcpy}}
+-\entry{wcscpy}{81}{\code {wcscpy}}
+-\entry{strncpy}{81}{\code {strncpy}}
+-\entry{wcsncpy}{82}{\code {wcsncpy}}
+-\entry{strdup}{82}{\code {strdup}}
+-\entry{wcsdup}{82}{\code {wcsdup}}
+-\entry{strndup}{82}{\code {strndup}}
+-\entry{stpcpy}{83}{\code {stpcpy}}
+-\entry{wcpcpy}{83}{\code {wcpcpy}}
+-\entry{stpncpy}{83}{\code {stpncpy}}
+-\entry{wcpncpy}{84}{\code {wcpncpy}}
+-\entry{strdupa}{84}{\code {strdupa}}
+-\entry{strndupa}{85}{\code {strndupa}}
+-\entry{strcat}{85}{\code {strcat}}
+-\entry{wcscat}{85}{\code {wcscat}}
+-\entry{strncat}{87}{\code {strncat}}
+-\entry{wcsncat}{88}{\code {wcsncat}}
+-\entry{bcopy}{88}{\code {bcopy}}
+-\entry{bzero}{89}{\code {bzero}}
+-\entry{memcmp}{89}{\code {memcmp}}
+-\entry{wmemcmp}{89}{\code {wmemcmp}}
+-\entry{strcmp}{90}{\code {strcmp}}
+-\entry{wcscmp}{90}{\code {wcscmp}}
+-\entry{strcasecmp}{90}{\code {strcasecmp}}
+-\entry{wcscasecmp}{90}{\code {wcscasecmp}}
+-\entry{strncmp}{91}{\code {strncmp}}
+-\entry{wcsncmp}{91}{\code {wcsncmp}}
+-\entry{strncasecmp}{91}{\code {strncasecmp}}
+-\entry{wcsncasecmp}{91}{\code {wcsncasecmp}}
+-\entry{strverscmp}{91}{\code {strverscmp}}
+-\entry{bcmp}{92}{\code {bcmp}}
+-\entry{strcoll}{93}{\code {strcoll}}
+-\entry{wcscoll}{93}{\code {wcscoll}}
+-\entry{strxfrm}{93}{\code {strxfrm}}
+-\entry{wcsxfrm}{94}{\code {wcsxfrm}}
+-\entry{memchr}{96}{\code {memchr}}
+-\entry{wmemchr}{96}{\code {wmemchr}}
+-\entry{rawmemchr}{96}{\code {rawmemchr}}
+-\entry{memrchr}{97}{\code {memrchr}}
+-\entry{strchr}{97}{\code {strchr}}
+-\entry{wcschr}{97}{\code {wcschr}}
+-\entry{strchrnul}{97}{\code {strchrnul}}
+-\entry{wcschrnul}{97}{\code {wcschrnul}}
+-\entry{strrchr}{98}{\code {strrchr}}
+-\entry{wcsrchr}{98}{\code {wcsrchr}}
+-\entry{strstr}{98}{\code {strstr}}
+-\entry{wcsstr}{98}{\code {wcsstr}}
+-\entry{wcswcs}{98}{\code {wcswcs}}
+-\entry{strcasestr}{98}{\code {strcasestr}}
+-\entry{memmem}{99}{\code {memmem}}
+-\entry{strspn}{99}{\code {strspn}}
+-\entry{wcsspn}{99}{\code {wcsspn}}
+-\entry{strcspn}{99}{\code {strcspn}}
+-\entry{wcscspn}{99}{\code {wcscspn}}
+-\entry{strpbrk}{99}{\code {strpbrk}}
+-\entry{wcspbrk}{100}{\code {wcspbrk}}
+-\entry{index}{100}{\code {index}}
+-\entry{rindex}{100}{\code {rindex}}
+-\entry{strtok}{100}{\code {strtok}}
+-\entry{wcstok}{101}{\code {wcstok}}
+-\entry{strtok_r}{102}{\code {strtok_r}}
+-\entry{strsep}{102}{\code {strsep}}
+-\entry{basename}{103}{\code {basename}}
+-\entry{basename}{104}{\code {basename}}
+-\entry{dirname}{104}{\code {dirname}}
+-\entry{strfry}{105}{\code {strfry}}
+-\entry{memfrob}{105}{\code {memfrob}}
+-\entry{l64a}{105}{\code {l64a}}
+-\entry{a64l}{106}{\code {a64l}}
+-\entry{argz_create}{108}{\code {argz_create}}
+-\entry{argz_create_sep}{108}{\code {argz_create_sep}}
+-\entry{argz_count}{108}{\code {argz_count}}
+-\entry{argz_extract}{108}{\code {argz_extract}}
+-\entry{argz_stringify}{108}{\code {argz_stringify}}
+-\entry{argz_add}{108}{\code {argz_add}}
+-\entry{argz_add_sep}{108}{\code {argz_add_sep}}
+-\entry{argz_append}{108}{\code {argz_append}}
+-\entry{argz_delete}{109}{\code {argz_delete}}
+-\entry{argz_insert}{109}{\code {argz_insert}}
+-\entry{argz_next}{109}{\code {argz_next}}
+-\entry{argz_replace}{109}{\code {argz_replace}}
+-\entry{envz_entry}{110}{\code {envz_entry}}
+-\entry{envz_get}{110}{\code {envz_get}}
+-\entry{envz_add}{110}{\code {envz_add}}
+-\entry{envz_merge}{110}{\code {envz_merge}}
+-\entry{envz_strip}{110}{\code {envz_strip}}
+-\entry{mbsinit}{117}{\code {mbsinit}}
+-\entry{btowc}{118}{\code {btowc}}
+-\entry{wctob}{118}{\code {wctob}}
+-\entry{mbrtowc}{119}{\code {mbrtowc}}
+-\entry{mbrlen}{120}{\code {mbrlen}}
+-\entry{wcrtomb}{121}{\code {wcrtomb}}
+-\entry{mbsrtowcs}{123}{\code {mbsrtowcs}}
+-\entry{wcsrtombs}{124}{\code {wcsrtombs}}
+-\entry{mbsnrtowcs}{125}{\code {mbsnrtowcs}}
+-\entry{wcsnrtombs}{126}{\code {wcsnrtombs}}
+-\entry{mbtowc}{128}{\code {mbtowc}}
+-\entry{wctomb}{128}{\code {wctomb}}
+-\entry{mblen}{129}{\code {mblen}}
+-\entry{mbstowcs}{129}{\code {mbstowcs}}
+-\entry{wcstombs}{130}{\code {wcstombs}}
+-\entry{iconv_open}{132}{\code {iconv_open}}
+-\entry{iconv_close}{133}{\code {iconv_close}}
+-\entry{iconv}{134}{\code {iconv}}
+-\entry{setlocale}{155}{\code {setlocale}}
+-\entry{localeconv}{158}{\code {localeconv}}
+-\entry{nl_langinfo}{161}{\code {nl_langinfo}}
+-\entry{strfmon}{167}{\code {strfmon}}
+-\entry{rpmatch}{170}{\code {rpmatch}}
+-\entry{catopen}{171}{\code {catopen}}
+-\entry{catgets}{174}{\code {catgets}}
+-\entry{catclose}{174}{\code {catclose}}
+-\entry{gettext}{181}{\code {gettext}}
+-\entry{dgettext}{182}{\code {dgettext}}
+-\entry{dcgettext}{182}{\code {dcgettext}}
+-\entry{textdomain}{184}{\code {textdomain}}
+-\entry{bindtextdomain}{184}{\code {bindtextdomain}}
+-\entry{ngettext}{186}{\code {ngettext}}
+-\entry{dngettext}{186}{\code {dngettext}}
+-\entry{dcngettext}{186}{\code {dcngettext}}
+-\entry{bind_textdomain_codeset}{189}{\code {bind_textdomain_codeset}}
+-\entry{lfind}{195}{\code {lfind}}
+-\entry{lsearch}{196}{\code {lsearch}}
+-\entry{bsearch}{196}{\code {bsearch}}
+-\entry{qsort}{196}{\code {qsort}}
+-\entry{hcreate}{199}{\code {hcreate}}
+-\entry{hdestroy}{200}{\code {hdestroy}}
+-\entry{hsearch}{200}{\code {hsearch}}
+-\entry{hcreate_r}{201}{\code {hcreate_r}}
+-\entry{hdestroy_r}{201}{\code {hdestroy_r}}
+-\entry{hsearch_r}{201}{\code {hsearch_r}}
+-\entry{tsearch}{202}{\code {tsearch}}
+-\entry{tfind}{202}{\code {tfind}}
+-\entry{tdelete}{202}{\code {tdelete}}
+-\entry{tdestroy}{203}{\code {tdestroy}}
+-\entry{twalk}{203}{\code {twalk}}
+-\entry{fnmatch}{205}{\code {fnmatch}}
+-\entry{glob}{209}{\code {glob}}
+-\entry{glob64}{209}{\code {glob64}}
+-\entry{globfree}{213}{\code {globfree}}
+-\entry{globfree64}{213}{\code {globfree64}}
+-\entry{regcomp}{214}{\code {regcomp}}
+-\entry{regexec}{216}{\code {regexec}}
+-\entry{regfree}{218}{\code {regfree}}
+-\entry{regerror}{218}{\code {regerror}}
+-\entry{wordexp}{220}{\code {wordexp}}
+-\entry{wordfree}{220}{\code {wordfree}}
+-\entry{fopen}{232}{\code {fopen}}
+-\entry{fopen64}{233}{\code {fopen64}}
+-\entry{freopen}{234}{\code {freopen}}
+-\entry{freopen64}{234}{\code {freopen64}}
+-\entry{__freadable}{235}{\code {__freadable}}
+-\entry{__fwritable}{235}{\code {__fwritable}}
+-\entry{__freading}{235}{\code {__freading}}
+-\entry{__fwriting}{235}{\code {__fwriting}}
+-\entry{fclose}{235}{\code {fclose}}
+-\entry{fcloseall}{236}{\code {fcloseall}}
+-\entry{flockfile}{236}{\code {flockfile}}
+-\entry{ftrylockfile}{237}{\code {ftrylockfile}}
+-\entry{funlockfile}{237}{\code {funlockfile}}
+-\entry{__fsetlocking}{238}{\code {__fsetlocking}}
+-\entry{fwide}{240}{\code {fwide}}
+-\entry{fputc}{241}{\code {fputc}}
+-\entry{fputwc}{241}{\code {fputwc}}
+-\entry{fputc_unlocked}{241}{\code {fputc_unlocked}}
+-\entry{fputwc_unlocked}{241}{\code {fputwc_unlocked}}
+-\entry{putc}{241}{\code {putc}}
+-\entry{putwc}{242}{\code {putwc}}
+-\entry{putc_unlocked}{242}{\code {putc_unlocked}}
+-\entry{putwc_unlocked}{242}{\code {putwc_unlocked}}
+-\entry{putchar}{242}{\code {putchar}}
+-\entry{putwchar}{242}{\code {putwchar}}
+-\entry{putchar_unlocked}{242}{\code {putchar_unlocked}}
+-\entry{putwchar_unlocked}{242}{\code {putwchar_unlocked}}
+-\entry{fputs}{242}{\code {fputs}}
+-\entry{fputws}{242}{\code {fputws}}
+-\entry{fputs_unlocked}{243}{\code {fputs_unlocked}}
+-\entry{fputws_unlocked}{243}{\code {fputws_unlocked}}
+-\entry{puts}{243}{\code {puts}}
+-\entry{putw}{243}{\code {putw}}
+-\entry{fgetc}{243}{\code {fgetc}}
+-\entry{fgetwc}{243}{\code {fgetwc}}
+-\entry{fgetc_unlocked}{244}{\code {fgetc_unlocked}}
+-\entry{fgetwc_unlocked}{244}{\code {fgetwc_unlocked}}
+-\entry{getc}{244}{\code {getc}}
+-\entry{getwc}{244}{\code {getwc}}
+-\entry{getc_unlocked}{244}{\code {getc_unlocked}}
+-\entry{getwc_unlocked}{244}{\code {getwc_unlocked}}
+-\entry{getchar}{244}{\code {getchar}}
+-\entry{getwchar}{244}{\code {getwchar}}
+-\entry{getchar_unlocked}{244}{\code {getchar_unlocked}}
+-\entry{getwchar_unlocked}{244}{\code {getwchar_unlocked}}
+-\entry{getw}{245}{\code {getw}}
+-\entry{getline}{245}{\code {getline}}
+-\entry{getdelim}{246}{\code {getdelim}}
+-\entry{fgets}{246}{\code {fgets}}
+-\entry{fgetws}{246}{\code {fgetws}}
+-\entry{fgets_unlocked}{247}{\code {fgets_unlocked}}
+-\entry{fgetws_unlocked}{247}{\code {fgetws_unlocked}}
+-\entry{gets}{247}{\code {gets}}
+-\entry{ungetc}{248}{\code {ungetc}}
+-\entry{ungetwc}{248}{\code {ungetwc}}
+-\entry{fread}{249}{\code {fread}}
+-\entry{fread_unlocked}{249}{\code {fread_unlocked}}
+-\entry{fwrite}{250}{\code {fwrite}}
+-\entry{fwrite_unlocked}{250}{\code {fwrite_unlocked}}
+-\entry{printf}{259}{\code {printf}}
+-\entry{wprintf}{259}{\code {wprintf}}
+-\entry{fprintf}{259}{\code {fprintf}}
+-\entry{fwprintf}{259}{\code {fwprintf}}
+-\entry{sprintf}{259}{\code {sprintf}}
+-\entry{swprintf}{259}{\code {swprintf}}
+-\entry{snprintf}{260}{\code {snprintf}}
+-\entry{asprintf}{261}{\code {asprintf}}
+-\entry{obstack_printf}{261}{\code {obstack_printf}}
+-\entry{vprintf}{262}{\code {vprintf}}
+-\entry{vwprintf}{262}{\code {vwprintf}}
+-\entry{vfprintf}{262}{\code {vfprintf}}
+-\entry{vfwprintf}{262}{\code {vfwprintf}}
+-\entry{vsprintf}{262}{\code {vsprintf}}
+-\entry{vswprintf}{262}{\code {vswprintf}}
+-\entry{vsnprintf}{263}{\code {vsnprintf}}
+-\entry{vasprintf}{263}{\code {vasprintf}}
+-\entry{obstack_vprintf}{263}{\code {obstack_vprintf}}
+-\entry{parse_printf_format}{264}{\code {parse_printf_format}}
+-\entry{register_printf_function}{267}{\code {register_printf_function}}
+-\entry{printf_size}{271}{\code {printf_size}}
+-\entry{printf_size_info}{271}{\code {printf_size_info}}
+-\entry{scanf}{279}{\code {scanf}}
+-\entry{wscanf}{280}{\code {wscanf}}
+-\entry{fscanf}{280}{\code {fscanf}}
+-\entry{fwscanf}{280}{\code {fwscanf}}
+-\entry{sscanf}{280}{\code {sscanf}}
+-\entry{swscanf}{280}{\code {swscanf}}
+-\entry{vscanf}{281}{\code {vscanf}}
+-\entry{vwscanf}{281}{\code {vwscanf}}
+-\entry{vfscanf}{281}{\code {vfscanf}}
+-\entry{vfwscanf}{281}{\code {vfwscanf}}
+-\entry{vsscanf}{281}{\code {vsscanf}}
+-\entry{vswscanf}{281}{\code {vswscanf}}
+-\entry{feof}{282}{\code {feof}}
+-\entry{feof_unlocked}{282}{\code {feof_unlocked}}
+-\entry{ferror}{282}{\code {ferror}}
+-\entry{ferror_unlocked}{282}{\code {ferror_unlocked}}
+-\entry{clearerr}{282}{\code {clearerr}}
+-\entry{clearerr_unlocked}{283}{\code {clearerr_unlocked}}
+-\entry{ftell}{284}{\code {ftell}}
+-\entry{ftello}{284}{\code {ftello}}
+-\entry{ftello64}{285}{\code {ftello64}}
+-\entry{fseek}{285}{\code {fseek}}
+-\entry{fseeko}{285}{\code {fseeko}}
+-\entry{fseeko64}{285}{\code {fseeko64}}
+-\entry{rewind}{286}{\code {rewind}}
+-\entry{fgetpos}{287}{\code {fgetpos}}
+-\entry{fgetpos64}{287}{\code {fgetpos64}}
+-\entry{fsetpos}{288}{\code {fsetpos}}
+-\entry{fsetpos64}{288}{\code {fsetpos64}}
+-\entry{fflush}{289}{\code {fflush}}
+-\entry{fflush_unlocked}{289}{\code {fflush_unlocked}}
+-\entry{_flushlbf}{289}{\code {_flushlbf}}
+-\entry{__fpurge}{290}{\code {__fpurge}}
+-\entry{setvbuf}{290}{\code {setvbuf}}
+-\entry{setbuf}{291}{\code {setbuf}}
+-\entry{setbuffer}{291}{\code {setbuffer}}
+-\entry{setlinebuf}{291}{\code {setlinebuf}}
+-\entry{__flbf}{291}{\code {__flbf}}
+-\entry{__fbufsize}{292}{\code {__fbufsize}}
+-\entry{__fpending}{292}{\code {__fpending}}
+-\entry{fmemopen}{292}{\code {fmemopen}}
+-\entry{open_memstream}{293}{\code {open_memstream}}
+-\entry{open_obstack_stream}{294}{\code {open_obstack_stream}}
+-\entry{fopencookie}{296}{\code {fopencookie}}
+-\entry{fmtmsg}{298}{\code {fmtmsg}}
+-\entry{addseverity}{300}{\code {addseverity}}
+-\entry{open}{303}{\code {open}}
+-\entry{open64}{304}{\code {open64}}
+-\entry{creat}{304}{\code {creat}}
+-\entry{creat64}{305}{\code {creat64}}
+-\entry{close}{305}{\code {close}}
+-\entry{read}{306}{\code {read}}
+-\entry{pread}{307}{\code {pread}}
+-\entry{pread64}{307}{\code {pread64}}
+-\entry{write}{308}{\code {write}}
+-\entry{pwrite}{309}{\code {pwrite}}
+-\entry{pwrite64}{310}{\code {pwrite64}}
+-\entry{lseek}{310}{\code {lseek}}
+-\entry{lseek64}{311}{\code {lseek64}}
+-\entry{fdopen}{313}{\code {fdopen}}
+-\entry{fileno}{313}{\code {fileno}}
+-\entry{fileno_unlocked}{313}{\code {fileno_unlocked}}
+-\entry{fclean}{315}{\code {fclean}}
+-\entry{readv}{316}{\code {readv}}
+-\entry{writev}{316}{\code {writev}}
+-\entry{mmap}{317}{\code {mmap}}
+-\entry{mmap64}{318}{\code {mmap64}}
+-\entry{munmap}{318}{\code {munmap}}
+-\entry{msync}{319}{\code {msync}}
+-\entry{mremap}{319}{\code {mremap}}
+-\entry{madvise}{320}{\code {madvise}}
+-\entry{FD_ZERO}{321}{\code {FD_ZERO}}
+-\entry{FD_SET}{321}{\code {FD_SET}}
+-\entry{FD_CLR}{321}{\code {FD_CLR}}
+-\entry{FD_ISSET}{322}{\code {FD_ISSET}}
+-\entry{select}{322}{\code {select}}
+-\entry{sync}{323}{\code {sync}}
+-\entry{fsync}{324}{\code {fsync}}
+-\entry{fdatasync}{324}{\code {fdatasync}}
+-\entry{aio_read}{327}{\code {aio_read}}
+-\entry{aio_read64}{328}{\code {aio_read64}}
+-\entry{aio_write}{328}{\code {aio_write}}
+-\entry{aio_write64}{329}{\code {aio_write64}}
+-\entry{lio_listio}{330}{\code {lio_listio}}
+-\entry{lio_listio64}{331}{\code {lio_listio64}}
+-\entry{aio_error}{331}{\code {aio_error}}
+-\entry{aio_error64}{331}{\code {aio_error64}}
+-\entry{aio_return}{332}{\code {aio_return}}
+-\entry{aio_return64}{332}{\code {aio_return64}}
+-\entry{aio_fsync}{332}{\code {aio_fsync}}
+-\entry{aio_fsync64}{333}{\code {aio_fsync64}}
+-\entry{aio_suspend}{333}{\code {aio_suspend}}
+-\entry{aio_suspend64}{334}{\code {aio_suspend64}}
+-\entry{aio_cancel}{334}{\code {aio_cancel}}
+-\entry{aio_cancel64}{335}{\code {aio_cancel64}}
+-\entry{aio_init}{336}{\code {aio_init}}
+-\entry{fcntl}{336}{\code {fcntl}}
+-\entry{dup}{337}{\code {dup}}
+-\entry{dup2}{337}{\code {dup2}}
+-\entry{ioctl}{349}{\code {ioctl}}
+-\entry{getcwd}{351}{\code {getcwd}}
+-\entry{getwd}{352}{\code {getwd}}
+-\entry{get_current_dir_name}{352}{\code {get_current_dir_name}}
+-\entry{chdir}{352}{\code {chdir}}
+-\entry{fchdir}{352}{\code {fchdir}}
+-\entry{IFTODT}{354}{\code {IFTODT}}
+-\entry{DTTOIF}{354}{\code {DTTOIF}}
+-\entry{opendir}{354}{\code {opendir}}
+-\entry{dirfd}{355}{\code {dirfd}}
+-\entry{readdir}{355}{\code {readdir}}
+-\entry{readdir_r}{355}{\code {readdir_r}}
+-\entry{readdir64}{356}{\code {readdir64}}
+-\entry{readdir64_r}{356}{\code {readdir64_r}}
+-\entry{closedir}{356}{\code {closedir}}
+-\entry{rewinddir}{357}{\code {rewinddir}}
+-\entry{telldir}{357}{\code {telldir}}
+-\entry{seekdir}{357}{\code {seekdir}}
+-\entry{scandir}{358}{\code {scandir}}
+-\entry{alphasort}{358}{\code {alphasort}}
+-\entry{versionsort}{358}{\code {versionsort}}
+-\entry{scandir64}{358}{\code {scandir64}}
+-\entry{alphasort64}{359}{\code {alphasort64}}
+-\entry{versionsort64}{359}{\code {versionsort64}}
+-\entry{ftw}{361}{\code {ftw}}
+-\entry{ftw64}{362}{\code {ftw64}}
+-\entry{nftw}{362}{\code {nftw}}
+-\entry{nftw64}{363}{\code {nftw64}}
+-\entry{link}{364}{\code {link}}
+-\entry{symlink}{365}{\code {symlink}}
+-\entry{readlink}{365}{\code {readlink}}
+-\entry{canonicalize_file_name}{366}{\code {canonicalize_file_name}}
+-\entry{realpath}{367}{\code {realpath}}
+-\entry{unlink}{367}{\code {unlink}}
+-\entry{rmdir}{368}{\code {rmdir}}
+-\entry{remove}{368}{\code {remove}}
+-\entry{rename}{368}{\code {rename}}
+-\entry{mkdir}{369}{\code {mkdir}}
+-\entry{stat}{374}{\code {stat}}
+-\entry{stat64}{374}{\code {stat64}}
+-\entry{fstat}{375}{\code {fstat}}
+-\entry{fstat64}{375}{\code {fstat64}}
+-\entry{lstat}{375}{\code {lstat}}
+-\entry{lstat64}{375}{\code {lstat64}}
+-\entry{S_ISDIR}{376}{\code {S_ISDIR}}
+-\entry{S_ISCHR}{376}{\code {S_ISCHR}}
+-\entry{S_ISBLK}{376}{\code {S_ISBLK}}
+-\entry{S_ISREG}{376}{\code {S_ISREG}}
+-\entry{S_ISFIFO}{376}{\code {S_ISFIFO}}
+-\entry{S_ISLNK}{376}{\code {S_ISLNK}}
+-\entry{S_ISSOCK}{376}{\code {S_ISSOCK}}
+-\entry{S_TYPEISMQ}{377}{\code {S_TYPEISMQ}}
+-\entry{S_TYPEISSEM}{377}{\code {S_TYPEISSEM}}
+-\entry{S_TYPEISSHM}{377}{\code {S_TYPEISSHM}}
+-\entry{chown}{377}{\code {chown}}
+-\entry{fchown}{378}{\code {fchown}}
+-\entry{chmod}{381}{\code {chmod}}
+-\entry{umask}{381}{\code {umask}}
+-\entry{getumask}{381}{\code {getumask}}
+-\entry{chmod}{381}{\code {chmod}}
+-\entry{fchmod}{382}{\code {fchmod}}
+-\entry{access}{383}{\code {access}}
+-\entry{utime}{384}{\code {utime}}
+-\entry{utimes}{385}{\code {utimes}}
+-\entry{lutimes}{385}{\code {lutimes}}
+-\entry{futimes}{385}{\code {futimes}}
+-\entry{truncate}{386}{\code {truncate}}
+-\entry{truncate64}{386}{\code {truncate64}}
+-\entry{ftruncate}{386}{\code {ftruncate}}
+-\entry{ftruncate64}{387}{\code {ftruncate64}}
+-\entry{mknod}{388}{\code {mknod}}
+-\entry{tmpfile}{389}{\code {tmpfile}}
+-\entry{tmpfile64}{389}{\code {tmpfile64}}
+-\entry{tmpnam}{389}{\code {tmpnam}}
+-\entry{tmpnam_r}{389}{\code {tmpnam_r}}
+-\entry{tempnam}{390}{\code {tempnam}}
+-\entry{mktemp}{390}{\code {mktemp}}
+-\entry{mkstemp}{391}{\code {mkstemp}}
+-\entry{mkdtemp}{391}{\code {mkdtemp}}
+-\entry{pipe}{393}{\code {pipe}}
+-\entry{popen}{395}{\code {popen}}
+-\entry{pclose}{395}{\code {pclose}}
+-\entry{mkfifo}{396}{\code {mkfifo}}
+-\entry{bind}{403}{\code {bind}}
+-\entry{getsockname}{403}{\code {getsockname}}
+-\entry{if_nametoindex}{404}{\code {if_nametoindex}}
+-\entry{if_indextoname}{404}{\code {if_indextoname}}
+-\entry{if_nameindex}{405}{\code {if_nameindex}}
+-\entry{if_freenameindex}{405}{\code {if_freenameindex}}
+-\entry{SUN_LEN}{406}{\code {SUN_LEN}}
+-\entry{inet_aton}{412}{\code {inet_aton}}
+-\entry{inet_addr}{412}{\code {inet_addr}}
+-\entry{inet_network}{412}{\code {inet_network}}
+-\entry{inet_ntoa}{412}{\code {inet_ntoa}}
+-\entry{inet_makeaddr}{412}{\code {inet_makeaddr}}
+-\entry{inet_lnaof}{412}{\code {inet_lnaof}}
+-\entry{inet_netof}{412}{\code {inet_netof}}
+-\entry{inet_pton}{412}{\code {inet_pton}}
+-\entry{inet_ntop}{413}{\code {inet_ntop}}
+-\entry{gethostbyname}{414}{\code {gethostbyname}}
+-\entry{gethostbyname2}{414}{\code {gethostbyname2}}
+-\entry{gethostbyaddr}{414}{\code {gethostbyaddr}}
+-\entry{gethostbyname_r}{415}{\code {gethostbyname_r}}
+-\entry{gethostbyname2_r}{415}{\code {gethostbyname2_r}}
+-\entry{gethostbyaddr_r}{415}{\code {gethostbyaddr_r}}
+-\entry{sethostent}{416}{\code {sethostent}}
+-\entry{gethostent}{416}{\code {gethostent}}
+-\entry{endhostent}{416}{\code {endhostent}}
+-\entry{getservbyname}{417}{\code {getservbyname}}
+-\entry{getservbyport}{418}{\code {getservbyport}}
+-\entry{setservent}{418}{\code {setservent}}
+-\entry{getservent}{418}{\code {getservent}}
+-\entry{endservent}{418}{\code {endservent}}
+-\entry{htons}{418}{\code {htons}}
+-\entry{ntohs}{419}{\code {ntohs}}
+-\entry{htonl}{419}{\code {htonl}}
+-\entry{ntohl}{419}{\code {ntohl}}
+-\entry{getprotobyname}{420}{\code {getprotobyname}}
+-\entry{getprotobynumber}{420}{\code {getprotobynumber}}
+-\entry{setprotoent}{420}{\code {setprotoent}}
+-\entry{getprotoent}{420}{\code {getprotoent}}
+-\entry{endprotoent}{420}{\code {endprotoent}}
+-\entry{socket}{422}{\code {socket}}
+-\entry{shutdown}{422}{\code {shutdown}}
+-\entry{socketpair}{423}{\code {socketpair}}
+-\entry{connect}{424}{\code {connect}}
+-\entry{listen}{425}{\code {listen}}
+-\entry{accept}{426}{\code {accept}}
+-\entry{getpeername}{427}{\code {getpeername}}
+-\entry{send}{428}{\code {send}}
+-\entry{recv}{429}{\code {recv}}
+-\entry{sendto}{436}{\code {sendto}}
+-\entry{recvfrom}{436}{\code {recvfrom}}
+-\entry{getsockopt}{441}{\code {getsockopt}}
+-\entry{setsockopt}{441}{\code {setsockopt}}
+-\entry{getnetbyname}{443}{\code {getnetbyname}}
+-\entry{getnetbyaddr}{444}{\code {getnetbyaddr}}
+-\entry{setnetent}{444}{\code {setnetent}}
+-\entry{getnetent}{444}{\code {getnetent}}
+-\entry{endnetent}{444}{\code {endnetent}}
+-\entry{isatty}{445}{\code {isatty}}
+-\entry{ttyname}{445}{\code {ttyname}}
+-\entry{ttyname_r}{445}{\code {ttyname_r}}
+-\entry{tcgetattr}{448}{\code {tcgetattr}}
+-\entry{tcsetattr}{448}{\code {tcsetattr}}
+-\entry{cfgetospeed}{457}{\code {cfgetospeed}}
+-\entry{cfgetispeed}{457}{\code {cfgetispeed}}
+-\entry{cfsetospeed}{457}{\code {cfsetospeed}}
+-\entry{cfsetispeed}{457}{\code {cfsetispeed}}
+-\entry{cfsetspeed}{457}{\code {cfsetspeed}}
+-\entry{cfmakeraw}{464}{\code {cfmakeraw}}
+-\entry{gtty}{464}{\code {gtty}}
+-\entry{stty}{464}{\code {stty}}
+-\entry{tcsendbreak}{465}{\code {tcsendbreak}}
+-\entry{tcdrain}{465}{\code {tcdrain}}
+-\entry{tcflush}{465}{\code {tcflush}}
+-\entry{tcflow}{466}{\code {tcflow}}
+-\entry{getpt}{468}{\code {getpt}}
+-\entry{grantpt}{468}{\code {grantpt}}
+-\entry{unlockpt}{469}{\code {unlockpt}}
+-\entry{ptsname}{469}{\code {ptsname}}
+-\entry{ptsname_r}{469}{\code {ptsname_r}}
+-\entry{openpty}{470}{\code {openpty}}
+-\entry{forkpty}{470}{\code {forkpty}}
+-\entry{openlog}{472}{\code {openlog}}
+-\entry{syslog}{474}{\code {syslog}}
+-\entry{vsyslog}{476}{\code {vsyslog}}
+-\entry{closelog}{476}{\code {closelog}}
+-\entry{setlogmask}{477}{\code {setlogmask}}
+-\entry{sin}{480}{\code {sin}}
+-\entry{sinf}{480}{\code {sinf}}
+-\entry{sinl}{480}{\code {sinl}}
+-\entry{cos}{480}{\code {cos}}
+-\entry{cosf}{480}{\code {cosf}}
+-\entry{cosl}{480}{\code {cosl}}
+-\entry{tan}{480}{\code {tan}}
+-\entry{tanf}{480}{\code {tanf}}
+-\entry{tanl}{480}{\code {tanl}}
+-\entry{sincos}{480}{\code {sincos}}
+-\entry{sincosf}{480}{\code {sincosf}}
+-\entry{sincosl}{480}{\code {sincosl}}
+-\entry{csin}{481}{\code {csin}}
+-\entry{csinf}{481}{\code {csinf}}
+-\entry{csinl}{481}{\code {csinl}}
+-\entry{ccos}{481}{\code {ccos}}
+-\entry{ccosf}{481}{\code {ccosf}}
+-\entry{ccosl}{481}{\code {ccosl}}
+-\entry{ctan}{481}{\code {ctan}}
+-\entry{ctanf}{481}{\code {ctanf}}
+-\entry{ctanl}{481}{\code {ctanl}}
+-\entry{asin}{481}{\code {asin}}
+-\entry{asinf}{481}{\code {asinf}}
+-\entry{asinl}{481}{\code {asinl}}
+-\entry{acos}{482}{\code {acos}}
+-\entry{acosf}{482}{\code {acosf}}
+-\entry{acosl}{482}{\code {acosl}}
+-\entry{atan}{482}{\code {atan}}
+-\entry{atanf}{482}{\code {atanf}}
+-\entry{atanl}{482}{\code {atanl}}
+-\entry{atan2}{482}{\code {atan2}}
+-\entry{atan2f}{482}{\code {atan2f}}
+-\entry{atan2l}{482}{\code {atan2l}}
+-\entry{casin}{482}{\code {casin}}
+-\entry{casinf}{482}{\code {casinf}}
+-\entry{casinl}{482}{\code {casinl}}
+-\entry{cacos}{482}{\code {cacos}}
+-\entry{cacosf}{482}{\code {cacosf}}
+-\entry{cacosl}{482}{\code {cacosl}}
+-\entry{catan}{482}{\code {catan}}
+-\entry{catanf}{482}{\code {catanf}}
+-\entry{catanl}{482}{\code {catanl}}
+-\entry{exp}{483}{\code {exp}}
+-\entry{expf}{483}{\code {expf}}
+-\entry{expl}{483}{\code {expl}}
+-\entry{exp2}{483}{\code {exp2}}
+-\entry{exp2f}{483}{\code {exp2f}}
+-\entry{exp2l}{483}{\code {exp2l}}
+-\entry{exp10}{483}{\code {exp10}}
+-\entry{exp10f}{483}{\code {exp10f}}
+-\entry{exp10l}{483}{\code {exp10l}}
+-\entry{pow10}{483}{\code {pow10}}
+-\entry{pow10f}{483}{\code {pow10f}}
+-\entry{pow10l}{483}{\code {pow10l}}
+-\entry{log}{483}{\code {log}}
+-\entry{logf}{483}{\code {logf}}
+-\entry{logl}{483}{\code {logl}}
+-\entry{log10}{483}{\code {log10}}
+-\entry{log10f}{483}{\code {log10f}}
+-\entry{log10l}{483}{\code {log10l}}
+-\entry{log2}{483}{\code {log2}}
+-\entry{log2f}{483}{\code {log2f}}
+-\entry{log2l}{483}{\code {log2l}}
+-\entry{logb}{483}{\code {logb}}
+-\entry{logbf}{484}{\code {logbf}}
+-\entry{logbl}{484}{\code {logbl}}
+-\entry{ilogb}{484}{\code {ilogb}}
+-\entry{ilogbf}{484}{\code {ilogbf}}
+-\entry{ilogbl}{484}{\code {ilogbl}}
+-\entry{pow}{484}{\code {pow}}
+-\entry{powf}{484}{\code {powf}}
+-\entry{powl}{484}{\code {powl}}
+-\entry{sqrt}{485}{\code {sqrt}}
+-\entry{sqrtf}{485}{\code {sqrtf}}
+-\entry{sqrtl}{485}{\code {sqrtl}}
+-\entry{cbrt}{485}{\code {cbrt}}
+-\entry{cbrtf}{485}{\code {cbrtf}}
+-\entry{cbrtl}{485}{\code {cbrtl}}
+-\entry{hypot}{485}{\code {hypot}}
+-\entry{hypotf}{485}{\code {hypotf}}
+-\entry{hypotl}{485}{\code {hypotl}}
+-\entry{expm1}{485}{\code {expm1}}
+-\entry{expm1f}{485}{\code {expm1f}}
+-\entry{expm1l}{485}{\code {expm1l}}
+-\entry{log1p}{485}{\code {log1p}}
+-\entry{log1pf}{485}{\code {log1pf}}
+-\entry{log1pl}{485}{\code {log1pl}}
+-\entry{cexp}{485}{\code {cexp}}
+-\entry{cexpf}{485}{\code {cexpf}}
+-\entry{cexpl}{485}{\code {cexpl}}
+-\entry{clog}{485}{\code {clog}}
+-\entry{clogf}{486}{\code {clogf}}
+-\entry{clogl}{486}{\code {clogl}}
+-\entry{clog10}{486}{\code {clog10}}
+-\entry{clog10f}{486}{\code {clog10f}}
+-\entry{clog10l}{486}{\code {clog10l}}
+-\entry{csqrt}{486}{\code {csqrt}}
+-\entry{csqrtf}{486}{\code {csqrtf}}
+-\entry{csqrtl}{486}{\code {csqrtl}}
+-\entry{cpow}{486}{\code {cpow}}
+-\entry{cpowf}{486}{\code {cpowf}}
+-\entry{cpowl}{486}{\code {cpowl}}
+-\entry{sinh}{486}{\code {sinh}}
+-\entry{sinhf}{486}{\code {sinhf}}
+-\entry{sinhl}{486}{\code {sinhl}}
+-\entry{cosh}{486}{\code {cosh}}
+-\entry{coshf}{486}{\code {coshf}}
+-\entry{coshl}{486}{\code {coshl}}
+-\entry{tanh}{487}{\code {tanh}}
+-\entry{tanhf}{487}{\code {tanhf}}
+-\entry{tanhl}{487}{\code {tanhl}}
+-\entry{csinh}{487}{\code {csinh}}
+-\entry{csinhf}{487}{\code {csinhf}}
+-\entry{csinhl}{487}{\code {csinhl}}
+-\entry{ccosh}{487}{\code {ccosh}}
+-\entry{ccoshf}{487}{\code {ccoshf}}
+-\entry{ccoshl}{487}{\code {ccoshl}}
+-\entry{ctanh}{487}{\code {ctanh}}
+-\entry{ctanhf}{487}{\code {ctanhf}}
+-\entry{ctanhl}{487}{\code {ctanhl}}
+-\entry{asinh}{487}{\code {asinh}}
+-\entry{asinhf}{487}{\code {asinhf}}
+-\entry{asinhl}{487}{\code {asinhl}}
+-\entry{acosh}{487}{\code {acosh}}
+-\entry{acoshf}{487}{\code {acoshf}}
+-\entry{acoshl}{487}{\code {acoshl}}
+-\entry{atanh}{487}{\code {atanh}}
+-\entry{atanhf}{487}{\code {atanhf}}
+-\entry{atanhl}{487}{\code {atanhl}}
+-\entry{casinh}{487}{\code {casinh}}
+-\entry{casinhf}{487}{\code {casinhf}}
+-\entry{casinhl}{487}{\code {casinhl}}
+-\entry{cacosh}{488}{\code {cacosh}}
+-\entry{cacoshf}{488}{\code {cacoshf}}
+-\entry{cacoshl}{488}{\code {cacoshl}}
+-\entry{catanh}{488}{\code {catanh}}
+-\entry{catanhf}{488}{\code {catanhf}}
+-\entry{catanhl}{488}{\code {catanhl}}
+-\entry{erf}{488}{\code {erf}}
+-\entry{erff}{488}{\code {erff}}
+-\entry{erfl}{488}{\code {erfl}}
+-\entry{erfc}{488}{\code {erfc}}
+-\entry{erfcf}{488}{\code {erfcf}}
+-\entry{erfcl}{488}{\code {erfcl}}
+-\entry{lgamma}{488}{\code {lgamma}}
+-\entry{lgammaf}{488}{\code {lgammaf}}
+-\entry{lgammal}{488}{\code {lgammal}}
+-\entry{lgamma_r}{489}{\code {lgamma_r}}
+-\entry{lgammaf_r}{489}{\code {lgammaf_r}}
+-\entry{lgammal_r}{489}{\code {lgammal_r}}
+-\entry{gamma}{489}{\code {gamma}}
+-\entry{gammaf}{489}{\code {gammaf}}
+-\entry{gammal}{489}{\code {gammal}}
+-\entry{tgamma}{489}{\code {tgamma}}
+-\entry{tgammaf}{489}{\code {tgammaf}}
+-\entry{tgammal}{489}{\code {tgammal}}
+-\entry{j0}{489}{\code {j0}}
+-\entry{j0f}{489}{\code {j0f}}
+-\entry{j0l}{489}{\code {j0l}}
+-\entry{j1}{489}{\code {j1}}
+-\entry{j1f}{489}{\code {j1f}}
+-\entry{j1l}{489}{\code {j1l}}
+-\entry{jn}{489}{\code {jn}}
+-\entry{jnf}{489}{\code {jnf}}
+-\entry{jnl}{489}{\code {jnl}}
+-\entry{y0}{489}{\code {y0}}
+-\entry{y0f}{489}{\code {y0f}}
+-\entry{y0l}{489}{\code {y0l}}
+-\entry{y1}{490}{\code {y1}}
+-\entry{y1f}{490}{\code {y1f}}
+-\entry{y1l}{490}{\code {y1l}}
+-\entry{yn}{490}{\code {yn}}
+-\entry{ynf}{490}{\code {ynf}}
+-\entry{ynl}{490}{\code {ynl}}
+-\entry{rand}{508}{\code {rand}}
+-\entry{srand}{508}{\code {srand}}
+-\entry{rand_r}{509}{\code {rand_r}}
+-\entry{random}{509}{\code {random}}
+-\entry{srandom}{509}{\code {srandom}}
+-\entry{initstate}{509}{\code {initstate}}
+-\entry{setstate}{509}{\code {setstate}}
+-\entry{random_r}{510}{\code {random_r}}
+-\entry{srandom_r}{510}{\code {srandom_r}}
+-\entry{initstate_r}{510}{\code {initstate_r}}
+-\entry{setstate_r}{510}{\code {setstate_r}}
+-\entry{drand48}{511}{\code {drand48}}
+-\entry{erand48}{511}{\code {erand48}}
+-\entry{lrand48}{511}{\code {lrand48}}
+-\entry{nrand48}{511}{\code {nrand48}}
+-\entry{mrand48}{511}{\code {mrand48}}
+-\entry{jrand48}{512}{\code {jrand48}}
+-\entry{srand48}{512}{\code {srand48}}
+-\entry{seed48}{512}{\code {seed48}}
+-\entry{lcong48}{512}{\code {lcong48}}
+-\entry{drand48_r}{513}{\code {drand48_r}}
+-\entry{erand48_r}{513}{\code {erand48_r}}
+-\entry{lrand48_r}{513}{\code {lrand48_r}}
+-\entry{nrand48_r}{513}{\code {nrand48_r}}
+-\entry{mrand48_r}{514}{\code {mrand48_r}}
+-\entry{jrand48_r}{514}{\code {jrand48_r}}
+-\entry{srand48_r}{514}{\code {srand48_r}}
+-\entry{seed48_r}{514}{\code {seed48_r}}
+-\entry{lcong48_r}{515}{\code {lcong48_r}}
+-\entry{div}{519}{\code {div}}
+-\entry{ldiv}{519}{\code {ldiv}}
+-\entry{lldiv}{519}{\code {lldiv}}
+-\entry{imaxdiv}{520}{\code {imaxdiv}}
+-\entry{fpclassify}{520}{\code {fpclassify}}
+-\entry{isfinite}{521}{\code {isfinite}}
+-\entry{isnormal}{521}{\code {isnormal}}
+-\entry{isnan}{521}{\code {isnan}}
+-\entry{isinf}{521}{\code {isinf}}
+-\entry{isinff}{521}{\code {isinff}}
+-\entry{isinfl}{521}{\code {isinfl}}
+-\entry{isnan}{522}{\code {isnan}}
+-\entry{isnanf}{522}{\code {isnanf}}
+-\entry{isnanl}{522}{\code {isnanl}}
+-\entry{finite}{522}{\code {finite}}
+-\entry{finitef}{522}{\code {finitef}}
+-\entry{finitel}{522}{\code {finitel}}
+-\entry{matherr}{522}{\code {matherr}}
+-\entry{feclearexcept}{525}{\code {feclearexcept}}
+-\entry{feraiseexcept}{525}{\code {feraiseexcept}}
+-\entry{fetestexcept}{526}{\code {fetestexcept}}
+-\entry{fegetexceptflag}{526}{\code {fegetexceptflag}}
+-\entry{fesetexceptflag}{526}{\code {fesetexceptflag}}
+-\entry{fegetround}{528}{\code {fegetround}}
+-\entry{fesetround}{528}{\code {fesetround}}
+-\entry{fegetenv}{529}{\code {fegetenv}}
+-\entry{feholdexcept}{529}{\code {feholdexcept}}
+-\entry{fesetenv}{529}{\code {fesetenv}}
+-\entry{feupdateenv}{530}{\code {feupdateenv}}
+-\entry{feenableexcept}{530}{\code {feenableexcept}}
+-\entry{fedisableexcept}{530}{\code {fedisableexcept}}
+-\entry{fegetexcept}{530}{\code {fegetexcept}}
+-\entry{abs}{531}{\code {abs}}
+-\entry{labs}{531}{\code {labs}}
+-\entry{llabs}{531}{\code {llabs}}
+-\entry{imaxabs}{531}{\code {imaxabs}}
+-\entry{fabs}{531}{\code {fabs}}
+-\entry{fabsf}{531}{\code {fabsf}}
+-\entry{fabsl}{531}{\code {fabsl}}
+-\entry{cabs}{531}{\code {cabs}}
+-\entry{cabsf}{531}{\code {cabsf}}
+-\entry{cabsl}{531}{\code {cabsl}}
+-\entry{frexp}{531}{\code {frexp}}
+-\entry{frexpf}{531}{\code {frexpf}}
+-\entry{frexpl}{531}{\code {frexpl}}
+-\entry{ldexp}{532}{\code {ldexp}}
+-\entry{ldexpf}{532}{\code {ldexpf}}
+-\entry{ldexpl}{532}{\code {ldexpl}}
+-\entry{scalb}{532}{\code {scalb}}
+-\entry{scalbf}{532}{\code {scalbf}}
+-\entry{scalbl}{532}{\code {scalbl}}
+-\entry{scalbn}{532}{\code {scalbn}}
+-\entry{scalbnf}{532}{\code {scalbnf}}
+-\entry{scalbnl}{532}{\code {scalbnl}}
+-\entry{scalbln}{532}{\code {scalbln}}
+-\entry{scalblnf}{532}{\code {scalblnf}}
+-\entry{scalblnl}{532}{\code {scalblnl}}
+-\entry{significand}{532}{\code {significand}}
+-\entry{significandf}{532}{\code {significandf}}
+-\entry{significandl}{532}{\code {significandl}}
+-\entry{ceil}{533}{\code {ceil}}
+-\entry{ceilf}{533}{\code {ceilf}}
+-\entry{ceill}{533}{\code {ceill}}
+-\entry{floor}{533}{\code {floor}}
+-\entry{floorf}{533}{\code {floorf}}
+-\entry{floorl}{533}{\code {floorl}}
+-\entry{trunc}{533}{\code {trunc}}
+-\entry{truncf}{533}{\code {truncf}}
+-\entry{truncl}{533}{\code {truncl}}
+-\entry{rint}{533}{\code {rint}}
+-\entry{rintf}{533}{\code {rintf}}
+-\entry{rintl}{533}{\code {rintl}}
+-\entry{nearbyint}{533}{\code {nearbyint}}
+-\entry{nearbyintf}{533}{\code {nearbyintf}}
+-\entry{nearbyintl}{533}{\code {nearbyintl}}
+-\entry{round}{533}{\code {round}}
+-\entry{roundf}{533}{\code {roundf}}
+-\entry{roundl}{533}{\code {roundl}}
+-\entry{lrint}{533}{\code {lrint}}
+-\entry{lrintf}{533}{\code {lrintf}}
+-\entry{lrintl}{533}{\code {lrintl}}
+-\entry{llrint}{533}{\code {llrint}}
+-\entry{llrintf}{534}{\code {llrintf}}
+-\entry{llrintl}{534}{\code {llrintl}}
+-\entry{lround}{534}{\code {lround}}
+-\entry{lroundf}{534}{\code {lroundf}}
+-\entry{lroundl}{534}{\code {lroundl}}
+-\entry{llround}{534}{\code {llround}}
+-\entry{llroundf}{534}{\code {llroundf}}
+-\entry{llroundl}{534}{\code {llroundl}}
+-\entry{modf}{534}{\code {modf}}
+-\entry{modff}{534}{\code {modff}}
+-\entry{modfl}{534}{\code {modfl}}
+-\entry{fmod}{534}{\code {fmod}}
+-\entry{fmodf}{534}{\code {fmodf}}
+-\entry{fmodl}{534}{\code {fmodl}}
+-\entry{drem}{534}{\code {drem}}
+-\entry{dremf}{535}{\code {dremf}}
+-\entry{dreml}{535}{\code {dreml}}
+-\entry{remainder}{535}{\code {remainder}}
+-\entry{remainderf}{535}{\code {remainderf}}
+-\entry{remainderl}{535}{\code {remainderl}}
+-\entry{copysign}{535}{\code {copysign}}
+-\entry{copysignf}{535}{\code {copysignf}}
+-\entry{copysignl}{535}{\code {copysignl}}
+-\entry{signbit}{535}{\code {signbit}}
+-\entry{nextafter}{535}{\code {nextafter}}
+-\entry{nextafterf}{535}{\code {nextafterf}}
+-\entry{nextafterl}{535}{\code {nextafterl}}
+-\entry{nexttoward}{536}{\code {nexttoward}}
+-\entry{nexttowardf}{536}{\code {nexttowardf}}
+-\entry{nexttowardl}{536}{\code {nexttowardl}}
+-\entry{nan}{536}{\code {nan}}
+-\entry{nanf}{536}{\code {nanf}}
+-\entry{nanl}{536}{\code {nanl}}
+-\entry{isgreater}{536}{\code {isgreater}}
+-\entry{isgreaterequal}{536}{\code {isgreaterequal}}
+-\entry{isless}{536}{\code {isless}}
+-\entry{islessequal}{537}{\code {islessequal}}
+-\entry{islessgreater}{537}{\code {islessgreater}}
+-\entry{isunordered}{537}{\code {isunordered}}
+-\entry{fmin}{537}{\code {fmin}}
+-\entry{fminf}{537}{\code {fminf}}
+-\entry{fminl}{537}{\code {fminl}}
+-\entry{fmax}{537}{\code {fmax}}
+-\entry{fmaxf}{537}{\code {fmaxf}}
+-\entry{fmaxl}{537}{\code {fmaxl}}
+-\entry{fdim}{537}{\code {fdim}}
+-\entry{fdimf}{537}{\code {fdimf}}
+-\entry{fdiml}{537}{\code {fdiml}}
+-\entry{fma}{538}{\code {fma}}
+-\entry{fmaf}{538}{\code {fmaf}}
+-\entry{fmal}{538}{\code {fmal}}
+-\entry{creal}{539}{\code {creal}}
+-\entry{crealf}{539}{\code {crealf}}
+-\entry{creall}{539}{\code {creall}}
+-\entry{cimag}{539}{\code {cimag}}
+-\entry{cimagf}{539}{\code {cimagf}}
+-\entry{cimagl}{539}{\code {cimagl}}
+-\entry{conj}{539}{\code {conj}}
+-\entry{conjf}{539}{\code {conjf}}
+-\entry{conjl}{539}{\code {conjl}}
+-\entry{carg}{539}{\code {carg}}
+-\entry{cargf}{539}{\code {cargf}}
+-\entry{cargl}{539}{\code {cargl}}
+-\entry{cproj}{539}{\code {cproj}}
+-\entry{cprojf}{539}{\code {cprojf}}
+-\entry{cprojl}{539}{\code {cprojl}}
+-\entry{strtol}{540}{\code {strtol}}
+-\entry{wcstol}{540}{\code {wcstol}}
+-\entry{strtoul}{541}{\code {strtoul}}
+-\entry{wcstoul}{541}{\code {wcstoul}}
+-\entry{strtoll}{541}{\code {strtoll}}
+-\entry{wcstoll}{541}{\code {wcstoll}}
+-\entry{strtoq}{541}{\code {strtoq}}
+-\entry{wcstoq}{541}{\code {wcstoq}}
+-\entry{strtoull}{542}{\code {strtoull}}
+-\entry{wcstoull}{542}{\code {wcstoull}}
+-\entry{strtouq}{542}{\code {strtouq}}
+-\entry{wcstouq}{542}{\code {wcstouq}}
+-\entry{strtoimax}{542}{\code {strtoimax}}
+-\entry{wcstoimax}{542}{\code {wcstoimax}}
+-\entry{strtoumax}{542}{\code {strtoumax}}
+-\entry{wcstoumax}{543}{\code {wcstoumax}}
+-\entry{atol}{543}{\code {atol}}
+-\entry{atoi}{543}{\code {atoi}}
+-\entry{atoll}{543}{\code {atoll}}
+-\entry{strtod}{544}{\code {strtod}}
+-\entry{strtof}{545}{\code {strtof}}
+-\entry{strtold}{545}{\code {strtold}}
+-\entry{wcstod}{545}{\code {wcstod}}
+-\entry{wcstof}{545}{\code {wcstof}}
+-\entry{wcstold}{545}{\code {wcstold}}
+-\entry{atof}{545}{\code {atof}}
+-\entry{ecvt}{546}{\code {ecvt}}
+-\entry{fcvt}{546}{\code {fcvt}}
+-\entry{gcvt}{546}{\code {gcvt}}
+-\entry{qecvt}{546}{\code {qecvt}}
+-\entry{qfcvt}{546}{\code {qfcvt}}
+-\entry{qgcvt}{546}{\code {qgcvt}}
+-\entry{ecvt_r}{547}{\code {ecvt_r}}
+-\entry{fcvt_r}{547}{\code {fcvt_r}}
+-\entry{qecvt_r}{547}{\code {qecvt_r}}
+-\entry{qfcvt_r}{547}{\code {qfcvt_r}}
+-\entry{difftime}{549}{\code {difftime}}
+-\entry{clock}{552}{\code {clock}}
+-\entry{times}{553}{\code {times}}
+-\entry{time}{554}{\code {time}}
+-\entry{stime}{554}{\code {stime}}
+-\entry{gettimeofday}{555}{\code {gettimeofday}}
+-\entry{settimeofday}{555}{\code {settimeofday}}
+-\entry{adjtime}{555}{\code {adjtime}}
+-\entry{adjtimex}{556}{\code {adjtimex}}
+-\entry{localtime}{557}{\code {localtime}}
+-\entry{localtime_r}{558}{\code {localtime_r}}
+-\entry{gmtime}{558}{\code {gmtime}}
+-\entry{gmtime_r}{558}{\code {gmtime_r}}
+-\entry{mktime}{558}{\code {mktime}}
+-\entry{timelocal}{558}{\code {timelocal}}
+-\entry{timegm}{559}{\code {timegm}}
+-\entry{ntp_gettime}{559}{\code {ntp_gettime}}
+-\entry{ntp_adjtime}{561}{\code {ntp_adjtime}}
+-\entry{asctime}{562}{\code {asctime}}
+-\entry{asctime_r}{562}{\code {asctime_r}}
+-\entry{ctime}{562}{\code {ctime}}
+-\entry{ctime_r}{562}{\code {ctime_r}}
+-\entry{strftime}{563}{\code {strftime}}
+-\entry{wcsftime}{567}{\code {wcsftime}}
+-\entry{strptime}{567}{\code {strptime}}
+-\entry{getdate}{573}{\code {getdate}}
+-\entry{getdate_r}{574}{\code {getdate_r}}
+-\entry{tzset}{577}{\code {tzset}}
+-\entry{setitimer}{579}{\code {setitimer}}
+-\entry{getitimer}{579}{\code {getitimer}}
+-\entry{alarm}{579}{\code {alarm}}
+-\entry{sleep}{580}{\code {sleep}}
+-\entry{nanosleep}{581}{\code {nanosleep}}
+-\entry{getrusage}{583}{\code {getrusage}}
+-\entry{vtimes}{584}{\code {vtimes}}
+-\entry{getrlimit}{586}{\code {getrlimit}}
+-\entry{getrlimit64}{586}{\code {getrlimit64}}
+-\entry{setrlimit}{586}{\code {setrlimit}}
+-\entry{setrlimit64}{586}{\code {setrlimit64}}
+-\entry{ulimit}{588}{\code {ulimit}}
+-\entry{vlimit}{588}{\code {vlimit}}
+-\entry{sched_setscheduler}{593}{\code {sched_setscheduler}}
+-\entry{sched_getscheduler}{593}{\code {sched_getscheduler}}
+-\entry{sched_setparam}{594}{\code {sched_setparam}}
+-\entry{sched_getparam}{594}{\code {sched_getparam}}
+-\entry{sched_get_priority_min}{594}{\code {sched_get_priority_min}}
+-\entry{sched_get_priority_max}{594}{\code {sched_get_priority_max}}
+-\entry{sched_rr_get_interval}{594}{\code {sched_rr_get_interval}}
+-\entry{sched_yield}{594}{\code {sched_yield}}
+-\entry{getpriority}{597}{\code {getpriority}}
+-\entry{setpriority}{597}{\code {setpriority}}
+-\entry{nice}{597}{\code {nice}}
+-\entry{getpagesize}{599}{\code {getpagesize}}
+-\entry{get_phys_pages}{599}{\code {get_phys_pages}}
+-\entry{get_avphys_pages}{600}{\code {get_avphys_pages}}
+-\entry{get_nprocs_conf}{600}{\code {get_nprocs_conf}}
+-\entry{get_nprocs}{600}{\code {get_nprocs}}
+-\entry{getloadavg}{600}{\code {getloadavg}}
+-\entry{setjmp}{602}{\code {setjmp}}
+-\entry{longjmp}{602}{\code {longjmp}}
+-\entry{sigsetjmp}{603}{\code {sigsetjmp}}
+-\entry{siglongjmp}{604}{\code {siglongjmp}}
+-\entry{getcontext}{604}{\code {getcontext}}
+-\entry{makecontext}{605}{\code {makecontext}}
+-\entry{setcontext}{605}{\code {setcontext}}
+-\entry{swapcontext}{606}{\code {swapcontext}}
+-\entry{strsignal}{621}{\code {strsignal}}
+-\entry{psignal}{621}{\code {psignal}}
+-\entry{signal}{622}{\code {signal}}
+-\entry{sysv_signal}{624}{\code {sysv_signal}}
+-\entry{ssignal}{624}{\code {ssignal}}
+-\entry{sigaction}{625}{\code {sigaction}}
+-\entry{TEMP_FAILURE_RETRY}{638}{\code {TEMP_FAILURE_RETRY}}
+-\entry{raise}{639}{\code {raise}}
+-\entry{gsignal}{639}{\code {gsignal}}
+-\entry{kill}{640}{\code {kill}}
+-\entry{killpg}{641}{\code {killpg}}
+-\entry{sigemptyset}{644}{\code {sigemptyset}}
+-\entry{sigfillset}{644}{\code {sigfillset}}
+-\entry{sigaddset}{644}{\code {sigaddset}}
+-\entry{sigdelset}{644}{\code {sigdelset}}
+-\entry{sigismember}{645}{\code {sigismember}}
+-\entry{sigprocmask}{645}{\code {sigprocmask}}
+-\entry{sigpending}{647}{\code {sigpending}}
+-\entry{pause}{650}{\code {pause}}
+-\entry{sigsuspend}{651}{\code {sigsuspend}}
+-\entry{sigaltstack}{653}{\code {sigaltstack}}
+-\entry{sigstack}{653}{\code {sigstack}}
+-\entry{sigvec}{655}{\code {sigvec}}
+-\entry{siginterrupt}{655}{\code {siginterrupt}}
+-\entry{sigmask}{655}{\code {sigmask}}
+-\entry{sigblock}{655}{\code {sigblock}}
+-\entry{sigsetmask}{655}{\code {sigsetmask}}
+-\entry{sigpause}{656}{\code {sigpause}}
+-\entry{main}{657}{\code {main}}
+-\entry{getopt}{659}{\code {getopt}}
+-\entry{getopt_long}{663}{\code {getopt_long}}
+-\entry{getopt_long_only}{663}{\code {getopt_long_only}}
+-\entry{argp_parse}{666}{\code {argp_parse}}
+-\entry{argp_usage}{674}{\code {argp_usage}}
+-\entry{argp_error}{674}{\code {argp_error}}
+-\entry{argp_failure}{674}{\code {argp_failure}}
+-\entry{argp_state_help}{674}{\code {argp_state_help}}
+-\entry{argp_help}{679}{\code {argp_help}}
+-\entry{getsubopt}{689}{\code {getsubopt}}
+-\entry{getenv}{691}{\code {getenv}}
+-\entry{putenv}{692}{\code {putenv}}
+-\entry{setenv}{692}{\code {setenv}}
+-\entry{unsetenv}{692}{\code {unsetenv}}
+-\entry{clearenv}{692}{\code {clearenv}}
+-\entry{syscall}{695}{\code {syscall}}
+-\entry{exit}{696}{\code {exit}}
+-\entry{atexit}{698}{\code {atexit}}
+-\entry{on_exit}{698}{\code {on_exit}}
+-\entry{abort}{699}{\code {abort}}
+-\entry{_exit}{699}{\code {_exit}}
+-\entry{_Exit}{699}{\code {_Exit}}
+-\entry{system}{701}{\code {system}}
+-\entry{getpid}{702}{\code {getpid}}
+-\entry{getppid}{702}{\code {getppid}}
+-\entry{fork}{703}{\code {fork}}
+-\entry{vfork}{703}{\code {vfork}}
+-\entry{execv}{704}{\code {execv}}
+-\entry{execl}{704}{\code {execl}}
+-\entry{execve}{704}{\code {execve}}
+-\entry{execle}{704}{\code {execle}}
+-\entry{execvp}{705}{\code {execvp}}
+-\entry{execlp}{705}{\code {execlp}}
+-\entry{waitpid}{706}{\code {waitpid}}
+-\entry{wait}{708}{\code {wait}}
+-\entry{wait4}{708}{\code {wait4}}
+-\entry{WIFEXITED}{709}{\code {WIFEXITED}}
+-\entry{WEXITSTATUS}{709}{\code {WEXITSTATUS}}
+-\entry{WIFSIGNALED}{709}{\code {WIFSIGNALED}}
+-\entry{WTERMSIG}{70